[compiler-rt] r278187 - [compiler-rt] Allow nm program to be over-ridden for global symbol detection

Francis Ricci via llvm-commits llvm-commits at lists.llvm.org
Tue Aug 9 17:45:30 PDT 2016


Author: fjricci
Date: Tue Aug  9 19:45:30 2016
New Revision: 278187

URL: http://llvm.org/viewvc/llvm-project?rev=278187&view=rev
Log:
[compiler-rt] Allow nm program to be over-ridden for global symbol detection

Summary:
While cross-compiling, a custom nm program may be required. This will also allow for the
use of llvm-nm if desired.

Reviewers: samsonov, beanz, compnerd, eugenis

Subscribers: kubabrecka, dberris, llvm-commits

Differential Revision: https://reviews.llvm.org/D23278

Modified:
    compiler-rt/trunk/lib/sanitizer_common/scripts/gen_dynamic_list.py

Modified: compiler-rt/trunk/lib/sanitizer_common/scripts/gen_dynamic_list.py
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/sanitizer_common/scripts/gen_dynamic_list.py?rev=278187&r1=278186&r2=278187&view=diff
==============================================================================
--- compiler-rt/trunk/lib/sanitizer_common/scripts/gen_dynamic_list.py (original)
+++ compiler-rt/trunk/lib/sanitizer_common/scripts/gen_dynamic_list.py Tue Aug  9 19:45:30 2016
@@ -42,11 +42,12 @@ versioned_functions = set(['memcpy', 'pt
 
 def get_global_functions(library):
   functions = []
-  nm_proc = subprocess.Popen(['nm', library], stdout=subprocess.PIPE,
+  nm = os.environ.get('NM', 'nm')
+  nm_proc = subprocess.Popen([nm, library], stdout=subprocess.PIPE,
                              stderr=subprocess.PIPE)
   nm_out = nm_proc.communicate()[0].decode().split('\n')
   if nm_proc.returncode != 0:
-    raise subprocess.CalledProcessError(nm_proc.returncode, 'nm')
+    raise subprocess.CalledProcessError(nm_proc.returncode, nm)
   func_symbols = ['T', 'W']
   # On PowerPC, nm prints function descriptors from .data section.
   if os.uname()[4] in ["powerpc", "ppc64"]:




More information about the llvm-commits mailing list