home *** CD-ROM | disk | FTP | other *** search
/ Geek Gadgets 1 / ADE-1.bin / ade-dist / gcc-2.7.2.1-src.tgz / tar.out / fsf / gcc / config / m68k / dpx2.ifile < prev    next >
Text File  |  1996-09-28  |  2KB  |  56 lines

  1. /*
  2.  *      dpx2.ifile - for collectless G++ on Bull DPX/2
  3.  *    
  4.  *      Peter Schauer <Peter.Schauer@regent.e-technik.tu-muenchen.dbp.de>
  5.  *
  6.  *      Install this file as $prefix/gcc-lib/dpx2/VERSION/gcc.ifile
  7.  *    and comment out the lines referring to COLLECT at the top
  8.  *      of Makefile before building GCC.
  9.  *    
  10.  *      This file has been tested with gcc-2.2.2 on a DPX/2 340
  11.  *      running BOS 2.00.45, if it doesn't work for you, stick
  12.  *      with collect.
  13.  *    --sjg
  14.  */
  15. /*
  16.  *    Ifile to link with memory configured at 0.
  17.  *    BLOCK to an offset that leaves room for many headers ( the value
  18.  *    here allows for a file header, an outheader, and up to 11 section 
  19.  *    headers on most systems.
  20.  *    BIND to an address that excludes page 0 from being mapped. The value
  21.  *    used for BLOCK should be or'd into this value. Here I'm setting BLOCK
  22.  *    to 0x200 and BIND to ( 0x100000 | value_used_for(BLOCK) )
  23.  *    If you are using shared libraries, watch that you don't overlap the
  24.  *    address ranges assigned for shared libs.
  25.  *
  26.  *    GROUP BIND to a location in the next segment.  Here, the only value
  27.  *    that you should change (I think) is that within NEXT, which I've set
  28.  *    to my hardware segment size. You can always use a larger size, but not
  29.  *    a smaller one.
  30.  */
  31. SECTIONS
  32. {
  33.     .text BIND(0x100200) BLOCK (0x200) :
  34.     {
  35.          /* plenty of room for headers */
  36.         *(.init)
  37.         *(.text)
  38.         _vfork = _fork; /* I got tired of editing peoples sloppy code */
  39.         *(.fini)
  40.     }
  41.     GROUP BIND( NEXT(0x100000) + (ADDR(.text) + (SIZEOF(.text)) % 0x1000)):
  42.     {
  43.             .data : {
  44.                 ___CTOR_LIST__ = . ; 
  45.                 . += 4 ;    /* leading NULL */
  46.                 *(.ctor) 
  47.                 . += 4 ;    /* trailing NULL */
  48.                 ___DTOR_LIST__ = . ;
  49.                 . += 4 ;    /* leading NULL */
  50.                 *(.dtor) 
  51.                 . += 4 ;     /* trailing NULL */
  52.              }
  53.             .bss : { }
  54.     }
  55. }
  56.