diff options
-rw-r--r-- | bfd/ChangeLog | 5 | ||||
-rw-r--r-- | bfd/aout-cris.c | 11 |
2 files changed, 16 insertions, 0 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 2e33136..bc4f246 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,8 @@ +2000-09-28 Örjan Friberg <orjanf@axis.com> + Hans-Peter Nilsson <hp@axis.com> + + * aout-cris.c (N_TXTADDR): Define. + 2000-09-28 John David Anglin <dave@hiauly1.hia.nrc.ca> * som.c: Include alloca-conf.h. diff --git a/bfd/aout-cris.c b/bfd/aout-cris.c index 36f8553..a531bcb 100644 --- a/bfd/aout-cris.c +++ b/bfd/aout-cris.c @@ -28,6 +28,17 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #define ENTRY_CAN_BE_ZERO #define TEXT_START_ADDR 0 +/* Without reading symbols to get the text start symbol, there is no way + to know where the text segment starts in an a.out file. Defaulting to + anything as constant as TEXT_START_ADDR is bad. But we can guess from + the entry point, which is usually within the first 64k of the text + segment. We also assume here that the text segment is 64k-aligned. + FIXME: It is also wrong to assume that data and bss follow immediately + after text, but with those, we don't have any choice besides reading + symbol info, and luckily there's no pressing need for correctness for + those vma:s at this time. */ +#define N_TXTADDR(x) ((x).a_entry & ~0xffff) + /* If you change this to 4, you can not link to an address N*4+2. */ #define SEGMENT_SIZE 2 |