Changeset bc1f1c2 in mainline for uspace/lib/libc/arch
- Timestamp:
- 2007-06-28T00:54:12Z (18 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 12f91130
- Parents:
- b9641ee
- Location:
- uspace/lib/libc/arch
- Files:
-
- 1 added
- 1 deleted
- 17 edited
- 16 moved
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/libc/arch/amd64/Makefile.inc
rb9641ee rbc1f1c2 34 34 35 35 ARCH_SOURCES += arch/$(ARCH)/src/syscall.S \ 36 arch/$(ARCH)/src/ psthread.S \36 arch/$(ARCH)/src/fibril.S \ 37 37 arch/$(ARCH)/src/thread.c 38 38 -
uspace/lib/libc/arch/amd64/include/fibril.h
rb9641ee rbc1f1c2 33 33 */ 34 34 35 #ifndef LIBC_amd64_ PSTHREAD_H_36 #define LIBC_amd64_ PSTHREAD_H_35 #ifndef LIBC_amd64_FIBRIL_H_ 36 #define LIBC_amd64_FIBRIL_H_ 37 37 38 38 #include <types.h> -
uspace/lib/libc/arch/amd64/include/thread.h
rb9641ee rbc1f1c2 40 40 typedef struct { 41 41 void *self; 42 void * pst_data;42 void *fibril_data; 43 43 } tcb_t; 44 44 -
uspace/lib/libc/arch/arm32/Makefile.inc
rb9641ee rbc1f1c2 37 37 38 38 ARCH_SOURCES += arch/$(ARCH)/src/syscall.c \ 39 arch/$(ARCH)/src/ psthread.S \39 arch/$(ARCH)/src/fibril.S \ 40 40 arch/$(ARCH)/src/thread.c \ 41 41 arch/$(ARCH)/src/eabi.S -
uspace/lib/libc/arch/arm32/include/fibril.h
rb9641ee rbc1f1c2 31 31 */ 32 32 /** @file 33 * @brief psthreadrelated declarations.33 * @brief Fibrils related declarations. 34 34 */ 35 35 36 #ifndef LIBC_arm32_ PSTHREAD_H_37 #define LIBC_arm32_ PSTHREAD_H_36 #ifndef LIBC_arm32_FIBRIL_H_ 37 #define LIBC_arm32_FIBRIL_H_ 38 38 39 39 #include <types.h> … … 64 64 65 65 66 /** Threadcontext.66 /** Fibril context. 67 67 * 68 68 * Only registers preserved accross function calls are included. r9 is used -
uspace/lib/libc/arch/arm32/include/thread.h
rb9641ee rbc1f1c2 50 50 */ 51 51 typedef struct { 52 /** psthreaddata. */53 void * pst_data;52 /** Fibril data. */ 53 void *fibril_data; 54 54 } tcb_t; 55 55 -
uspace/lib/libc/arch/ia32/Makefile.inc
rb9641ee rbc1f1c2 34 34 35 35 ARCH_SOURCES += arch/$(ARCH)/src/syscall.c \ 36 arch/$(ARCH)/src/ psthread.S \36 arch/$(ARCH)/src/fibril.S \ 37 37 arch/$(ARCH)/src/thread.c 38 38 -
uspace/lib/libc/arch/ia32/include/fibril.h
rb9641ee rbc1f1c2 33 33 */ 34 34 35 #ifndef LIBC_ia32_ PSTHREAD_H_36 #define LIBC_ia32_ PSTHREAD_H_35 #ifndef LIBC_ia32_FIBRIL_H_ 36 #define LIBC_ia32_FIBRIL_H_ 37 37 38 38 #include <types.h> -
uspace/lib/libc/arch/ia32/include/thread.h
rb9641ee rbc1f1c2 40 40 typedef struct { 41 41 void *self; 42 void * pst_data;42 void *fibril_data; 43 43 } tcb_t; 44 44 … … 50 50 static inline tcb_t * __tcb_get(void) 51 51 { 52 void * 52 void *retval; 53 53 54 54 asm ("movl %%gs:0, %0" : "=r"(retval)); -
uspace/lib/libc/arch/ia32/src/fibril.S
rb9641ee rbc1f1c2 40 40 context_save: 41 41 movl 0(%esp),%eax # the caller's return %eip 42 movl 4(%esp),%edx # address of the kernel_context variable to save context to42 movl 4(%esp),%edx # address of the context variable to save context to 43 43 44 44 movl %esp,0(%edx) # %esp -> ctx->sp … … 64 64 # 65 65 context_restore: 66 movl 4(%esp),%eax # address of the kernel_context variable to restore context from66 movl 4(%esp),%eax # address of the context variable to restore context from 67 67 movl 0(%eax),%esp # ctx->sp -> %esp 68 68 movl 4(%eax),%edx # ctx->pc -> %edx -
uspace/lib/libc/arch/ia64/Makefile.inc
rb9641ee rbc1f1c2 37 37 38 38 ARCH_SOURCES += arch/$(ARCH)/src/syscall.S \ 39 arch/$(ARCH)/src/ psthread.S \39 arch/$(ARCH)/src/fibril.S \ 40 40 arch/$(ARCH)/src/thread.c 41 41 -
uspace/lib/libc/arch/ia64/include/fibril.h
rb9641ee rbc1f1c2 33 33 */ 34 34 35 #ifndef LIBC_ia64_ PSTHREAD_H_36 #define LIBC_ia64_ PSTHREAD_H_35 #ifndef LIBC_ia64_FIBRIL_H_ 36 #define LIBC_ia64_FIBRIL_H_ 37 37 38 38 #include <types.h> … … 45 45 * No need to allocate scratch area. 46 46 */ 47 #define SP_DELTA (0 +ALIGN_UP(STACK_ITEM_SIZE, STACK_ALIGNMENT))47 #define SP_DELTA (0 + ALIGN_UP(STACK_ITEM_SIZE, STACK_ALIGNMENT)) 48 48 49 49 #define PFM_MASK (~0x3fffffffff) -
uspace/lib/libc/arch/ia64/include/thread.h
rb9641ee rbc1f1c2 33 33 */ 34 34 35 #ifndef LIBC_ia64 THREAD_H_36 #define LIBC_ia64 THREAD_H_35 #ifndef LIBC_ia64_THREAD_H_ 36 #define LIBC_ia64_THREAD_H_ 37 37 38 38 #define THREAD_INITIAL_STACK_PAGES_NO 2 … … 41 41 typedef struct { 42 42 void *dtv; /* unused in static linking*/ 43 void * pst_data;43 void *fibril_data; 44 44 } tcb_t; 45 45 -
uspace/lib/libc/arch/mips32/Makefile.inc
rb9641ee rbc1f1c2 40 40 41 41 ARCH_SOURCES += arch/$(ARCH)/src/syscall.c \ 42 arch/$(ARCH)/src/ psthread.S \42 arch/$(ARCH)/src/fibril.S \ 43 43 arch/$(ARCH)/src/thread.c 44 44 -
uspace/lib/libc/arch/mips32/include/fibril.h
rb9641ee rbc1f1c2 34 34 */ 35 35 36 #ifndef LIBC_mips32_ PSTHREAD_H_37 #define LIBC_mips32_ PSTHREAD_H_36 #ifndef LIBC_mips32_FIBRIL_H_ 37 #define LIBC_mips32_FIBRIL_H_ 38 38 39 39 #include <types.h> -
uspace/lib/libc/arch/mips32/include/thread.h
rb9641ee rbc1f1c2 36 36 /* TLS for MIPS is described in http://www.linux-mips.org/wiki/NPTL */ 37 37 38 #ifndef LIBC_mips32 THREAD_H_39 #define LIBC_mips32 THREAD_H_38 #ifndef LIBC_mips32_THREAD_H_ 39 #define LIBC_mips32_THREAD_H_ 40 40 41 41 /* I did not find any specification (neither MIPS nor PowerPC), but … … 54 54 55 55 typedef struct { 56 void * pst_data;56 void *fibril_data; 57 57 } tcb_t; 58 58 -
uspace/lib/libc/arch/mips32eb/Makefile.inc
rb9641ee rbc1f1c2 35 35 36 36 ARCH_SOURCES += arch/$(ARCH)/src/syscall.c \ 37 arch/$(ARCH)/src/ psthread.S \37 arch/$(ARCH)/src/fibril.S \ 38 38 arch/$(ARCH)/src/thread.c 39 39 -
uspace/lib/libc/arch/ppc32/Makefile.inc
rb9641ee rbc1f1c2 34 34 35 35 ARCH_SOURCES += arch/$(ARCH)/src/syscall.c \ 36 arch/$(ARCH)/src/ psthread.S \36 arch/$(ARCH)/src/fibril.S \ 37 37 arch/$(ARCH)/src/thread.c 38 38 -
uspace/lib/libc/arch/ppc32/include/fibril.h
rb9641ee rbc1f1c2 33 33 */ 34 34 35 #ifndef LIBC_ppc32_ PSTHREAD_H_36 #define LIBC_ppc32_ PSTHREAD_H_35 #ifndef LIBC_ppc32_FIBRIL_H_ 36 #define LIBC_ppc32_FIBRIL_H_ 37 37 38 38 #include <types.h> -
uspace/lib/libc/arch/ppc32/include/thread.h
rb9641ee rbc1f1c2 39 39 40 40 typedef struct { 41 void * pst_data;41 void *fibril_data; 42 42 } tcb_t; 43 43 -
uspace/lib/libc/arch/ppc64/Makefile.inc
rb9641ee rbc1f1c2 34 34 35 35 ARCH_SOURCES += arch/$(ARCH)/src/syscall.c \ 36 arch/$(ARCH)/src/ psthread.S \36 arch/$(ARCH)/src/fibril.S \ 37 37 arch/$(ARCH)/src/thread.c 38 38 -
uspace/lib/libc/arch/ppc64/include/fibril.h
rb9641ee rbc1f1c2 33 33 */ 34 34 35 #ifndef LIBC_ppc64_ PSTHREAD_H_36 #define LIBC_ppc64_ PSTHREAD_H_35 #ifndef LIBC_ppc64_FIBRIL_H_ 36 #define LIBC_ppc64_FIBRIL_H_ 37 37 38 38 #include <types.h> -
uspace/lib/libc/arch/ppc64/include/thread.h
rb9641ee rbc1f1c2 39 39 40 40 typedef struct { 41 void * pst_data;41 void *fibril_data; 42 42 } tcb_t; 43 43 -
uspace/lib/libc/arch/sparc64/Makefile.inc
rb9641ee rbc1f1c2 33 33 TOOLCHAIN_DIR = /usr/local/sparc64/bin 34 34 35 ARCH_SOURCES += arch/$(ARCH)/src/ psthread.S \35 ARCH_SOURCES += arch/$(ARCH)/src/fibril.S \ 36 36 arch/$(ARCH)/src/thread.c 37 37 -
uspace/lib/libc/arch/sparc64/include/fibril.h
rb9641ee rbc1f1c2 33 33 */ 34 34 35 #ifndef LIBC_sparc64_ PSTHREAD_H_36 #define LIBC_sparc64_ PSTHREAD_H_35 #ifndef LIBC_sparc64_FIBRIL_H_ 36 #define LIBC_sparc64_FIBRIL_H_ 37 37 38 38 #include <libarch/stack.h> -
uspace/lib/libc/arch/sparc64/include/thread.h
rb9641ee rbc1f1c2 41 41 typedef struct { 42 42 void *self; 43 void * pst_data;43 void *fibril_data; 44 44 } tcb_t; 45 45
Note:
See TracChangeset
for help on using the changeset viewer.