]> git.ipfire.org Git - thirdparty/ipxe.git/commitdiff
Remove the (unused) option to override _prefix_link_addr,
authorMichael Brown <mcb30@etherboot.org>
Fri, 7 Dec 2007 07:34:11 +0000 (01:34 -0600)
committerMichael Brown <mcb30@etherboot.org>
Fri, 7 Dec 2007 07:34:11 +0000 (01:34 -0600)
_textdata_link_addr, _load_addr and _max_align in the linker scripts.
A bug in some versions of ld causes segfaults if the DEFINED() macro
is used in a linker script *and* the -Map option to ld is present.

We don't currently need to override any of these values; if we need to
do so in future then the solution will probably be to always specify
the values on the ld command line, and have the linker script not
define them at all.

src/arch/i386/scripts/i386.lds

index 8cc715d0b6e000b938f13e232e09538f003361b7..d481db0f1441e2af923386491edbeed7d9628e82 100644 (file)
@@ -15,15 +15,6 @@ SECTIONS {
      * addresses, but may have individual link addresses depending on
      * the memory model being used.
      *
-     * The linker symbols _{prefix,textdata}_link_addr, load_addr, and
-     * _max_align may be specified explicitly.  If not specified, they
-     * will default to:
-     *
-     *   _prefix_link_addr     = 0
-     *   _textdata_link_addr   = 0
-     *   _load_addr            = 0
-     *   _max_align            = 16
-     * 
      * We guarantee alignment of virtual addresses to any alignment
      * specified by the constituent object files (e.g. via
      * __attribute__((aligned(x)))).  Load addresses are guaranteed
@@ -43,7 +34,7 @@ SECTIONS {
      * The prefix
      */
 
-    _prefix_link_addr = DEFINED ( _prefix_link_addr ) ? _prefix_link_addr : 0;
+    _prefix_link_addr = 0;
     . = _prefix_link_addr;
     _prefix = .;
 
@@ -112,8 +103,7 @@ SECTIONS {
      * The 32-bit sections
      */
 
-    _textdata_link_addr = ( DEFINED ( _textdata_link_addr ) ?
-                           _textdata_link_addr : 0 );
+    _textdata_link_addr = 0;
     . = _textdata_link_addr;
     _textdata = .;
 
@@ -198,8 +188,8 @@ SECTIONS {
      * location counter.
      */
 
-    _max_align             = DEFINED ( _max_align ) ? _max_align : 16;
-    _load_addr             = DEFINED ( _load_addr ) ? _load_addr : 0;
+    _max_align             = 16;
+    _load_addr             = 0;
 
     .                      = _load_addr;