summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNate Begeman <natebegeman@mac.com>2004-09-28 21:01:45 +0000
committerNate Begeman <natebegeman@mac.com>2004-09-28 21:01:45 +0000
commitcdd66b524f62ef6acd6bfa4e586edf8a406c4928 (patch)
treecb828c35e8a197955f69fee8c438f5443414cd44
parent5b71d3af35f941585acb50de4909cff20f68680d (diff)
downloadllvm-cdd66b524f62ef6acd6bfa4e586edf8a406c4928.tar.gz
llvm-cdd66b524f62ef6acd6bfa4e586edf8a406c4928.tar.bz2
llvm-cdd66b524f62ef6acd6bfa4e586edf8a406c4928.tar.xz
Add support for the isLoad and isStore flags, needed by the instruction scheduler
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16554 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--utils/TableGen/CodeGenInstruction.h2
-rw-r--r--utils/TableGen/CodeGenTarget.cpp2
-rw-r--r--utils/TableGen/InstrInfoEmitter.cpp2
3 files changed, 6 insertions, 0 deletions
diff --git a/utils/TableGen/CodeGenInstruction.h b/utils/TableGen/CodeGenInstruction.h
index 8551a55308..82df28ae2d 100644
--- a/utils/TableGen/CodeGenInstruction.h
+++ b/utils/TableGen/CodeGenInstruction.h
@@ -71,6 +71,8 @@ namespace llvm {
bool isBranch;
bool isBarrier;
bool isCall;
+ bool isLoad;
+ bool isStore;
bool isTwoAddress;
bool isTerminator;
bool hasDelaySlot;
diff --git a/utils/TableGen/CodeGenTarget.cpp b/utils/TableGen/CodeGenTarget.cpp
index ba214051cd..f7225f081d 100644
--- a/utils/TableGen/CodeGenTarget.cpp
+++ b/utils/TableGen/CodeGenTarget.cpp
@@ -195,6 +195,8 @@ CodeGenInstruction::CodeGenInstruction(Record *R, const std::string &AsmStr)
isBranch = R->getValueAsBit("isBranch");
isBarrier = R->getValueAsBit("isBarrier");
isCall = R->getValueAsBit("isCall");
+ isLoad = R->getValueAsBit("isLoad");
+ isStore = R->getValueAsBit("isStore");
isTwoAddress = R->getValueAsBit("isTwoAddress");
isTerminator = R->getValueAsBit("isTerminator");
hasDelaySlot = R->getValueAsBit("hasDelaySlot");
diff --git a/utils/TableGen/InstrInfoEmitter.cpp b/utils/TableGen/InstrInfoEmitter.cpp
index c02eda13c5..69570bcdf4 100644
--- a/utils/TableGen/InstrInfoEmitter.cpp
+++ b/utils/TableGen/InstrInfoEmitter.cpp
@@ -113,6 +113,8 @@ void InstrInfoEmitter::emitRecord(const CodeGenInstruction &Inst, unsigned Num,
if (Inst.isBarrier) OS << "|M_BARRIER_FLAG";
if (Inst.hasDelaySlot) OS << "|M_DELAY_SLOT_FLAG";
if (Inst.isCall) OS << "|M_CALL_FLAG";
+ if (Inst.isLoad) OS << "|M_LOAD_FLAG";
+ if (Inst.isStore) OS << "|M_STORE_FLAG";
if (Inst.isTwoAddress) OS << "|M_2_ADDR_FLAG";
if (Inst.isTerminator) OS << "|M_TERMINATOR_FLAG";
OS << ", 0";