Slowdowns in code generated by GCC>=3.3

Pablo Mejia pjm@cctechnol.com
Tue Oct 26 22:44:00 GMT 2004


    Steven> Now, the problem is that gcse and crossjumping may move
    Steven> code in the block with the factored computed jump, so when
    Steven> we later try to undo the factoring, we think it is too
    Steven> expensive to do that.  We end up with lots and lots of
    Steven> jumps to a single computed jump that is very difficult to
    Steven> predict.

I just lurk on this list, so feel free to ignore this comment...

Perhaps it would be possible to mark the block with the factored
computed jump in some way.  Any pass which tries to do code motion, or
other problematic optimizations, could check that note and inhibit
code motion into the block.  That would preserve the block with the
factored computed jump so it can be un-factored later.  Perhaps then
it wouldn't be necessary to disable gcse in functions with computed
jumps.

Pablo



More information about the Gcc mailing list