Changeset 7614565 in mainline
- Timestamp:
- 2005-12-27T21:40:02Z (19 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- feb5915
- Parents:
- 1120276
- Files:
-
- 9 edited
Legend:
- Unmodified
- Added
- Removed
-
arch/sparc64/include/context.h
r1120276 r7614565 51 51 (c)->pc = ((__address) _pc) - 8; \ 52 52 (c)->sp = ((__address) stack) + ALIGN_UP((size), STACK_ALIGNMENT) - (STACK_BIAS + SP_DELTA); \ 53 (c)->fp = -STACK_BIAS 53 (c)->fp = -STACK_BIAS; \ 54 (c)->cleanwin = 0 54 55 55 56 … … 78 79 __u64 l7; 79 80 ipl_t ipl; 81 __u64 cleanwin; 80 82 }; 81 83 -
arch/sparc64/include/context_offset.h
r1120276 r7614565 19 19 #define OFFSET_L6 0x80 20 20 #define OFFSET_L7 0x88 21 #define OFFSET_CLEANWIN 0x98 -
arch/sparc64/include/trap/interrupt.h
r1120276 r7614565 35 35 36 36 #include <arch/trap/trap_table.h> 37 #include <arch/stack.h> 37 38 38 39 #define TT_INTERRUPT_LEVEL_1 0x41 … … 59 60 #ifdef __ASM__ 60 61 .macro INTERRUPT_LEVEL_N_HANDLER n 61 save %sp, - 128, %sp62 save %sp, -STACK_WINDOW_SAVE_AREA_SIZE, %sp 62 63 mov \n - 1, %o0 63 call exc_dispatch64 64 mov %fp, %o1 65 restore 66 retry 65 SAVING_HANDLER exc_dispatch 67 66 .endm 68 67 -
arch/sparc64/include/trap/regwin.h
r1120276 r7614565 119 119 mov %r0, %l6 120 120 mov %r0, %l7 121 mov %r0, %i0 122 mov %r0, %i1 123 mov %r0, %i2 124 mov %r0, %i3 125 mov %r0, %i4 126 mov %r0, %i5 121 mov %r0, %o0 122 mov %r0, %o1 123 mov %r0, %o2 124 mov %r0, %o3 125 mov %r0, %o4 126 mov %r0, %o5 127 mov %r0, %o6 128 mov %r0, %o7 127 129 retry 128 130 .endm -
arch/sparc64/include/trap/trap_table.h
r1120276 r7614565 34 34 #endif /* __ASM__ */ 35 35 36 #include <arch/stack.h> 37 36 38 #define TRAP_TABLE_ENTRY_COUNT 1024 37 39 #define TRAP_TABLE_ENTRY_SIZE 32 … … 49 51 #endif /* !__ASM__ */ 50 52 53 #ifdef __ASM__ 54 .macro SAVE_GLOBALS 55 mov %g1, %l1 56 mov %g2, %l2 57 mov %g3, %l3 58 mov %g4, %l4 59 mov %g5, %l5 60 mov %g6, %l6 61 mov %g7, %l7 62 .endm 63 64 .macro RESTORE_GLOBALS 65 mov %l1, %g1 66 mov %l2, %g2 67 mov %l3, %g3 68 mov %l4, %g4 69 mov %l5, %g5 70 mov %l6, %g6 71 mov %l7, %g7 72 .endm 73 74 .macro SAVING_HANDLER f 75 set \f, %l0 76 b saving_handler 77 nop 78 .endm 79 #endif /* __ASM__ */ 80 51 81 #endif -
arch/sparc64/src/context.S
r1120276 r7614565 62 62 stx %l6, [\r + OFFSET_L6] 63 63 stx %l7, [\r + OFFSET_L7] 64 rdpr %cleanwin, %g1 65 stx %g1, [\r + OFFSET_CLEANWIN] 64 66 .endm 65 67 … … 83 85 ldx [\r + OFFSET_L6], %l6 84 86 ldx [\r + OFFSET_L7], %l7 87 ldx [\r + OFFSET_CLEANWIN], %g1 88 wrpr %g1, %g0, %cleanwin 85 89 .endm 86 90 -
arch/sparc64/src/panic.S
r1120276 r7614565 29 29 .text 30 30 31 #include <arch/stack.h> 32 31 33 .global panic_printf 32 34 panic_printf: 35 save %sp, -STACK_WINDOW_SAVE_AREA_SIZE, %sp 33 36 call printf 34 37 nop … … 36 39 nop 37 40 /* Not reached. */ 41 restore 42 -
arch/sparc64/src/trap/trap_table.S
r1120276 r7614565 38 38 * link-time addresses which is good for debugging. 39 39 */ 40 40 41 .register %g2, #scratch 42 .register %g3, #scratch 43 .register %g6, #scratch 44 .register %g7, #scratch 45 41 46 .text 42 47 … … 203 208 trap_table_save: 204 209 .space TABLE_SIZE, 0 210 211 212 /* Trap handler that explicitly saves global registers. 213 * 214 * Input registers: 215 * %l0 Address of function to call. 216 * Output registers: 217 * %l1 - %l7 Copy of %g1 - %g7 218 */ 219 .global saving_handler 220 saving_handler: 221 SAVE_GLOBALS 222 call %l0 223 nop 224 RESTORE_GLOBALS 225 restore /* matches the save instruction from the top-level handler */ 226 retry -
tools/sparc64/gencontext.c
r1120276 r7614565 46 46 fprintf(f,"#define OFFSET_L6 0x%x\n",((int)&pctx->l6) - (int )pctx); 47 47 fprintf(f,"#define OFFSET_L7 0x%x\n",((int)&pctx->l7) - (int )pctx); 48 fprintf(f,"#define OFFSET_CLEANWIN 0x%x\n",((int)&pctx->cleanwin) - (int )pctx); 48 49 49 50 fclose(f);
Note:
See TracChangeset
for help on using the changeset viewer.