entered into RCS
authorRichard Stallman <rms@gnu.org>
Wed, 30 Sep 1992 22:42:04 +0000 (22:42 +0000)
committerRichard Stallman <rms@gnu.org>
Wed, 30 Sep 1992 22:42:04 +0000 (22:42 +0000)
From-SVN: r2288

gcc/config/m68k/dpx2.ifile [new file with mode: 0644]

diff --git a/gcc/config/m68k/dpx2.ifile b/gcc/config/m68k/dpx2.ifile
new file mode 100644 (file)
index 0000000..899a739
--- /dev/null
@@ -0,0 +1,55 @@
+/*
+ *      dpx2.ifile - for collectless G++ on Bull DPX/2
+ *     
+ *      Peter Schauer <Peter.Schauer@regent.e-technik.tu-muenchen.dbp.de>
+ *
+ *      Install this file as $prefix/gcc-lib/dpx2/VERSION/gcc.ifile
+ *     and comment out the lines refering to COLLECT at the top
+ *      of Makefile before building GCC.
+ *     
+ *      This file has been tested with gcc-2.2.2 on a DPX/2 340
+ *      running BOS 2.00.45, if it doesn't work for you, stick
+ *      with collect.
+ *     --sjg
+ */
+/*
+ *     Ifile to link with memory configured at 0.
+ *     BLOCK to an offset that leaves room for many headers ( the value
+ *     here allows for a file header, an outheader, and up to 11 section 
+ *     headers on most systems.
+ *     BIND to an address that excludes page 0 from being mapped. The value
+ *     used for BLOCK should be or'd into this value. Here I'm setting BLOCK
+ *     to 0x200 and BIND to ( 0x100000 | value_used_for(BLOCK) )
+ *     If you are using shared libraries, watch that you don't overlap the
+ *     address ranges assigned for shared libs.
+ *
+ *     GROUP BIND to a location in the next segment.  Here, the only value
+ *     that you should change (I think) is that within NEXT, which I've set
+ *     to my hardware segment size. You can always use a larger size, but not
+ *     a smaller one.
+ */
+SECTIONS
+{
+       .text BIND(0x100200) BLOCK (0x200) :
+       {
+                /* plenty of room for headers */
+               *(.init)
+               *(.text)
+               _vfork = _fork; /* I got tired of editing peoples sloppy code */
+               *(.fini)
+       }
+       GROUP BIND( NEXT(0x100000) + (ADDR(.text) + (SIZEOF(.text)) % 0x1000)):
+       {
+                       .data : {
+                               ___CTOR_LIST__ = . ; 
+                               . += 4 ;        /* leading NULL */
+                               *(.ctor) 
+                               . += 4 ;        /* trailing NULL */
+                               ___DTOR_LIST__ = . ;
+                               . += 4 ;        /* leading NULL */
+                               *(.dtor) 
+                               . += 4 ;        /* trailing NULL */
+                        }
+                       .bss : { }
+       }
+}