diff options
author | Andrew Trick <atrick@apple.com> | 2011-09-20 18:22:31 +0000 |
---|---|---|
committer | Andrew Trick <atrick@apple.com> | 2011-09-20 18:22:31 +0000 |
commit | 83a8031336a1155e6b0c3e9a84164324e08d1c8b (patch) | |
tree | cfefdf37afe51d34e6b53f9581dbe129f5f74606 /utils/TableGen/InstrInfoEmitter.cpp | |
parent | f83f0f8246457bf7951bc95dd74ec67cf524b845 (diff) | |
download | external_llvm-83a8031336a1155e6b0c3e9a84164324e08d1c8b.zip external_llvm-83a8031336a1155e6b0c3e9a84164324e08d1c8b.tar.gz external_llvm-83a8031336a1155e6b0c3e9a84164324e08d1c8b.tar.bz2 |
Restore hasPostISelHook tblgen flag.
No functionality change. The hook makes it explicit which patterns
require "special" handling. i.e. it self-documents tblgen
deficiencies. I plan to add verification in ExpandISelPseudos and
Thumb2SizeReduce to catch any missing hasPostISelHooks. Otherwise it's
too fragile.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@140160 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'utils/TableGen/InstrInfoEmitter.cpp')
-rw-r--r-- | utils/TableGen/InstrInfoEmitter.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/utils/TableGen/InstrInfoEmitter.cpp b/utils/TableGen/InstrInfoEmitter.cpp index e4c7ee0..1cf7c90 100644 --- a/utils/TableGen/InstrInfoEmitter.cpp +++ b/utils/TableGen/InstrInfoEmitter.cpp @@ -288,6 +288,7 @@ void InstrInfoEmitter::emitRecord(const CodeGenInstruction &Inst, unsigned Num, if (Inst.isNotDuplicable) OS << "|(1<<MCID::NotDuplicable)"; if (Inst.Operands.hasOptionalDef) OS << "|(1<<MCID::HasOptionalDef)"; if (Inst.usesCustomInserter) OS << "|(1<<MCID::UsesCustomInserter)"; + if (Inst.hasPostISelHook) OS << "|(1<<MCID::HasPostISelHook)"; if (Inst.Operands.isVariadic)OS << "|(1<<MCID::Variadic)"; if (Inst.hasSideEffects) OS << "|(1<<MCID::UnmodeledSideEffects)"; if (Inst.isAsCheapAsAMove) OS << "|(1<<MCID::CheapAsAMove)"; @@ -344,7 +345,7 @@ void InstrInfoEmitter::emitEnums(raw_ostream &OS) { // We must emit the PHI opcode first... std::string Namespace = Target.getInstNamespace(); - + if (Namespace.empty()) { fprintf(stderr, "No instructions defined!\n"); exit(1); |