From: Jake Ehrlich Date: Thu, 2 Nov 2017 23:14:55 +0000 (+0000) Subject: Add feature to determine if host architecture is 64-bit in llvm-lit X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=56898c124500c5871061bcdae65eb2033743438b;p=llvm Add feature to determine if host architecture is 64-bit in llvm-lit 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 --- diff --git a/test/lit.cfg.py b/test/lit.cfg.py index 6a5cf69b987..57dc1f07049 100644 --- a/test/lit.cfg.py +++ b/test/lit.cfg.py @@ -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']: diff --git a/test/lit.site.cfg.py.in b/test/lit.site.cfg.py.in index 19e5cd0d3c2..efdd016e45d 100644 --- a/test/lit.site.cfg.py.in +++ b/test/lit.site.cfg.py.in @@ -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.