Changeset 96e01fbc in mainline for uspace/lib/c/arch
- Timestamp:
- 2012-08-31T17:30:29Z (13 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 2be2506a
- Parents:
- e0d5bc5 (diff), 0d57c3e (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
- Files:
-
- 26 edited
-
abs32le/_link.ld.in (modified) (1 diff)
-
abs32le/include/types.h (modified) (1 diff)
-
amd64/_link.ld.in (modified) (1 diff)
-
amd64/include/elf_linux.h (modified) (2 diffs)
-
amd64/include/types.h (modified) (1 diff)
-
arm32/_link.ld.in (modified) (1 diff)
-
arm32/include/types.h (modified) (1 diff)
-
arm32/src/fibril.S (modified) (2 diffs)
-
arm32/src/stacktrace_asm.S (modified) (1 diff)
-
arm32/src/thread_entry.s (modified) (1 diff)
-
ia32/_link.ld.in (modified) (4 diffs)
-
ia32/include/types.h (modified) (1 diff)
-
ia64/Makefile.common (modified) (1 diff)
-
ia64/_link.ld.in (modified) (1 diff)
-
ia64/include/types.h (modified) (1 diff)
-
mips32/Makefile.common (modified) (1 diff)
-
mips32/_link.ld.in (modified) (1 diff)
-
mips32/include/types.h (modified) (1 diff)
-
mips32eb/Makefile.common (modified) (1 diff)
-
mips64/Makefile.common (modified) (1 diff)
-
mips64/_link.ld.in (modified) (1 diff)
-
mips64/include/types.h (modified) (1 diff)
-
ppc32/_link.ld.in (modified) (1 diff)
-
ppc32/include/types.h (modified) (1 diff)
-
sparc64/_link.ld.in (modified) (1 diff)
-
sparc64/include/types.h (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/c/arch/abs32le/_link.ld.in
re0d5bc5 r96e01fbc 14 14 SECTIONS { 15 15 #ifdef LOADER 16 . = 0x70001000 + SIZEOF_HEADERS; 17 16 18 .interp : { 17 19 *(.interp); 18 } :interp 19 20 . = 0x70001000 + SIZEOF_HEADERS; 20 } :interp :text 21 21 #else 22 22 . = 0x1000 + SIZEOF_HEADERS; 23 23 #endif 24 25 /* Make sure the code is aligned reasonably */ 26 . = ALIGN(., 16); 27 24 28 .text : { 25 29 *(.text .text.*); -
uspace/lib/c/arch/abs32le/include/types.h
re0d5bc5 r96e01fbc 47 47 48 48 typedef uint32_t sysarg_t; 49 typedef int32_t native_t; 49 50 50 51 typedef int32_t ssize_t; -
uspace/lib/c/arch/amd64/_link.ld.in
re0d5bc5 r96e01fbc 15 15 SECTIONS { 16 16 #ifdef LOADER 17 . = 0x70001000 + SIZEOF_HEADERS; 18 17 19 .interp : { 18 20 *(.interp); 19 } :interp 20 21 . = 0x70001000 + SIZEOF_HEADERS; 21 } :interp :text 22 22 #else 23 23 . = 0x1000 + SIZEOF_HEADERS; 24 24 #endif 25 26 /* Make sure the code is aligned reasonably */ 27 . = ALIGN(., 16); 28 25 29 .init : { 26 30 *(.init); -
uspace/lib/c/arch/amd64/include/elf_linux.h
re0d5bc5 r96e01fbc 66 66 uint64_t rsp; 67 67 uint64_t ss; 68 69 /* 70 * The following registers need to be part of elf_regs_t. 71 * Unfortunately, we don't have any information about them in our 72 * istate_t. 73 */ 74 uint64_t unused_fs_base; 75 uint64_t unused_gs_base; 76 uint64_t unused_ds; 77 uint64_t unused_es; 78 uint64_t unused_fs; 79 uint64_t unused_gs; 68 80 } elf_regs_t; 69 81 … … 91 103 elf_regs->rsp = istate->rsp; 92 104 elf_regs->ss = istate->ss; 105 106 /* 107 * Reset the registers for which there is not enough info in istate_t. 108 */ 109 elf_regs->unused_fs_base = 0; 110 elf_regs->unused_gs_base = 0; 111 elf_regs->unused_ds = 0; 112 elf_regs->unused_es = 0; 113 elf_regs->unused_fs = 0; 114 elf_regs->unused_gs = 0; 93 115 } 94 116 -
uspace/lib/c/arch/amd64/include/types.h
re0d5bc5 r96e01fbc 47 47 48 48 typedef uint64_t sysarg_t; 49 typedef int64_t native_t; 49 50 50 51 typedef int64_t ssize_t; -
uspace/lib/c/arch/arm32/_link.ld.in
re0d5bc5 r96e01fbc 14 14 SECTIONS { 15 15 #ifdef LOADER 16 . = 0x70001000 + SIZEOF_HEADERS; 17 16 18 .interp : { 17 19 *(.interp); 18 } :interp 19 20 . = 0x70001000 + SIZEOF_HEADERS; 20 } :interp :text 21 21 #else 22 22 . = 0x1000 + SIZEOF_HEADERS; 23 23 #endif 24 25 /* Make sure the code is aligned reasonably */ 26 . = ALIGN(., 8); 27 24 28 .init : { 25 29 *(.init); -
uspace/lib/c/arch/arm32/include/types.h
re0d5bc5 r96e01fbc 48 48 49 49 typedef uint32_t sysarg_t; 50 typedef int32_t native_t; 50 51 51 52 typedef int32_t ssize_t; -
uspace/lib/c/arch/arm32/src/fibril.S
re0d5bc5 r96e01fbc 35 35 stmia r0!, {sp, lr} 36 36 stmia r0!, {r4-r11} 37 37 38 38 # return 1 39 39 mov r0, #1 … … 43 43 ldmia r0!, {sp, lr} 44 44 ldmia r0!, {r4-r11} 45 46 # return 045 46 # return 0 47 47 mov r0, #0 48 48 mov pc, lr -
uspace/lib/c/arch/arm32/src/stacktrace_asm.S
re0d5bc5 r96e01fbc 41 41 42 42 stacktrace_pc_get: 43 mov r0, lr 43 mov r0, lr 44 44 mov pc, lr -
uspace/lib/c/arch/arm32/src/thread_entry.s
re0d5bc5 r96e01fbc 42 42 push {fp, ip, lr, pc} 43 43 sub fp, ip, #4 44 45 b __thread_main44 45 b __thread_main -
uspace/lib/c/arch/ia32/_link.ld.in
re0d5bc5 r96e01fbc 19 19 20 20 SECTIONS { 21 #if defined(LOADER) || defined(DLEXE)22 .interp : {23 *(.interp);24 } :interp25 #endif26 21 #ifdef LOADER 27 22 . = 0x70001000 + SIZEOF_HEADERS; … … 29 24 . = 0x1000 + SIZEOF_HEADERS; 30 25 #endif 26 27 #if defined(LOADER) || defined(DLEXE) 28 .interp : { 29 *(.interp); 30 } :interp :text 31 #endif 32 33 /* Make sure the code is aligned reasonably */ 34 . = ALIGN(., 16); 35 31 36 .init : { 32 37 *(.init); … … 37 42 *(.rodata .rodata.*); 38 43 } :text 39 44 40 45 #if defined(SHLIB) || defined(DLEXE) 41 46 .rel.plt : { … … 80 85 #if defined(SHLIB) || defined(DLEXE) 81 86 .data.rel : { 82 *(.data.rel .data.rel.*);87 *(.data.rel .data.rel.*); 83 88 } :data 84 89 85 90 .got : { 86 *(.got);91 *(.got); 87 92 } :data 93 88 94 .got.plt : { 89 *(.got.plt);95 *(.got.plt); 90 96 } :data 91 97 #endif -
uspace/lib/c/arch/ia32/include/types.h
re0d5bc5 r96e01fbc 47 47 48 48 typedef uint32_t sysarg_t; 49 typedef int32_t native_t; 49 50 50 51 typedef int32_t ssize_t; -
uspace/lib/c/arch/ia64/Makefile.common
re0d5bc5 r96e01fbc 27 27 # 28 28 29 GCC_CFLAGS += -fno-unwind-tables 29 # 30 # FIXME: 31 # 32 # The -fno-selective-scheduling and -fno-selective-scheduling2 options 33 # should be removed as soon as a bug in GCC concerning unchecked 34 # speculative loads is fixed. 35 # 36 # See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53975 for reference. 37 # 38 39 GCC_CFLAGS += -fno-unwind-tables -fno-selective-scheduling -fno-selective-scheduling2 30 40 31 41 ENDIANESS = LE -
uspace/lib/c/arch/ia64/_link.ld.in
re0d5bc5 r96e01fbc 14 14 SECTIONS { 15 15 #ifdef LOADER 16 . = 0x800000000 + SIZEOF_HEADERS; 17 16 18 .interp : { 17 19 *(.interp); 18 } :interp 19 20 . = 0x800000000 + SIZEOF_HEADERS; 20 } :interp :text 21 21 #else 22 22 . = 0x4000 + SIZEOF_HEADERS; 23 23 #endif 24 /* 25 * XXX This is just a work around. Problem: .init section does not 26 * have the proper alignment. 27 */ 24 25 /* Make sure the code is aligned reasonably */ 28 26 . = ALIGN(., 16); 29 27 30 28 .init : { 31 29 *(.init); -
uspace/lib/c/arch/ia64/include/types.h
re0d5bc5 r96e01fbc 57 57 58 58 typedef uint64_t sysarg_t; 59 typedef int64_t native_t; 59 60 60 61 typedef int64_t ssize_t; -
uspace/lib/c/arch/mips32/Makefile.common
re0d5bc5 r96e01fbc 27 27 # 28 28 29 GCC_CFLAGS += -m ips3 -mabi=3229 GCC_CFLAGS += -msoft-float -mips3 -mabi=32 30 30 31 31 ENDIANESS = LE -
uspace/lib/c/arch/mips32/_link.ld.in
re0d5bc5 r96e01fbc 14 14 SECTIONS { 15 15 #ifdef LOADER 16 . = 0x70004000 + SIZEOF_HEADERS; 17 16 18 .interp : { 17 19 *(.interp); 18 } :interp 19 20 . = 0x70004000 + SIZEOF_HEADERS; 20 } :interp :text 21 21 #else 22 22 . = 0x4000 + SIZEOF_HEADERS; 23 23 #endif 24 25 /* Make sure the code is aligned reasonably */ 26 . = ALIGN(., 16); 27 24 28 .init : { 25 29 *(.init); -
uspace/lib/c/arch/mips32/include/types.h
re0d5bc5 r96e01fbc 48 48 49 49 typedef uint32_t sysarg_t; 50 typedef int32_t native_t; 50 51 51 52 typedef int32_t ssize_t; -
uspace/lib/c/arch/mips32eb/Makefile.common
re0d5bc5 r96e01fbc 27 27 # 28 28 29 GCC_CFLAGS += -m ips3 -mabi=3229 GCC_CFLAGS += -msoft-float -mips3 -mabi=32 30 30 31 31 ENDIANESS = BE -
uspace/lib/c/arch/mips64/Makefile.common
re0d5bc5 r96e01fbc 27 27 # 28 28 29 GCC_CFLAGS += -m ips3 -mabi=6429 GCC_CFLAGS += -msoft-float -mips3 -mabi=64 30 30 AFLAGS = -64 31 31 -
uspace/lib/c/arch/mips64/_link.ld.in
re0d5bc5 r96e01fbc 15 15 SECTIONS { 16 16 #ifdef LOADER 17 . = 0x70004000 + SIZEOF_HEADERS; 18 17 19 .interp : { 18 20 *(.interp); 19 } :interp 20 21 . = 0x70004000 + SIZEOF_HEADERS; 21 } :interp :text 22 22 #else 23 23 . = 0x4000 + SIZEOF_HEADERS; 24 24 #endif 25 26 /* Make sure the code is aligned reasonably */ 27 . = ALIGN(., 16); 28 25 29 .init : { 26 30 *(.init); -
uspace/lib/c/arch/mips64/include/types.h
re0d5bc5 r96e01fbc 48 48 49 49 typedef uint64_t sysarg_t; 50 typedef int64_t native_t; 50 51 51 52 typedef int64_t ssize_t; -
uspace/lib/c/arch/ppc32/_link.ld.in
re0d5bc5 r96e01fbc 15 15 SECTIONS { 16 16 #ifdef LOADER 17 . = 0x70001000 + SIZEOF_HEADERS; 18 17 19 .interp : { 18 20 *(.interp); 19 } :interp 20 21 . = 0x70001000 + SIZEOF_HEADERS; 21 } :interp :text 22 22 #else 23 23 . = 0x1000 + SIZEOF_HEADERS; 24 24 #endif 25 26 /* Make sure the code is aligned reasonably */ 27 . = ALIGN(., 4); 28 25 29 .init : { 26 30 *(.init); -
uspace/lib/c/arch/ppc32/include/types.h
re0d5bc5 r96e01fbc 47 47 48 48 typedef uint32_t sysarg_t; 49 typedef int32_t native_t; 49 50 50 51 typedef int32_t ssize_t; -
uspace/lib/c/arch/sparc64/_link.ld.in
re0d5bc5 r96e01fbc 14 14 SECTIONS { 15 15 #ifdef LOADER 16 . = 0x70004000 + SIZEOF_HEADERS; 17 16 18 .interp : { 17 19 *(.interp); 18 } :interp 19 20 . = 0x70004000 + SIZEOF_HEADERS; 20 } :interp :text 21 21 #else 22 22 . = 0x4000 + SIZEOF_HEADERS; 23 23 #endif 24 25 /* Make sure the code is aligned reasonably */ 26 . = ALIGN(., 16); 27 24 28 .init : { 25 29 *(.init); -
uspace/lib/c/arch/sparc64/include/types.h
re0d5bc5 r96e01fbc 47 47 48 48 typedef uint64_t sysarg_t; 49 typedef int64_t native_t; 49 50 50 51 typedef int64_t ssize_t;
Note:
See TracChangeset
for help on using the changeset viewer.
