diff options
author | Alan Modra <amodra@gmail.com> | 2001-01-25 02:31:42 +0000 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2001-01-25 02:31:42 +0000 |
commit | 02aa14fb329dba348f0f893e7e838aac3ebeb939 (patch) | |
tree | 22eebc4825ce772e3862d5287cb3d005e32a9301 | |
parent | 05c6581e28a1d6ca8db3514a09b3bee2c4c7b9ee (diff) | |
download | gdb-02aa14fb329dba348f0f893e7e838aac3ebeb939.zip gdb-02aa14fb329dba348f0f893e7e838aac3ebeb939.tar.gz gdb-02aa14fb329dba348f0f893e7e838aac3ebeb939.tar.bz2 |
(lang_leave_overlay): Don't set lma_region when load_base is specified.
-rw-r--r-- | ld/ChangeLog | 5 | ||||
-rw-r--r-- | ld/ldlang.c | 8 |
2 files changed, 11 insertions, 2 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog index cdd999c..d8e79b5 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,8 @@ +2001-01-25 Jim Driftmyer <jdrift@stny.rr.com> + + * ldlang.c (lang_leave_overlay): Don't set lma_region when + load_base is specified. + 2001-01-24 Hans-Peter Nilsson <hp@axis.com> * emultempl/elf32.em: Correct spelling in comments and listed diff --git a/ld/ldlang.c b/ld/ldlang.c index 2baf13b..32097fa 100644 --- a/ld/ldlang.c +++ b/ld/ldlang.c @@ -4782,8 +4782,12 @@ lang_leave_overlay (fill, memspec, phdrs, lma_memspec) l->os->region = region; /* We only set lma_region for the first overlay section, as subsequent overlay sections will have load_base set relative - to the first section. */ - if (lma_region != NULL && l->os->lma_region == NULL && l->next == NULL) + to the first section. Also, don't set lma_region if + load_base is specified. FIXME: There should really be a test + that `AT ( LDADDR )' doesn't conflict with `AT >LMA_REGION' + rather than letting LDADDR simply override LMA_REGION. */ + if (lma_region != NULL && l->os->lma_region == NULL + && l->next == NULL && l->os->load_base == NULL) l->os->lma_region = lma_region; if (phdrs != NULL && l->os->phdrs == NULL) l->os->phdrs = phdrs; |