diff options
author | Duncan Sands <baldrick@free.fr> | 2008-02-20 17:38:09 +0000 |
---|---|---|
committer | Duncan Sands <baldrick@free.fr> | 2008-02-20 17:38:09 +0000 |
commit | f83b1f63ddf27aaba791393940f37709ebbda33b (patch) | |
tree | eb1afeab9425b383c511324b79f3186c4472ea46 /lib/CodeGen/SelectionDAG/LegalizeTypes.h | |
parent | 91dc17ba4991e971c7e89e07642b10817aa28055 (diff) |
LegalizeTypes support for scalarizing a vector store
and splitting extract_subvector. This fixes nine
"make check" testcases, for example
2008-02-04-ExtractSubvector.ll and (partially)
CodeGen/Generic/vector.ll.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47384 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/SelectionDAG/LegalizeTypes.h')
-rw-r--r-- | lib/CodeGen/SelectionDAG/LegalizeTypes.h | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/lib/CodeGen/SelectionDAG/LegalizeTypes.h b/lib/CodeGen/SelectionDAG/LegalizeTypes.h index acae44b2ac..3ebc211058 100644 --- a/lib/CodeGen/SelectionDAG/LegalizeTypes.h +++ b/lib/CodeGen/SelectionDAG/LegalizeTypes.h @@ -275,7 +275,8 @@ private: // Operand Vector Scalarization: <1 x ty> -> ty. bool ScalarizeOperand(SDNode *N, unsigned OpNo); - SDOperand ScalarizeOp_EXTRACT_VECTOR_ELT(SDNode *N, unsigned OpNo); + SDOperand ScalarizeOp_EXTRACT_VECTOR_ELT(SDNode *N); + SDOperand ScalarizeOp_STORE(StoreSDNode *N, unsigned OpNo); //===--------------------------------------------------------------------===// // Vector Splitting Support: LegalizeTypesSplit.cpp @@ -303,9 +304,10 @@ private: // Operand Vector Scalarization: <128 x ty> -> 2 x <64 x ty>. bool SplitOperand(SDNode *N, unsigned OpNo); - - SDOperand SplitOp_STORE(StoreSDNode *N, unsigned OpNo); + + SDOperand SplitOp_EXTRACT_SUBVECTOR(SDNode *N); SDOperand SplitOp_RET(SDNode *N, unsigned OpNo); + SDOperand SplitOp_STORE(StoreSDNode *N, unsigned OpNo); }; } // end namespace llvm. |