diff options
-rw-r--r-- | utils/TableGen/CodeGenTarget.cpp | 3 | ||||
-rw-r--r-- | utils/TableGen/RegisterInfoEmitter.cpp | 2 |
2 files changed, 3 insertions, 2 deletions
diff --git a/utils/TableGen/CodeGenTarget.cpp b/utils/TableGen/CodeGenTarget.cpp index 49fd772d2e..b9c7f5172c 100644 --- a/utils/TableGen/CodeGenTarget.cpp +++ b/utils/TableGen/CodeGenTarget.cpp @@ -133,7 +133,8 @@ void CodeGenTarget::ReadRegisterClasses() const { CodeGenRegisterClass::CodeGenRegisterClass(Record *R) : TheDef(R) { SpillSize = R->getValueAsInt("Size"); - SpillAlignment = R->getValueAsInt("Alignment"); + // FIXME: should convert to bits in all targets. + SpillAlignment = R->getValueAsInt("Alignment")*8; if (CodeInit *CI = dynamic_cast<CodeInit*>(R->getValueInit("Methods"))) MethodDefinitions = CI->getValue(); diff --git a/utils/TableGen/RegisterInfoEmitter.cpp b/utils/TableGen/RegisterInfoEmitter.cpp index 682404ea14..ef79c35017 100644 --- a/utils/TableGen/RegisterInfoEmitter.cpp +++ b/utils/TableGen/RegisterInfoEmitter.cpp @@ -128,7 +128,7 @@ void RegisterInfoEmitter::run(std::ostream &OS) { OS << " struct " << Name << "Class : public TargetRegisterClass {\n" << " " << Name << "Class() : TargetRegisterClass(" - << RC.SpillSize/8 << ", " << RC.SpillAlignment << ", " << Name << ", " + << RC.SpillSize/8 << ", " << RC.SpillAlignment/8 << ", " << Name << ", " << Name << " + " << RC.Elements.size() << ") {}\n" << RC.MethodDefinitions << " } " << Name << "Instance;\n\n"; } |