aboutsummaryrefslogtreecommitdiffstats
path: root/include/llvm/CodeGen/SelectionDAG.h
diff options
context:
space:
mode:
authorEvan Cheng <evan.cheng@apple.com>2005-12-09 22:48:48 +0000
committerEvan Cheng <evan.cheng@apple.com>2005-12-09 22:48:48 +0000
commitab24ed2a322ec0c8be04ec684c75bc73faa1d346 (patch)
tree2b03d010fa3f5672ae7a24b638d26546464a50b6 /include/llvm/CodeGen/SelectionDAG.h
parentb915f3110d74823e7b56d2c9cc4b83439bbedebc (diff)
downloadexternal_llvm-ab24ed2a322ec0c8be04ec684c75bc73faa1d346.zip
external_llvm-ab24ed2a322ec0c8be04ec684c75bc73faa1d346.tar.gz
external_llvm-ab24ed2a322ec0c8be04ec684c75bc73faa1d346.tar.bz2
Added patterns for ADD8rm, etc. These fold load operands. e.g. addb 4(%esp), %al
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24648 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/CodeGen/SelectionDAG.h')
-rw-r--r--include/llvm/CodeGen/SelectionDAG.h16
1 files changed, 16 insertions, 0 deletions
diff --git a/include/llvm/CodeGen/SelectionDAG.h b/include/llvm/CodeGen/SelectionDAG.h
index f19f148..63cf7b2 100644
--- a/include/llvm/CodeGen/SelectionDAG.h
+++ b/include/llvm/CodeGen/SelectionDAG.h
@@ -394,6 +394,22 @@ public:
Ops.push_back(Op5);
return getNode(ISD::BUILTIN_OP_END+Opcode, ResultTys, Ops);
}
+ SDOperand getTargetNode(unsigned Opcode, MVT::ValueType VT1,
+ MVT::ValueType VT2, SDOperand Op1, SDOperand Op2,
+ SDOperand Op3, SDOperand Op4, SDOperand Op5,
+ SDOperand Op6) {
+ std::vector<MVT::ValueType> ResultTys;
+ ResultTys.push_back(VT1);
+ ResultTys.push_back(VT2);
+ std::vector<SDOperand> Ops;
+ Ops.push_back(Op1);
+ Ops.push_back(Op2);
+ Ops.push_back(Op3);
+ Ops.push_back(Op4);
+ Ops.push_back(Op5);
+ Ops.push_back(Op6);
+ return getNode(ISD::BUILTIN_OP_END+Opcode, ResultTys, Ops);
+ }
SDOperand getTargetNode(unsigned Opcode, MVT::ValueType VT1,
MVT::ValueType VT2, std::vector<SDOperand> &Ops) {
std::vector<MVT::ValueType> ResultTys;