[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Building 0812 on Sun4 solaris 2.4 with gcc 2.7.0?

>>>>> "Joerg" == Joerg Hoehle <hoehle@zeus.gmd.de> writes:

    Joerg> Hi, Marcus Daniels writes:
    >> >>>>> "Raymond" == Raymond Toy <toy@rtp.ericsson.se> writes:
    Raymond> global register variable follows a function definition
    Raymond> The relevant line in clisp.h is:
    Raymond> register object subr_self __asm__("%g4");

    >> A workaround is compiling without "--with-dynamic-modules".

    Joerg> What I had to do in the Amiga port was to change the
    Joerg> location of the above line to come before any function
    Joerg> definitions (especially inlined functions defined in the
    Joerg> headers files). So make sure the register declaration comes
    Joerg> first or compile the module with -ffixed-g4 so that the
    Joerg> register is allocated right from the beginning.

Thanks for the hints

I would try them out, but I went and grabbed new versions from 
which seem to work better.  The "explicit" problem is still there, but
the %g4 problem seems to be gone.

However, this raises another question.  Whenever I compile I get many
warnings from gcc about volatile not doing what might be expected and
using call-clobbered global registers (or something like that).  Are
these warnings important, especially the call-clobbered global
register?  I've been using the result on various things, and the
answer has always been what was expected.