Commit 2ca7633d authored by Roland McGrath's avatar Roland McGrath Committed by Paul Mackerras

[POWERPC] Tweak VDSO linker script to avoid upsetting old binutils

This works around bugs in older binutils' objcopy.
The placement of these sections does not really matter,
but it confused the buggy old BFD libraries.
Signed-off-by: default avatarRoland McGrath <roland@redhat.com>
Signed-off-by: default avatarPaul Mackerras <paulus@samba.org>
parent 21451155
...@@ -43,15 +43,15 @@ SECTIONS ...@@ -43,15 +43,15 @@ SECTIONS
.rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) }
.rodata1 : { *(.rodata1) } .rodata1 : { *(.rodata1) }
.dynamic : { *(.dynamic) } :text :dynamic
.eh_frame_hdr : { *(.eh_frame_hdr) } :text :eh_frame_hdr .eh_frame_hdr : { *(.eh_frame_hdr) } :text :eh_frame_hdr
.eh_frame : { KEEP (*(.eh_frame)) } :text .eh_frame : { KEEP (*(.eh_frame)) } :text
.gcc_except_table : { *(.gcc_except_table) } .gcc_except_table : { *(.gcc_except_table) }
.rela.dyn ALIGN(8) : { *(.rela.dyn) }
.opd ALIGN(8) : { KEEP (*(.opd)) } .opd ALIGN(8) : { KEEP (*(.opd)) }
.got ALIGN(8) : { *(.got .toc) } .got ALIGN(8) : { *(.got .toc) }
.rela.dyn ALIGN(8) : { *(.rela.dyn) }
.dynamic : { *(.dynamic) } :text :dynamic
_end = .; _end = .;
PROVIDE(end = .); PROVIDE(end = .);
......
...@@ -356,6 +356,12 @@ END_FTR_SECTION_IFCLR(CPU_FTR_601) ...@@ -356,6 +356,12 @@ END_FTR_SECTION_IFCLR(CPU_FTR_601)
#define toreal(rd) #define toreal(rd)
#define fromreal(rd) #define fromreal(rd)
/*
* We use addis to ensure compatibility with the "classic" ppc versions of
* these macros, which use rs = 0 to get the tophys offset in rd, rather than
* converting the address in r0, and so this version has to do that too
* (i.e. set register rd to 0 when rs == 0).
*/
#define tophys(rd,rs) \ #define tophys(rd,rs) \
addis rd,rs,0 addis rd,rs,0
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment