[llvm-commits] [Review] Preparing for non-power-of-2 machine value types in X86ISelLowering and LegalizeDAG

Ken Dyck Ken.Dyck at onsemi.com
Thu Dec 17 08:07:45 PST 2009


On Thursday, December 17, 2009 3:04 AM, Chris Lattner wrote:
> 
> On Dec 16, 2009, at 7:33 AM, Ken Dyck wrote:
> 
> > The attached patches prepare for the introduction of non-power-of-2 
> > machine value types (as recently discussed [1]). They contain no 
> > functional changes. They merely eliminate assumptions that 
> > incrementing/decrementing a SimpleValueType doubles/halves its size 
> > and that all non-power-of-2 types are extended.
> 
> The change in LowerEXTRACT_VECTOR_ELT can be simplified: just 
> force i32 there, that is the only valid valuetype for PEXTRW.

Okay. Committed as 91602.

> The legalize change looks reasonable to me, but please change 
> the for loop to be a while loop (I think it will be clearer) 
> and make it be a method on EVT instead of inline in the legalizer.

In moving it to EVT, the knowledge that the source type is simple is
lost and the loop boundaries change. So a for loop seems to make more
sense now. What do you think of the attached updated patch?

-Ken
-------------- next part --------------
A non-text attachment was scrubbed...
Name: non-po2.LegalizeDAG.diff
Type: application/octet-stream
Size: 3044 bytes
Desc: non-po2.LegalizeDAG.diff
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20091217/6208f196/attachment.obj>


More information about the llvm-commits mailing list