[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gcl-devel] WINDOWS -O3 OK - check FIND_INIT and fasload()
From: |
Mike Thomas |
Subject: |
[Gcl-devel] WINDOWS -O3 OK - check FIND_INIT and fasload() |
Date: |
Mon, 05 Apr 2004 20:28:05 +1000 |
User-agent: |
Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.4) Gecko/20030624 Netscape/7.1 (ax) |
Hi all.
Admittedly the random tester has only made 400 iterations so far and
I've got to clean up my work this evening, test Maxima etc, but MinGW32
is now on -O3 with no problems running tha ANSI test.
Every platform that uses "get_extra_bss()" in "sfasl.c" and which has an
initialisation function in its object files (in my case it is called
"_init_code" and it calls "do_init()") should be checked to ensure that
the compiler does not move that initialisation function around in the
object module, typically with higher order optimisations.
My guess is that the "-freorder-functions" optimisation which is turned
on by -O2 (MinGW32 gcc at least) is the culprit and theerfore can
potentially stymie linking code which does not check for such changes.
To check your object, just do:
objdump -xS your_object_file.o
and redirect to a file which you can view at leisure to see whether your
initialisation code stays at zero offset or not.
There are only a few IBM headers in the "h" directory which define
FIND_INIT macro so far but they can be used as an example if you need to
take action on this. I will be adding the MinGW32 version tonight
hopefully.
Thanks for all your help Camm; I am feeling very, very pleased.
Mike Thomas.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Gcl-devel] WINDOWS -O3 OK - check FIND_INIT and fasload(),
Mike Thomas <=