mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-06-19 03:24:09 +00:00
Reverting r237234, "Use std::bitset for SubtargetFeatures"
The buildbots are still not satisfied. MIPS and ARM are failing (even though at least MIPS was expected to pass). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@237245 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@ -848,7 +848,7 @@ emitPredicateFunction(formatted_raw_ostream &OS, PredicateSet &Predicates,
|
||||
// The predicate function is just a big switch statement based on the
|
||||
// input predicate index.
|
||||
OS.indent(Indentation) << "static bool checkDecoderPredicate(unsigned Idx, "
|
||||
<< "const FeatureBitset& Bits) {\n";
|
||||
<< "uint64_t Bits) {\n";
|
||||
Indentation += 2;
|
||||
if (!Predicates.empty()) {
|
||||
OS.indent(Indentation) << "switch (Idx) {\n";
|
||||
@ -1102,10 +1102,10 @@ unsigned FilterChooser::getDecoderIndex(DecoderSet &Decoders,
|
||||
static void emitSinglePredicateMatch(raw_ostream &o, StringRef str,
|
||||
const std::string &PredicateNamespace) {
|
||||
if (str[0] == '!')
|
||||
o << "!Bits[" << PredicateNamespace << "::"
|
||||
<< str.slice(1,str.size()) << "]";
|
||||
o << "!(Bits & " << PredicateNamespace << "::"
|
||||
<< str.slice(1,str.size()) << ")";
|
||||
else
|
||||
o << "Bits[" << PredicateNamespace << "::" << str << "]";
|
||||
o << "(Bits & " << PredicateNamespace << "::" << str << ")";
|
||||
}
|
||||
|
||||
bool FilterChooser::emitPredicateMatch(raw_ostream &o, unsigned &Indentation,
|
||||
@ -2012,7 +2012,7 @@ static void emitDecodeInstruction(formatted_raw_ostream &OS) {
|
||||
<< " InsnType insn, uint64_t Address,\n"
|
||||
<< " const void *DisAsm,\n"
|
||||
<< " const MCSubtargetInfo &STI) {\n"
|
||||
<< " const FeatureBitset& Bits = STI.getFeatureBits();\n"
|
||||
<< " uint64_t Bits = STI.getFeatureBits();\n"
|
||||
<< "\n"
|
||||
<< " const uint8_t *Ptr = DecodeTable;\n"
|
||||
<< " uint32_t CurFieldValue = 0;\n"
|
||||
|
Reference in New Issue
Block a user