[llvm-commits] [llvm] r53035 - in /llvm/trunk: include/llvm/CodeGen/SelectionDAG.h lib/CodeGen/SelectionDAG/LegalizeDAG.cpp lib/CodeGen/SelectionDAG/SelectionDAG.cpp lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp lib/Target/ARM/ARMISelLowering.cpp lib/Target/CellSPU/SPUISelLowering.cpp lib/Target/PowerPC/PPCISelLowering.cpp lib/Target/Sparc/SparcISelLowering.cpp lib/Target/X86/X86ISelLowering.cpp

Duncan Sands duncan.sands at math.u-psud.fr
Mon Jul 7 03:05:36 PDT 2008


Hi Mon Ping,

> I ran into the problem when I was playing with "widening*" vector  
> types.  It is something I haven't submitted a patch for so my test  
> case will not work for you at this point.   What problem do you think  
> will occur in LegalizeTypes? If you can let me know, I can do a quick  
> look into it.

in LegalizeTypes.cpp you can find DAGTypeLegalizer::CreateStackStoreLoad.
It seems to me that the created stack object should have the best alignment
of the two types, in order to avoid unaligned loads/stores.  I think the
right thing to do is to audit every use of CreateStackTemporary looking for
similar problems.

Ciao,

Duncan.



More information about the llvm-commits mailing list