From 243ded5e1aef894746e50f5dddfe843a31ef2396 Mon Sep 17 00:00:00 2001 From: Misha Brukman Date: Thu, 14 Oct 2004 05:50:43 +0000 Subject: [PATCH] * Add option to read isLittleEndianEncoding for InstrInfo classes * Doxygen-ify some function comments llvm-svn: 16974 --- llvm/utils/TableGen/CodeGenTarget.cpp | 9 +++++++++ llvm/utils/TableGen/CodeGenTarget.h | 4 ++++ 2 files changed, 13 insertions(+) diff --git a/llvm/utils/TableGen/CodeGenTarget.cpp b/llvm/utils/TableGen/CodeGenTarget.cpp index 4c882ad55574..3680f197c491 100644 --- a/llvm/utils/TableGen/CodeGenTarget.cpp +++ b/llvm/utils/TableGen/CodeGenTarget.cpp @@ -188,6 +188,7 @@ void CodeGenTarget::ReadInstructions() const { } /// getPHIInstruction - Return the designated PHI instruction. +/// const CodeGenInstruction &CodeGenTarget::getPHIInstruction() const { Record *PHI = getInstructionSet()->getValueAsDef("PHIInst"); std::map::const_iterator I = @@ -197,6 +198,13 @@ const CodeGenInstruction &CodeGenTarget::getPHIInstruction() const { return I->second; } +/// isLittleEndianEncoding - Return whether this target encodes its instruction +/// in little-endian format, i.e. bits laid out in the order [0..n] +/// +bool CodeGenTarget::isLittleEndianEncoding() const { + return getInstructionSet()->getValueAsBit("isLittleEndianEncoding"); +} + CodeGenInstruction::CodeGenInstruction(Record *R, const std::string &AsmStr) : TheDef(R), AsmString(AsmStr) { Name = R->getValueAsString("Name"); @@ -250,6 +258,7 @@ CodeGenInstruction::CodeGenInstruction(Record *R, const std::string &AsmStr) /// getOperandNamed - Return the index of the operand with the specified /// non-empty name. If the instruction does not have an operand with the /// specified name, throw an exception. +/// unsigned CodeGenInstruction::getOperandNamed(const std::string &Name) const { assert(!Name.empty() && "Cannot search for operand with no name!"); for (unsigned i = 0, e = OperandList.size(); i != e; ++i) diff --git a/llvm/utils/TableGen/CodeGenTarget.h b/llvm/utils/TableGen/CodeGenTarget.h index 9b338d88c9fe..d74e8872a3ed 100644 --- a/llvm/utils/TableGen/CodeGenTarget.h +++ b/llvm/utils/TableGen/CodeGenTarget.h @@ -96,6 +96,10 @@ public: /// getPHIInstruction - Return the designated PHI instruction. /// const CodeGenInstruction &getPHIInstruction() const; + + /// isLittleEndianEncoding - are instruction bit patterns defined as [0..n]? + /// + bool isLittleEndianEncoding() const; }; } // End llvm namespace