Ramana Radhakrishnan <ramana.radhakrish...@linaro.org> writes:
> While the ARM backend doesn't support hot cold partitioning of basic blocks
> because of issues with the mini-pool placements, I suspect
> this by itself is a good cleanup. The bits of the use that I'm not
> convinced about
> yet are the changes of optimize_size in thumb_legitimize_address
> to optimize_insn_for_size_p and I'm looking for some comments there.

I'm not sure it's correct for the define_insns either.  I think it can
only be called during passes that produce new code, and which explicitly
set the global state appropriately (e.g. expand, split and peephole2).
I might be wrong, but as things stand, I don't think you can guarantee
that the global state describes the insn under test every time that
recog is called.

For existing insns, I think optimize_bb_for_speed_p (BLOCK_FOR_INSN (insn))
is the canonical check.

Richard

Reply via email to