diff options
| author | Nate Begeman <natebegeman@mac.com> | 2009-04-27 18:41:29 +0000 |
|---|---|---|
| committer | Nate Begeman <natebegeman@mac.com> | 2009-04-27 18:41:29 +0000 |
| commit | 8d6d4b9289f507553925f24071db83fe044fb5cd (patch) | |
| tree | 29e7a1387eab1209ab9fb5db9459b4d8b948876f /llvm/utils/TableGen/CodeGenDAGPatterns.h | |
| parent | 5fbe183ce0ee3ddd5d9e8d41fc5f96efba0a6caf (diff) | |
| download | bcm5719-llvm-8d6d4b9289f507553925f24071db83fe044fb5cd.tar.gz bcm5719-llvm-8d6d4b9289f507553925f24071db83fe044fb5cd.zip | |
2nd attempt, fixing SSE4.1 issues and implementing feedback from duncan.
PR2957
ISD::VECTOR_SHUFFLE now stores an array of integers representing the shuffle
mask internal to the node, rather than taking a BUILD_VECTOR of ConstantSDNodes
as the shuffle mask. A value of -1 represents UNDEF.
In addition to eliminating the creation of illegal BUILD_VECTORS just to
represent shuffle masks, we are better about canonicalizing the shuffle mask,
resulting in substantially better code for some classes of shuffles.
llvm-svn: 70225
Diffstat (limited to 'llvm/utils/TableGen/CodeGenDAGPatterns.h')
| -rw-r--r-- | llvm/utils/TableGen/CodeGenDAGPatterns.h | 6 |
1 files changed, 1 insertions, 5 deletions
diff --git a/llvm/utils/TableGen/CodeGenDAGPatterns.h b/llvm/utils/TableGen/CodeGenDAGPatterns.h index f1b0d37605b..9ce14dcc7b3 100644 --- a/llvm/utils/TableGen/CodeGenDAGPatterns.h +++ b/llvm/utils/TableGen/CodeGenDAGPatterns.h @@ -62,8 +62,7 @@ struct SDTypeConstraint { unsigned OperandNo; // The operand # this constraint applies to. enum { SDTCisVT, SDTCisPtrTy, SDTCisInt, SDTCisFP, SDTCisSameAs, - SDTCisVTSmallerThanOp, SDTCisOpSmallerThanOp, SDTCisIntVectorOfSameSize, - SDTCisEltOfVec + SDTCisVTSmallerThanOp, SDTCisOpSmallerThanOp, SDTCisEltOfVec } ConstraintType; union { // The discriminated union. @@ -81,9 +80,6 @@ struct SDTypeConstraint { } SDTCisOpSmallerThanOp_Info; struct { unsigned OtherOperandNum; - } SDTCisIntVectorOfSameSize_Info; - struct { - unsigned OtherOperandNum; } SDTCisEltOfVec_Info; } x; |

