Changeset 32573ff in mainline for uspace/lib/c/arch/ia32
- Timestamp:
- 2016-05-02T20:58:16Z (10 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 7c4b26c
- Parents:
- 6adb775f (diff), 5035ba05 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the(diff)links above to see all the changes relative to each parent. - Location:
- uspace/lib/c/arch/ia32
- Files:
-
- 4 edited
-
Makefile.common (modified) (1 diff)
-
include/libarch/tls.h (modified) (2 diffs)
-
src/fibril.S (modified) (1 diff)
-
src/rtld/reloc.c (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/c/arch/ia32/Makefile.common
r6adb775f r32573ff 28 28 29 29 ifeq ($(PROCESSOR),i486) 30 GCC_CFLAGS += -march=i486 - fno-omit-frame-pointer30 GCC_CFLAGS += -march=i486 -mno-tls-direct-seg-refs -fno-omit-frame-pointer 31 31 else 32 GCC_CFLAGS += -march=pentium - fno-omit-frame-pointer32 GCC_CFLAGS += -march=pentium -mno-tls-direct-seg-refs -fno-omit-frame-pointer 33 33 endif 34 34 -
uspace/lib/c/arch/ia32/include/libarch/tls.h
r6adb775f r32573ff 47 47 static inline void __tcb_set(tcb_t *tcb) 48 48 { 49 __SYSCALL1(SYS_TLS_SET, (sysarg_t) tcb);49 asm volatile ("movl %0, %%gs:0" :: "r" (tcb)); 50 50 } 51 51 … … 54 54 void *retval; 55 55 56 asm ( 57 "movl %%gs:0, %0" 58 : "=r" (retval) 59 ); 56 asm volatile ("movl %%gs:0, %0" : "=r" (retval)); 60 57 61 58 return retval; -
uspace/lib/c/arch/ia32/src/fibril.S
r6adb775f r32573ff 77 77 78 78 # set thread local storage 79 pushl %edx80 79 movl CONTEXT_OFFSET_TLS(%eax), %edx # Set arg1 to TLS addr 81 movl $1, %eax # Syscall SYS_TLS_SET 82 int $0x30 83 popl %edx 80 movl %edx, %gs:0 84 81 85 82 xorl %eax, %eax # context_restore returns 0 -
uspace/lib/c/arch/ia32/src/rtld/reloc.c
r6adb775f r32573ff 144 144 145 145 sym_def = symbol_def_find(str_tab + sym->st_name, 146 m, ssf_no root, &dest);146 m, ssf_noexec, &dest); 147 147 148 148 if (sym_def) {
Note:
See TracChangeset
for help on using the changeset viewer.
