Changeset 47246f4 in mainline for uspace/lib/libc/arch/sparc64/src
- Timestamp:
- 2009-12-30T18:34:15Z (16 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 01fda09
- Parents:
- ee2f1aae
- Location:
- uspace/lib/libc/arch/sparc64/src
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/libc/arch/sparc64/src/entry.s
ree2f1aae r47246f4 40 40 __entry: 41 41 # 42 # Stop stack traces in this function.42 # Create the first stack frame. 43 43 # 44 clr %i7 44 save %sp, -176, %sp 45 flushw 46 add %g0, -0x7ff, %fp 45 47 46 48 # Pass pcb_ptr as the first argument to __main() 47 mov % o1, %o049 mov %i1, %o0 48 50 sethi %hi(_gp), %l7 49 51 call __main -
uspace/lib/libc/arch/sparc64/src/stacktrace.S
ree2f1aae r47246f4 27 27 # 28 28 29 #include <libarch/stack.h> 30 29 31 .text 30 32 … … 33 35 .global frame_pointer_validate 34 36 .global return_address_get 37 .global program_counter_get 35 38 36 39 frame_pointer_get: 37 40 # Add the stack bias to %sp to get the actual address. 38 41 retl 39 add %sp, 0x7ff, %o042 add %sp, STACK_BIAS, %o0 40 43 41 44 frame_pointer_prev: 42 save %sp, - 176, %sp45 save %sp, -(STACK_WINDOW_SAVE_AREA_SIZE+STACK_ARG_SAVE_AREA_SIZE), %sp 43 46 # Flush all other windows to memory so that we can read their contents. 44 47 flushw … … 46 49 ldx [%i0 + 14 * 8], %i0 47 50 # Add the stack bias to the %fp read from the window save area. 48 add %i0, 0x7ff, %i051 add %i0, STACK_BIAS, %i0 49 52 ret 50 53 restore 51 54 52 55 frame_pointer_validate: 53 # 54 # Fall through - we detect the last frame in the trace by zero %i7. 55 # 56 retl 57 nop 56 58 57 59 return_address_get: 58 save %sp, - 176, %sp60 save %sp, -(STACK_WINDOW_SAVE_AREA_SIZE+STACK_ARG_SAVE_AREA_SIZE), %sp 59 61 # Flush all other windows to memory so that we can read their contents. 60 62 flushw … … 63 65 ret 64 66 restore 67 68 program_counter_get: 69 retl 70 mov %o7, %o0 71 -
uspace/lib/libc/arch/sparc64/src/thread_entry.s
ree2f1aae r47246f4 36 36 __thread_entry: 37 37 # 38 # Stop stack traces in this function.38 # Create the first stack frame. 39 39 # 40 clr %i7 40 save %sp, -176, %sp 41 flushw 42 add %g0, -0x7ff, %fp 41 43 42 44 sethi %hi(_gp), %l7
Note:
See TracChangeset
for help on using the changeset viewer.