[llvm-commits] [llvm] r107114 - /llvm/trunk/lib/Target/ARM/ARMLoadStoreOptimizer.cpp

Dale Johannesen dalej at apple.com
Fri Jul 2 19:46:24 PDT 2010


On Jul 2, 2010, at 5:54 PM, Evan Cheng wrote:

> I've looked into this. The main issue is when the register allocator  
> folded reloads from fixed slots the loads ended up with alignment 1.  
> That's because by default all fixed slots have alignment of 1. This  
> is overly conservative. DAG combiner will infer the correct  
> alignments from stack pointer alignments and frame offset. But at  
> register allocation time we are simply taking the frame object's  
> alignments.
>
> I think the right fix is to make sure the fixed objects have the  
> inferred alignments when they are created. Does anyone see a problem  
> with that?

Seems right in theory.  I bet doing this will expose bugs elsewhere,  
though.




More information about the llvm-commits mailing list