[llvm-commits] [llvm] r85764 - in /llvm/trunk/lib/Target/ARM: ARM.td ARMBaseInstrInfo.cpp ARMBaseInstrInfo.h ARMInstrFormats.td ARMInstrInfo.cpp ARMInstrInfo.h Thumb1InstrInfo.cpp Thumb2InstrInfo.cpp

Chris Lattner clattner at apple.com
Sun Nov 1 23:30:52 PST 2009


On Nov 1, 2009, at 11:08 PM, Evan Cheng wrote:

>> Do we have any better way? It seems - no. We need to find the def of
>> the
>> register which is closest to the insertion point. Even if some
>> instruction
>> numbering would be saved after RA, then iterating of instructions
>> seems to
>> be cheaper than iterating over defs of the phys reg.
>
> This has to be done in a late pass which can walk basic blocks from
> top down and tracking the domain of every register. When it sees a
> fcpyd, it knows the domain of source register and can change it. The
> current implementation really is a non-starter, especially for JIT.

FWIW, I agree with Evan's approach.  This would also allow you to  
disable the pass in -fast mode etc.

-Chris



More information about the llvm-commits mailing list