From c95590bc45ba7b944fd64828ad06367e4fc4b884 Mon Sep 17 00:00:00 2001 From: Daniel Sanders Date: Sat, 19 Nov 2016 14:47:41 +0000 Subject: [PATCH] Try again to fix unused variable warning on lld-x86_64-darwin13 after r287439. The previous attempt didn't work. I assume LLVM_ATTRIBUTE_UNUSED isn't available on that machine. llvm-svn: 287442 --- llvm/lib/Target/BPF/MCTargetDesc/BPFMCCodeEmitter.cpp | 3 +-- llvm/utils/TableGen/CodeEmitterGen.cpp | 7 ++++++- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/llvm/lib/Target/BPF/MCTargetDesc/BPFMCCodeEmitter.cpp b/llvm/lib/Target/BPF/MCTargetDesc/BPFMCCodeEmitter.cpp index 91a457d..47f1651 100644 --- a/llvm/lib/Target/BPF/MCTargetDesc/BPFMCCodeEmitter.cpp +++ b/llvm/lib/Target/BPF/MCTargetDesc/BPFMCCodeEmitter.cpp @@ -20,7 +20,6 @@ #include "llvm/MC/MCSubtargetInfo.h" #include "llvm/MC/MCSymbol.h" #include "llvm/ADT/Statistic.h" -#include "llvm/Support/Compiler.h" #include "llvm/Support/EndianStream.h" #include "llvm/Support/raw_ostream.h" using namespace llvm; @@ -31,7 +30,7 @@ namespace { class BPFMCCodeEmitter : public MCCodeEmitter { BPFMCCodeEmitter(const BPFMCCodeEmitter &) = delete; void operator=(const BPFMCCodeEmitter &) = delete; - const MCInstrInfo &MCII LLVM_ATTRIBUTE_UNUSED; // Unused in NDEBUG builds. + const MCInstrInfo &MCII; const MCRegisterInfo &MRI; bool IsLittleEndian; diff --git a/llvm/utils/TableGen/CodeEmitterGen.cpp b/llvm/utils/TableGen/CodeEmitterGen.cpp index ef44757..9bcdebd 100644 --- a/llvm/utils/TableGen/CodeEmitterGen.cpp +++ b/llvm/utils/TableGen/CodeEmitterGen.cpp @@ -356,7 +356,8 @@ void CodeEmitterGen::run(raw_ostream &o) { << " RequiredFeatures[Inst.getOpcode()];\n" << " if (MissingFeatures) {\n" << " std::ostringstream Msg;\n" - << " Msg << \"Attempting to emit \" << MCII.getName(Inst.getOpcode()).str()\n" + << " Msg << \"Attempting to emit \" << " + "MCII.getName(Inst.getOpcode()).str()\n" << " << \" instruction but the \";\n" << " for (unsigned i = 0; i < 8 * sizeof(MissingFeatures); ++i)\n" << " if (MissingFeatures & (1ULL << i))\n" @@ -364,6 +365,10 @@ void CodeEmitterGen::run(raw_ostream &o) { << " Msg << \"predicate(s) are not met\";\n" << " report_fatal_error(Msg.str());\n" << " }\n" + << "#else\n" + << "// Silence unused variable warning on targets that don't use MCII for " + "other purposes (e.g. BPF).\n" + << "(void)MCII;\n" << "#endif // NDEBUG\n"; o << "}\n"; o << "#endif\n"; -- 2.7.4