Daniel Diniz <aja...@gmail.com> added the comment: Paolo 'Blaisorblade' Giarrusso wrote: > > 1st note: is that code from the threaded version? [...] It is vital to > this patch that the jump is not shared, something similar to > -fno-crossjumping should be found.
Yes, threaded version by unconditionally defining USE_THREADED_CODE (old patch version :). Ok, I'll try to find a way to get at -fno-crossjumping behavior. BTW, man gcc suggests using -fno-gcse for programs that use computed gotos (couldn't fin [...] > In the code you posted, one can see that the program > counter is spilled to memory by GCC, but isn't by ICC. Either the spill > is elsewhere, or ICC is better here. I can [mail you|attach here] icc's output if you want to check the overall code, it's about 1.9M with the code annotations. > Finally, I'm a bit surprised by "addl $1, %ecx", since any peephole > optimizer should remove that; I'm not shocked just because I've never > seen perfect GCC output. I'm glad to see the same issue in Alexandre's output, not my fault then :D The command line I used (after a clean build with gcc) was: icc -pthread -c -fno-strict-aliasing -DNDEBUG -g -fwrapv -O3 -w -I. -IInclude -I./Include -DPy_BUILD_CORE -S -fcode-asm -fsource-asm -dA Python/ceval.c (same as with gcc, except for warnings and -fcode-asm -fsource-asm). _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue4753> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com