-ftracer problem
duchier at ps.uni-sb.de
duchier at ps.uni-sb.de
Tue Nov 25 14:54:40 CET 2003
Kevin,
thanks a lot for spotting the triggering option for this problem. The
root of the issue is that we have asm statements that define non-local
asm labels. That's simply not supported by GCC. GCC doesn't know
about them and performs optimizations which do not take them into
account. -ftracer performs code duplication which causes us grief when
the duplicated code happens to contain asm labels since they are now
defined multiple times.
The first question that we should consider is: why do we have these
asm labels at all? At first sight, it seems to me that they used to
be related to some sort of instruction-level profiling.
Does anyone remember how this stuff was supposed to work? We should
either figure it out and clean it up, or remove it.
In any case, instead of disabling -ftracer we can supply
-DDISABLE_INSTRPROFILE which apeears to serve no other purpose than to
turn off this problematic asm label stuff.
Finally, we should of course benchmark it, but my expectation is that
-ftracer will actually hurt emulate.cc. GCC's optimizing heuristics
are simply not suited to the compilation of a threaded code emulator.
My guess is that we will end up turning it off when compiling
emulate.cc.
Cheers,
--
Denys Duchier - Équipe Calligramme - LORIA, Nancy, France
-
Please send submissions to hackers at mozart-oz.org
and administriva mail to hackers-request at mozart-oz.org.
The Mozart Oz web site is at http://www.mozart-oz.org/.
-
Please send submissions to hackers at mozart-oz.org
and administriva mail to hackers-request at mozart-oz.org.
The Mozart Oz web site is at http://www.mozart-oz.org/.
More information about the mozart-hackers
mailing list