summaryrefslogtreecommitdiff
path: root/utils/TableGen/SubtargetEmitter.cpp
diff options
context:
space:
mode:
authorEvan Cheng <evan.cheng@apple.com>2006-01-27 08:09:42 +0000
committerEvan Cheng <evan.cheng@apple.com>2006-01-27 08:09:42 +0000
commit19c95507443ebd4f1cee80917d540c8bd27f8fe1 (patch)
tree5328c6936fc5b707a189ad2a743da53bdc5d746b /utils/TableGen/SubtargetEmitter.cpp
parent0cfcc1e8072af7f3d92bbcdba48da551cccd90be (diff)
downloadllvm-19c95507443ebd4f1cee80917d540c8bd27f8fe1.tar.gz
llvm-19c95507443ebd4f1cee80917d540c8bd27f8fe1.tar.bz2
llvm-19c95507443ebd4f1cee80917d540c8bd27f8fe1.tar.xz
Subtarget feature can now set any variable to any value
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25678 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'utils/TableGen/SubtargetEmitter.cpp')
-rw-r--r--utils/TableGen/SubtargetEmitter.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/utils/TableGen/SubtargetEmitter.cpp b/utils/TableGen/SubtargetEmitter.cpp
index a6cee216da..091cbc679b 100644
--- a/utils/TableGen/SubtargetEmitter.cpp
+++ b/utils/TableGen/SubtargetEmitter.cpp
@@ -473,10 +473,11 @@ void SubtargetEmitter::ParseFeaturesFunction(std::ostream &OS) {
Record *R = Features[i];
std::string Instance = R->getName();
std::string Name = R->getValueAsString("Name");
- std::string Type = R->getValueAsString("Type");
+ std::string Value = R->getValueAsString("Value");
std::string Attribute = R->getValueAsString("Attribute");
-
- OS << " " << Attribute << " = (Bits & " << Instance << ") != 0;\n";
+
+ OS << " if ((Bits & " << Instance << ") != 0) "
+ << Attribute << " = " << Value << ";\n";
}
if (HasItineraries) {