* aout-cris.c (N_TXTADDR): Define.
authorHans-Peter Nilsson <hp@axis.com>
Thu, 28 Sep 2000 21:58:16 +0000 (21:58 +0000)
committerHans-Peter Nilsson <hp@axis.com>
Thu, 28 Sep 2000 21:58:16 +0000 (21:58 +0000)
bfd/ChangeLog
bfd/aout-cris.c

index 2e33136d8eb814362f5767c7c14002a3678a7e7a..bc4f246c04d65e92217ecf73009c9fa6fb23df3e 100644 (file)
@@ -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.
index 36f85533697061ee6b367b2a0ad2d0ab68ff782f..a531bcbe97ebf25adc3360915384caad51bfe584 100644 (file)
@@ -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