]> granicus.if.org Git - llvm/commitdiff
Add feature to determine if host architecture is 64-bit in llvm-lit
authorJake Ehrlich <jakehehrlich@google.com>
Thu, 2 Nov 2017 23:14:55 +0000 (23:14 +0000)
committerJake Ehrlich <jakehehrlich@google.com>
Thu, 2 Nov 2017 23:14:55 +0000 (23:14 +0000)
I have a test that I'd like to add to llvm that demands using more than
32-bits worth of address space. This test can't be run on 32-bit systems
because they don't have enough address space. The host triple should be
used to determine this instead of config.host_arch because on Debian
systems config.host_arch is not correct. This change adds the
"host-arch-is-64bit" feature to allow tests to restrict themselves to
the 64-bit case.

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@317281 91177308-0d34-0410-b5e6-96231b3b80d8

test/lit.cfg.py
test/lit.site.cfg.py.in

index 6a5cf69b9876a93b2d817016f186d3fdd01c9338..57dc1f0704920d2888977f128945accbe66ef734 100644 (file)
@@ -168,6 +168,9 @@ for arch in config.targets_to_build.split():
     config.available_features.add(arch.lower() + '-registered-target')
 
 # Features
+known_arches = ["x86_64", "mips64", "ppc64", "aarch64"]
+if any(config.llvm_host_triple.startswith(x) for x in known_arches):
+  config.available_features.add("llvm-64-bits")
 
 # Others/can-execute.txt
 if sys.platform not in ['win32']:
index 19e5cd0d3c2d207fda954a9c965cb092e8b814e2..efdd016e45d993ada7c0242f324e2ecafa6b120b 100644 (file)
@@ -29,7 +29,6 @@ config.targets_to_build = "@TARGETS_TO_BUILD@"
 config.native_target = "@LLVM_NATIVE_ARCH@"
 config.llvm_bindings = "@LLVM_BINDINGS@".split(' ')
 config.host_os = "@HOST_OS@"
-config.host_arch = "@HOST_ARCH@"
 config.host_cc = "@HOST_CC@"
 config.host_cxx = "@HOST_CXX@"
 config.host_ldflags = "@HOST_LDFLAGS@"
@@ -42,6 +41,7 @@ config.enable_ffi = @LLVM_ENABLE_FFI@
 config.build_shared_libs = @BUILD_SHARED_LIBS@
 config.link_llvm_dylib = @LLVM_LINK_LLVM_DYLIB@
 config.llvm_libxml2_enabled = "@LLVM_LIBXML2_ENABLED@"
+config.llvm_host_triple = '@LLVM_HOST_TRIPLE@'
 
 # Support substitution of the tools_dir with user parameters. This is
 # used when we can't determine the tool dir at configuration time.