Rev 1852 | Rev 1860 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1852 | Rev 1855 | ||
---|---|---|---|
Line 79... | Line 79... | ||
79 | 79 | ||
80 | /* |
80 | /* |
81 | * The following needs to be in sync with the |
81 | * The following needs to be in sync with the |
82 | * definition of the istate structure. |
82 | * definition of the istate structure. |
83 | */ |
83 | */ |
84 | #define PREEMPTIBLE_HANDLER_STACK_FRAME_SIZE (STACK_WINDOW_SAVE_AREA_SIZE+(4*8)) |
84 | #define PREEMPTIBLE_HANDLER_STACK_FRAME_SIZE (STACK_WINDOW_SAVE_AREA_SIZE+(12*8)) |
85 | #define SAVED_TSTATE -(1*8) |
85 | #define SAVED_TSTATE -(1*8) |
86 | #define SAVED_TPC -(2*8) |
86 | #define SAVED_TPC -(2*8) |
- | 87 | #define SAVED_TNPC -(3*8) /* <-- istate_t begins here */ |
|
- | 88 | /* alignment gap */ |
|
- | 89 | #define SAVED_I0 -(5*8) |
|
87 | #define SAVED_TNPC -(3*8) |
90 | #define SAVED_I1 -(6*8) |
- | 91 | #define SAVED_I2 -(7*8) |
|
- | 92 | #define SAVED_I3 -(8*8) |
|
- | 93 | #define SAVED_I4 -(9*8) |
|
- | 94 | #define SAVED_I5 -(10*8) |
|
- | 95 | #define SAVED_I6 -(11*8) |
|
- | 96 | #define SAVED_I7 -(12*8) |
|
88 | 97 | ||
89 | .macro PREEMPTIBLE_HANDLER f |
98 | .macro PREEMPTIBLE_HANDLER f |
90 | sethi %hi(\f), %g1 |
99 | sethi %hi(\f), %g1 |
91 | b preemptible_handler |
100 | b preemptible_handler |
92 | or %g1, %lo(\f), %g1 |
101 | or %g1, %lo(\f), %g1 |