Changeset fca4207 in mainline for libc/arch/ppc32/include/psthread.h
- Timestamp:
- 2006-05-04T11:04:23Z (19 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 4a7c273
- Parents:
- f33cb0b9
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
libc/arch/ppc32/include/psthread.h
rf33cb0b9 rfca4207 32 32 #include <types.h> 33 33 34 /* We define our own context_set, because we need to set 35 * the TLS pointer to the tcb+0x7000 36 * 37 * See tls_set in thread.h 38 */ 34 39 #define context_set(c, _pc, stack, size, ptls) \ 35 40 (c)->pc = (sysarg_t) (_pc); \ 36 41 (c)->sp = ((sysarg_t) (stack)) + (size) - SP_DELTA; \ 37 (c)->tls = ((sysarg_t)(ptls)) + 0x7000 + sizeof(tcb_t);42 (c)->tls = ((sysarg_t) (ptls)) + 0x7000 + sizeof(tcb_t); 38 43 39 #define SP_DELTA (8+16)44 #define SP_DELTA 16 40 45 41 typedef struct 46 typedef struct { 42 47 uint32_t sp; 43 48 uint32_t pc; 44 49 45 50 uint32_t tls; 46 } context_t; 51 uint32_t r13; 52 uint32_t r14; 53 uint32_t r15; 54 uint32_t r16; 55 uint32_t r17; 56 uint32_t r18; 57 uint32_t r19; 58 uint32_t r20; 59 uint32_t r21; 60 uint32_t r22; 61 uint32_t r23; 62 uint32_t r24; 63 uint32_t r25; 64 uint32_t r26; 65 uint32_t r27; 66 uint32_t r28; 67 uint32_t r29; 68 uint32_t r30; 69 uint32_t r31; 70 71 uint32_t cr; 72 } __attribute__ ((packed)) context_t; 47 73 48 74 #endif
Note:
See TracChangeset
for help on using the changeset viewer.