diff options
author | Steve Chamberlain <sac@cygnus> | 1995-05-24 18:26:23 +0000 |
---|---|---|
committer | Steve Chamberlain <sac@cygnus> | 1995-05-24 18:26:23 +0000 |
commit | 28d0c3ce1963ba684d0492524c1cba6454e1d401 (patch) | |
tree | c620928c28bc5d37aea94289fa49a3090fe645a5 /ld/scripttempl | |
parent | a3444c49265832545462e75c90e0477515987dc8 (diff) | |
download | gdb-28d0c3ce1963ba684d0492524c1cba6454e1d401.zip gdb-28d0c3ce1963ba684d0492524c1cba6454e1d401.tar.gz gdb-28d0c3ce1963ba684d0492524c1cba6454e1d401.tar.bz2 |
Add support for ARM-PE.
* Makefile.in (ALL_EMULATIONS): Add armpe.o
* configure.in: Recognize armpe.
* config/arm-pe.mt: New file.
* emulparams/armpe.sh: New file.
* scripttempl/armpe.sc: New file.
Diffstat (limited to 'ld/scripttempl')
-rw-r--r-- | ld/scripttempl/.Sanitize | 1 | ||||
-rw-r--r-- | ld/scripttempl/armpe.sc | 95 |
2 files changed, 96 insertions, 0 deletions
diff --git a/ld/scripttempl/.Sanitize b/ld/scripttempl/.Sanitize index 0e6008a..e060d5f 100644 --- a/ld/scripttempl/.Sanitize +++ b/ld/scripttempl/.Sanitize @@ -34,6 +34,7 @@ Things-to-keep: README a29k.sc alpha.sc +armpe.sc armaout.sc aout.sc ebmon29k.sc diff --git a/ld/scripttempl/armpe.sc b/ld/scripttempl/armpe.sc new file mode 100644 index 0000000..6d7d45a --- /dev/null +++ b/ld/scripttempl/armpe.sc @@ -0,0 +1,95 @@ +# Linker script for ARM PE. +# These are substituted in as variables in order to get '}' in a shell +# conditional expansion. +INIT='.init : { *(.init) }' +FINI='.fini : { *(.fini) }' +cat <<EOF +OUTPUT_FORMAT("${OUTPUT_FORMAT}") +${LIB_SEARCH_DIRS} + +ENTRY(_mainCRTStartup) + +SECTIONS +{ + + .text ${RELOCATING+ 0x401000} : + { + ${RELOCATING+ *(.init);} + *(.text) + ${RELOCATING+ *(.fini);} + ${RELOCATING+ etext = .}; + } + + .bss BLOCK(0x1000) : + { + *(.bss) + *(COMMON); + } + + .rdata BLOCK(0x1000) : + { + *(.rdata) + ; + } + .data BLOCK(0x1000) : { + *(.data) + *(.data2) + ; + } + .idata BLOCK(0x1000) : + { + *(.idata$2) + *(.idata$3) + *(.idata$4) + *(.idata$5) + *(.idata$6) + *(.idata$7) + ; + } + .CRT BLOCK(0x1000) : + { + *(.CRT$XCA) + *(.CRT$XCC) + *(.CRT$XCZ) + *(.CRT$XIA) + *(.CRT$XIC) + *(.CRT$XIZ) + *(.CRT$XLA) + *(.CRT$XLZ) + *(.CRT$XPA) + *(.CRT$XPX) + *(.CRT$XPZ) + *(.CRT$XTA) + *(.CRT$XTZ) + ; + } + .rsrc BLOCK(0x1000) : + { + *(.rsrc$01) + *(.rsrc$02) + ; + } + .reloc BLOCK(0x1000) : + { + *(.reloc) + ; + } + .junk BLOCK(0x1000) : + { + *(.debug$S) + *(.debug$T) + *(.debug$F) + *(.drectve) + ; + } + .stab 0 ${RELOCATING+(NOLOAD)} : + { + [ .stab ] + } + + .stabstr 0 ${RELOCATING+(NOLOAD)} : + { + [ .stabstr ] + } +} +EOF |