View Single Post

   
  #6 (permalink)  
Old 01-16-2008, 11:34 AM
Charles Lindsey
 
Posts: n/a
Default Re: Conventions for using the register %g7

In <f8uvod$1t6i$1@nef.ens.fr> Marc <marc.glisse@gmail.com> writes:

>"Charles Lindsey" wrote:


>> And I have observed that even my somewhat ancient Sun C compiler never
>> seems to make use of %g7.
>>
>> OTOH, I have another compiler, nothing to do with Sun, that is not aware
>> of %g7 being reserved for anything. So as a result I have a program that
>> worked fine under Solaris 7, bur breaks in Solaris 10.


>This blog post should answer all your questions:


>http://blogs.sun.com/morganh/entry/a...king_the_rules


Yes, that describes exactly the problem I have run into, and confirms that
it only arises in Solaris 10. Apparently, all processes are now considered
to be multi-threaded (and hence reserve %g7), and single-threaded
processes are not supposed to notice the difference (and indeed %g7 had
always been reserved for some unspecified 'system' use). It looks as
though %g6 could also produce similar problems.

The compiler that caused the problem was the Amsterdam Compiler Kit, which
is ancient and unmaintained, and was in any case never intended for
multi-threaded applications. So it seems I will have to do a little
maintenance of it myself :-( .

--
Charles H. Lindsey ---------At Home, doing my own thing------------------------
Tel: +44 161 436 6131 Fax: +44 161 436 6133 Web: http://www.cs.man.ac.uk/~chl
Email: chl@clerew.man.ac.uk Snail: 5 Clerewood Ave, CHEADLE, SK8 3JU, U.K.
PGP: 2C15F1A9 Fingerprint: 73 6D C2 51 93 A0 01 E7 65 E8 64 7E 14 A4 AB A5
Reply With Quote