[llvm-commits] [llvm] r92181 - in /llvm/trunk: include/llvm/Support/Compiler.h lib/Target/ARM/AsmParser/ARMAsmParser.cpp

Bill Wendling isanbard at gmail.com
Sun Dec 27 17:20:29 PST 2009


Author: void
Date: Sun Dec 27 19:20:29 2009
New Revision: 92181

URL: http://llvm.org/viewvc/llvm-project?rev=92181&view=rev
Log:
Add an "ATTRIBUTE_UNUSED" macro (and use it). It's for variables which are
mainly used in debugging and/or assert situations. It should make the compiler
and the static analyzer stop nagging us about them.

Modified:
    llvm/trunk/include/llvm/Support/Compiler.h
    llvm/trunk/lib/Target/ARM/AsmParser/ARMAsmParser.cpp

Modified: llvm/trunk/include/llvm/Support/Compiler.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/Support/Compiler.h?rev=92181&r1=92180&r2=92181&view=diff

==============================================================================
--- llvm/trunk/include/llvm/Support/Compiler.h (original)
+++ llvm/trunk/include/llvm/Support/Compiler.h Sun Dec 27 19:20:29 2009
@@ -29,6 +29,12 @@
 #define ATTRIBUTE_USED
 #endif
 
+#if (__GNUC__ >= 4 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 1))
+#define ATTRIBUTE_UNUSED __attribute__((__unused__))
+#else
+#define ATTRIBUTE_UNUSED
+#endif
+
 #ifdef __GNUC__ // aka 'ATTRIBUTE_CONST' but following LLVM Conventions.
 #define ATTRIBUTE_READNONE __attribute__((__const__))
 #else

Modified: llvm/trunk/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/ARM/AsmParser/ARMAsmParser.cpp?rev=92181&r1=92180&r2=92181&view=diff

==============================================================================
--- llvm/trunk/lib/Target/ARM/AsmParser/ARMAsmParser.cpp (original)
+++ llvm/trunk/lib/Target/ARM/AsmParser/ARMAsmParser.cpp Sun Dec 27 19:20:29 2009
@@ -15,6 +15,7 @@
 #include "llvm/MC/MCStreamer.h"
 #include "llvm/MC/MCExpr.h"
 #include "llvm/MC/MCInst.h"
+#include "llvm/Support/Compiler.h"
 #include "llvm/Support/SourceMgr.h"
 #include "llvm/Target/TargetRegistry.h"
 #include "llvm/Target/TargetAsmParser.h"
@@ -666,7 +667,7 @@
   const AsmToken &Tok = getLexer().getTok();
   if (Tok.isNot(AsmToken::Identifier) && Tok.isNot(AsmToken::String))
     return Error(L, "unexpected token in .syntax directive");
-  StringRef SymbolName = getLexer().getTok().getIdentifier();
+  StringRef ATTRIBUTE_UNUSED SymbolName = getLexer().getTok().getIdentifier();
   getLexer().Lex(); // Consume the identifier token.
 
   if (getLexer().isNot(AsmToken::EndOfStatement))





More information about the llvm-commits mailing list