diff options
author | Jim Wilson <wilson@tuliptree.org> | 2003-11-19 02:40:55 +0000 |
---|---|---|
committer | Jim Wilson <wilson@tuliptree.org> | 2003-11-19 02:40:55 +0000 |
commit | 5a46fe39b34aaaab38c776c686549fe7b5beb91f (patch) | |
tree | d4c0803d496a9310e9200b2c54311b62e395b945 /ld | |
parent | 55936540a78cd6b3480e5e72437b90328d3a5d98 (diff) | |
download | gdb-5a46fe39b34aaaab38c776c686549fe7b5beb91f.zip gdb-5a46fe39b34aaaab38c776c686549fe7b5beb91f.tar.gz gdb-5a46fe39b34aaaab38c776c686549fe7b5beb91f.tar.bz2 |
Fix IA-64 linker failure reported by Andreas Schwab.
* ldlang.c (lang_process): Move lang_reset_memory_regions call after
lang_do_assignments call.
Diffstat (limited to 'ld')
-rw-r--r-- | ld/ChangeLog | 3 | ||||
-rw-r--r-- | ld/ldlang.c | 8 |
2 files changed, 8 insertions, 3 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog index 6bcd346..a83237d 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,5 +1,8 @@ 2003-11-18 James E Wilson <wilson@specifixinc.com> + * ldlang.c (lang_process): Move lang_reset_memory_regions call after + lang_do_assignments call. + * emulparams/elf64_ia64.sh (OTHER_PLT_RELOC_SECTIONS): Include .rela.opd if -pie. diff --git a/ld/ldlang.c b/ld/ldlang.c index 1dc2b1e..b7a11f8 100644 --- a/ld/ldlang.c +++ b/ld/ldlang.c @@ -4240,8 +4240,6 @@ lang_process (void) do { - lang_reset_memory_regions (); - relax_again = FALSE; /* Note: pe-dll.c does something like this also. If you find @@ -4253,6 +4251,10 @@ lang_process (void) lang_do_assignments (statement_list.head, abs_output_section, NULL, 0); + /* We must do this after lang_do_assignments, because it uses + _raw_size. */ + lang_reset_memory_regions (); + /* Perform another relax pass - this time we know where the globals are, so can make a better guess. */ lang_size_sections (statement_list.head, abs_output_section, @@ -4269,8 +4271,8 @@ lang_process (void) while (relax_again); /* Final extra sizing to report errors. */ - lang_reset_memory_regions (); lang_do_assignments (statement_list.head, abs_output_section, NULL, 0); + lang_reset_memory_regions (); lang_size_sections (statement_list.head, abs_output_section, &statement_list.head, 0, 0, NULL, TRUE); } |