[M3commit] CVS Update: cm3

Jay K jay.krell at cornell.edu
Sun May 9 17:39:25 CEST 2010


Dago, I'm using the Sun assembler now.
Results might be a little better, I think slightly more debuggable, with the GNU assembler.
But maybe we should really be generating Dwarf symbols anyway.

http://gcc.gnu.org/install/specific.html#ix86-x-solaris210

i?86-*-solaris2.10

Use this for Solaris 10 or later on x86 and x86-64 systems.  This
configuration is supported by GCC 4.0 and later versions only.  Unlike
`sparcv9-sun-solaris2*', there is no corresponding 64-bit
configuration like `amd64-*-solaris2*' or `x86_64-*-solaris2*'. 


   It is recommended that you configure GCC to use the GNU assembler, in
/usr/sfw/bin/gas.  The versions included in Solaris 10, from GNU
binutils 2.15, and Solaris 11, from GNU binutils 2.19, work fine,
although the current version, from GNU binutils
2.20.1, is known to work, too.  Recent versions of the Sun assembler in
/usr/ccs/bin/as work almost as well, though. 


   For linking, the Sun linker, is preferred.  If you want to use the GNU
linker instead, which is available in /usr/sfw/bin/gld, note that
due to a packaging bug the version in Solaris 10, from GNU binutils
2.15, cannot be used, while the version in Solaris 11, from GNU binutils
2.19, works, as does the latest version, from GNU binutils 2.20.1.

   To use GNU as, configure with the options
--with-gnu-as --with-as=/usr/sfw/bin/gas.  It may be necessary
to configure with --without-gnu-ld --with-ld=/usr/ccs/bin/ld to
guarantee use of Sun ld. 


 - See how they say "Sun assembler work almost as well, though" -- so clear and precise. :(


You really want the gcc code to have both configurations compiled in and then at runtime look around
for available assemblers and request the matching mode.
Too much is "stuck" at configure/compile-time, though I know their general direction
is to leave things until runtime, cleaning up what was historically the other way.


Anyway, I have I386_SOLARIS and AMD64_SOLARIS cm3 running now.
Proceeding to build the rest of the system natively..


 - Jay


----------------------------------------
> From: dam at opencsw.org
> To: jkrell at elego.de
> Date: Sun, 9 May 2010 16:40:28 +0200
> CC: m3commit at elegosoft.com
> Subject: Re: [M3commit] CVS Update: cm3
>
> Hi Jay,
>
> Am 09.05.2010 um 14:29 schrieb Jay Krell:
>
>> CVSROOT: /usr/cvs
>> Changes by: jkrell at birch. 10/05/09 14:29:31
>>
>> Modified files:
>> cm3/m3-sys/m3cc/src/: m3makefile
>>
>> Log message:
>> downgrade all the i686 to i586
>> that should work, we have a i586 user
>> switch I386_SOLARIS, AMD64_SOLARIS from GNU assembler to SUN
>> assembler
>> There are tradeoffs either way. The gcc documentation recommends
>> GNU assembler but says Sun assembler is almost as good. Sun assembler
>> has been seen to reject the .stabd directive from -gstabs+, but -
>> gstabs
>> seems ok (it looks like gcc tries to not emit the .stabd for Sun
>> asssembler, but maybe it fails?) GNU assembler seems to move around
>> a bit.
>> While Sun installs it to /usr/sfw/bin/gas, the opencsw machines don't
>> have it there. (I should really look at my own stock install, so I
>> know
>> what csw changes vs. what Sun does.)
>
> /usr/sfw is unbundled software, which can optionally be installed from
> the
> companion cd. I would recommend not to rely on it. As CSW provides
> exactly
> the same as what SFW does we have SFW not installed to avoid using these
> by mistake. If possible use the Sun assembler or depend on GNU as as
> external tool to be installed.
>
>
> Best regards
>
> -- Dago
 		 	   		  


More information about the M3commit mailing list