Rev 2071 | Rev 3071 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 2071 | Rev 2089 | ||
|---|---|---|---|
| Line 34... | Line 34... | ||
| 34 | 34 | ||
| 35 | #ifndef KERN_ppc32_EXCEPTION_H_ |
35 | #ifndef KERN_ppc32_EXCEPTION_H_ |
| 36 | #define KERN_ppc32_EXCEPTION_H_ |
36 | #define KERN_ppc32_EXCEPTION_H_ |
| 37 | 37 | ||
| 38 | #include <arch/types.h> |
38 | #include <arch/types.h> |
| 39 | #include <typedefs.h> |
- | |
| 40 | 39 | ||
| 41 | struct istate { |
40 | typedef struct { |
| 42 | uint32_t r0; |
41 | uint32_t r0; |
| 43 | uint32_t r2; |
42 | uint32_t r2; |
| 44 | uint32_t r3; |
43 | uint32_t r3; |
| 45 | uint32_t r4; |
44 | uint32_t r4; |
| 46 | uint32_t r5; |
45 | uint32_t r5; |
| Line 75... | Line 74... | ||
| 75 | uint32_t lr; |
74 | uint32_t lr; |
| 76 | uint32_t ctr; |
75 | uint32_t ctr; |
| 77 | uint32_t xer; |
76 | uint32_t xer; |
| 78 | uint32_t r12; |
77 | uint32_t r12; |
| 79 | uint32_t sp; |
78 | uint32_t sp; |
| 80 | }; |
79 | } istate_t; |
| 81 | 80 | ||
| 82 | static inline void istate_set_retaddr(istate_t *istate, uintptr_t retaddr) |
81 | static inline void istate_set_retaddr(istate_t *istate, uintptr_t retaddr) |
| 83 | { |
82 | { |
| 84 | istate->pc = retaddr; |
83 | istate->pc = retaddr; |
| 85 | } |
84 | } |