------- Comment #7 from rearnsha at gcc dot gnu dot org  2009-10-19 15:50 
-------
(In reply to comment #6)
> You should not depend on NOTE_INSN_SWITCH_TEXT_SECTIONS. There are other ways
> to see if a jump goes from one section to another: edge->flags & EDGE_CROSSING
> (preferred), and REG_CROSSING_JUMP notes (more reliable in post-pass_free_cfg
> world).
> 
> There is no hook to disable the hot-cold partitioning pass right now. For 
> thumb
> mode, the ARM back end should just set flag_reorder_blocks_and_partition = 0,
> like Xtensa and MIPS (for MIPS16 mode) already do, for similar reasons.
> 
Indeed.  In fact even for ARM state, we can only support this option if both
the insn-address code correctly separates hot and cold addresses (and I suspect
it doesn't) and the literal-pool extraction code correctly extracts the above
information (which it certainly doesn't).

So at present we have no choice but to disable this optimization for all ARM
configurations.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39247

Reply via email to