Changeset 50805c9 in mainline for uspace/lib/c/arch/sparc64/src/fibril.S
- Timestamp:
- 2014-09-06T09:31:39Z (10 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- b482287
- Parents:
- 089901e
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/c/arch/sparc64/src/fibril.S
r089901e r50805c9 27 27 # 28 28 29 #include <libarch/ context_offset.h>29 #include <libarch/fibril_context.h> 30 30 31 31 .text … … 39 39 # should a thread switch occur. 40 40 # 41 CONTEXT_SAVE_ARCH_CORE %o0 41 stx %sp, [%o0 + CONTEXT_OFFSET_SP] 42 stx %o7, [%o0 + CONTEXT_OFFSET_PC] 43 stx %i0, [%o0 + CONTEXT_OFFSET_I0] 44 stx %i1, [%o0 + CONTEXT_OFFSET_I1] 45 stx %i2, [%o0 + CONTEXT_OFFSET_I2] 46 stx %i3, [%o0 + CONTEXT_OFFSET_I3] 47 stx %i4, [%o0 + CONTEXT_OFFSET_I4] 48 stx %i5, [%o0 + CONTEXT_OFFSET_I5] 49 stx %fp, [%o0 + CONTEXT_OFFSET_FP] 50 stx %i7, [%o0 + CONTEXT_OFFSET_I7] 51 stx %l0, [%o0 + CONTEXT_OFFSET_L0] 52 stx %l1, [%o0 + CONTEXT_OFFSET_L1] 53 stx %l2, [%o0 + CONTEXT_OFFSET_L2] 54 stx %l3, [%o0 + CONTEXT_OFFSET_L3] 55 stx %l4, [%o0 + CONTEXT_OFFSET_L4] 56 stx %l5, [%o0 + CONTEXT_OFFSET_L5] 57 stx %l6, [%o0 + CONTEXT_OFFSET_L6] 58 stx %l7, [%o0 + CONTEXT_OFFSET_L7] 59 stx %g7, [%o0 + CONTEXT_OFFSET_TP] 42 60 retl 43 61 mov 1, %o0 ! context_save_arch returns 1 … … 52 70 flushw 53 71 54 CONTEXT_RESTORE_ARCH_CORE %o0 72 ldx [%o0 + CONTEXT_OFFSET_SP], %sp 73 ldx [%o0 + CONTEXT_OFFSET_PC], %o7 74 ldx [%o0 + CONTEXT_OFFSET_I0], %i0 75 ldx [%o0 + CONTEXT_OFFSET_I1], %i1 76 ldx [%o0 + CONTEXT_OFFSET_I2], %i2 77 ldx [%o0 + CONTEXT_OFFSET_I3], %i3 78 ldx [%o0 + CONTEXT_OFFSET_I4], %i4 79 ldx [%o0 + CONTEXT_OFFSET_I5], %i5 80 ldx [%o0 + CONTEXT_OFFSET_FP], %fp 81 ldx [%o0 + CONTEXT_OFFSET_I7], %i7 82 ldx [%o0 + CONTEXT_OFFSET_L0], %l0 83 ldx [%o0 + CONTEXT_OFFSET_L1], %l1 84 ldx [%o0 + CONTEXT_OFFSET_L2], %l2 85 ldx [%o0 + CONTEXT_OFFSET_L3], %l3 86 ldx [%o0 + CONTEXT_OFFSET_L4], %l4 87 ldx [%o0 + CONTEXT_OFFSET_L5], %l5 88 ldx [%o0 + CONTEXT_OFFSET_L6], %l6 89 ldx [%o0 + CONTEXT_OFFSET_L7], %l7 90 ldx [%o0 + CONTEXT_OFFSET_TP], %g7 55 91 retl 56 92 xor %o0, %o0, %o0 ! context_restore_arch returns 0
Note:
See TracChangeset
for help on using the changeset viewer.