[lld] b3cc470 - [ELF] Speed up Symbol::computeBinding. NFC

Fangrui Song via llvm-commits llvm-commits at lists.llvm.org
Sat Jan 15 23:40:48 PST 2022


Author: Fangrui Song
Date: 2022-01-15T23:40:44-08:00
New Revision: b3cc47006bf5b4b665db22e30d809ed40311bbee

URL: https://github.com/llvm/llvm-project/commit/b3cc47006bf5b4b665db22e30d809ed40311bbee
DIFF: https://github.com/llvm/llvm-project/commit/b3cc47006bf5b4b665db22e30d809ed40311bbee.diff

LOG: [ELF] Speed up Symbol::computeBinding. NFC

When computeBinding is inlined into includeInDynsym and computeIsPreemptible,
the optimizer can remove the config->gnuUnique load.

Added: 
    

Modified: 
    lld/ELF/Symbols.cpp

Removed: 
    


################################################################################
diff  --git a/lld/ELF/Symbols.cpp b/lld/ELF/Symbols.cpp
index e3c919517210..5aa585d7bfe0 100644
--- a/lld/ELF/Symbols.cpp
+++ b/lld/ELF/Symbols.cpp
@@ -273,7 +273,7 @@ uint8_t Symbol::computeBinding() const {
   if ((visibility != STV_DEFAULT && visibility != STV_PROTECTED) ||
       (versionId == VER_NDX_LOCAL && !isLazy()))
     return STB_LOCAL;
-  if (!config->gnuUnique && binding == STB_GNU_UNIQUE)
+  if (binding == STB_GNU_UNIQUE && !config->gnuUnique)
     return STB_GLOBAL;
   return binding;
 }


        


More information about the llvm-commits mailing list