[llvm] r210120 - Simplify the parsing of unnamed globals. No functionality changed.

Rafael Espindola rafael.espindola at gmail.com
Tue Jun 3 13:00:20 PDT 2014


Author: rafael
Date: Tue Jun  3 15:00:20 2014
New Revision: 210120

URL: http://llvm.org/viewvc/llvm-project?rev=210120&view=rev
Log:
Simplify the parsing of unnamed globals. No functionality changed.

Modified:
    llvm/trunk/lib/AsmParser/LLParser.cpp

Modified: llvm/trunk/lib/AsmParser/LLParser.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/AsmParser/LLParser.cpp?rev=210120&r1=210119&r2=210120&view=diff
==============================================================================
--- llvm/trunk/lib/AsmParser/LLParser.cpp (original)
+++ llvm/trunk/lib/AsmParser/LLParser.cpp Tue Jun  3 15:00:20 2014
@@ -257,45 +257,26 @@ bool LLParser::ParseTopLevelEntities() {
     case lltok::kw_appending:           // OptionalLinkage
     case lltok::kw_common:              // OptionalLinkage
     case lltok::kw_extern_weak:         // OptionalLinkage
-    case lltok::kw_external: {          // OptionalLinkage
+    case lltok::kw_external:            // OptionalLinkage
+    case lltok::kw_default:             // OptionalVisibility
+    case lltok::kw_hidden:              // OptionalVisibility
+    case lltok::kw_protected:           // OptionalVisibility
+    case lltok::kw_thread_local:        // OptionalThreadLocal
+    case lltok::kw_addrspace:           // OptionalAddrSpace
+    case lltok::kw_constant:            // GlobalType
+    case lltok::kw_global: {            // GlobalType
       unsigned Linkage, Visibility, DLLStorageClass;
       GlobalVariable::ThreadLocalMode TLM;
-      if (ParseOptionalLinkage(Linkage) ||
+      bool HasLinkage;
+      if (ParseOptionalLinkage(Linkage, HasLinkage) ||
           ParseOptionalVisibility(Visibility) ||
           ParseOptionalDLLStorageClass(DLLStorageClass) ||
           ParseOptionalThreadLocal(TLM) ||
-          ParseGlobal("", SMLoc(), Linkage, true, Visibility, DLLStorageClass,
-                      TLM))
+          ParseGlobal("", SMLoc(), Linkage, HasLinkage, Visibility,
+                      DLLStorageClass, TLM))
         return true;
       break;
     }
-    case lltok::kw_default:       // OptionalVisibility
-    case lltok::kw_hidden:        // OptionalVisibility
-    case lltok::kw_protected: {   // OptionalVisibility
-      unsigned Visibility, DLLStorageClass;
-      GlobalVariable::ThreadLocalMode TLM;
-      if (ParseOptionalVisibility(Visibility) ||
-          ParseOptionalDLLStorageClass(DLLStorageClass) ||
-          ParseOptionalThreadLocal(TLM) ||
-          ParseGlobal("", SMLoc(), 0, false, Visibility, DLLStorageClass, TLM))
-        return true;
-      break;
-    }
-
-    case lltok::kw_thread_local: { // OptionalThreadLocal
-      GlobalVariable::ThreadLocalMode TLM;
-      if (ParseOptionalThreadLocal(TLM) ||
-          ParseGlobal("", SMLoc(), 0, false, 0, 0, TLM))
-        return true;
-      break;
-    }
-
-    case lltok::kw_addrspace:     // OptionalAddrSpace
-    case lltok::kw_constant:      // GlobalType
-    case lltok::kw_global:        // GlobalType
-      if (ParseGlobal("", SMLoc(), 0, false, 0, 0, GlobalValue::NotThreadLocal))
-        return true;
-      break;
 
     case lltok::kw_attributes: if (ParseUnnamedAttrGrp()) return true; break;
     }





More information about the llvm-commits mailing list