Linux Kernel
3.7.1
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
arch
arm
include
asm
unwind.h
Go to the documentation of this file.
1
/*
2
* arch/arm/include/asm/unwind.h
3
*
4
* Copyright (C) 2008 ARM Limited
5
*
6
* This program is free software; you can redistribute it and/or modify
7
* it under the terms of the GNU General Public License version 2 as
8
* published by the Free Software Foundation.
9
*
10
* This program is distributed in the hope that it will be useful,
11
* but WITHOUT ANY WARRANTY; without even the implied warranty of
12
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
* GNU General Public License for more details.
14
*
15
* You should have received a copy of the GNU General Public License
16
* along with this program; if not, write to the Free Software
17
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18
*/
19
20
#ifndef __ASM_UNWIND_H
21
#define __ASM_UNWIND_H
22
23
#ifndef __ASSEMBLY__
24
25
/* Unwind reason code according the the ARM EABI documents */
26
enum
unwind_reason_code
{
27
URC_OK
= 0,
/* operation completed successfully */
28
URC_CONTINUE_UNWIND
= 8,
29
URC_FAILURE
= 9
/* unspecified failure of some kind */
30
};
31
32
struct
unwind_idx
{
33
unsigned
long
addr_offset
;
34
unsigned
long
insn
;
35
};
36
37
struct
unwind_table
{
38
struct
list_head
list
;
39
const
struct
unwind_idx
*
start
;
40
const
struct
unwind_idx
*
origin
;
41
const
struct
unwind_idx
*
stop
;
42
unsigned
long
begin_addr
;
43
unsigned
long
end_addr
;
44
};
45
46
extern
struct
unwind_table
*
unwind_table_add
(
unsigned
long
start
,
47
unsigned
long
size
,
48
unsigned
long
text_addr,
49
unsigned
long
text_size);
50
extern
void
unwind_table_del
(
struct
unwind_table
*tab);
51
extern
void
unwind_backtrace
(
struct
pt_regs
*
regs
,
struct
task_struct
*tsk);
52
53
#endif
/* !__ASSEMBLY__ */
54
55
#ifdef CONFIG_ARM_UNWIND
56
#define UNWIND(code...) code
57
#else
58
#define UNWIND(code...)
59
#endif
60
61
#endif
/* __ASM_UNWIND_H */
Generated on Thu Jan 10 2013 12:55:25 for Linux Kernel by
1.8.2