[Date Prev][Date Next][Thread Prev][Thread Next]
[Date Index]
[Thread Index]
- Subject: Re: LuaJIT with vectors
- From: Roberto Ierusalimschy <roberto@...>
- Date: Thu, 18 Nov 2010 17:04:23 -0200
> Check -fno-crossjumping in the GCC manual. But I think there are
> quite a few rants from Anton Ertl about how every new GCC release
> messed up the code of his carefully crafted interpreters ...
I guess Anton is right. -fno-crossjumping did not help. Everything
in the tail code is kept separated for each case, except for the
final "jmp *%eax" (this is the same result as with -O0). The sequence
...
movl %edi, %eax
andl $63, %eax
movl disptab.6158(,%eax,4), %eax
jmp .L462
is repeated 40 times in the code, but all end in the same L462, that do
the final jump:
.L462:
jmp *%eax
(This is gcc version 4.4.3.)
-- Roberto