diff options
author | Chris Lattner <sabre@nondot.org> | 2005-03-28 22:03:13 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2005-03-28 22:03:13 +0000 |
commit | d4e50bb2e23b8f9ddde629a28dab3bcdaf0633e4 (patch) | |
tree | bf3469dc276964215b209f7f511c26a4894f046a | |
parent | 7f4ec3b2e3157e6a0798f3e95a3961bfa6ef66b6 (diff) |
implement legalization of build_pair for nate
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20901 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | lib/CodeGen/SelectionDAG/LegalizeDAG.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp b/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp index 215cf78c5b..576232540e 100644 --- a/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp +++ b/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp @@ -1590,6 +1590,14 @@ void SelectionDAGLegalize::ExpandOp(SDOperand Op, SDOperand &Lo, SDOperand &Hi){ break; } + case ISD::BUILD_PAIR: + // Legalize both operands. FIXME: in the future we should handle the case + // where the two elements are not legal. + assert(isTypeLegal(NVT) && "Cannot expand this multiple times yet!"); + Lo = LegalizeOp(Node->getOperand(0)); + Hi = LegalizeOp(Node->getOperand(1)); + break; + case ISD::LOAD: { SDOperand Ch = LegalizeOp(Node->getOperand(0)); // Legalize the chain. SDOperand Ptr = LegalizeOp(Node->getOperand(1)); // Legalize the pointer. |