diff options
Diffstat (limited to 'compiler-rt/test/shadowcallstack/lit.cfg')
-rw-r--r-- | compiler-rt/test/shadowcallstack/lit.cfg | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/compiler-rt/test/shadowcallstack/lit.cfg b/compiler-rt/test/shadowcallstack/lit.cfg index 1642bdc10ac..313cd2b8eff 100644 --- a/compiler-rt/test/shadowcallstack/lit.cfg +++ b/compiler-rt/test/shadowcallstack/lit.cfg @@ -12,8 +12,12 @@ config.test_source_root = os.path.dirname(__file__) config.suffixes = ['.c', '.cc', '.cpp', '.m', '.mm', '.ll', '.test'] # Add clang substitutions. -config.substitutions.append( ("%clang_noscs ", config.clang + " -O0 -fno-sanitize=shadow-call-stack ") ) -config.substitutions.append( ("%clang_scs ", config.clang + " -O0 -fsanitize=shadow-call-stack ") ) +config.substitutions.append( ("%clang_noscs ", config.clang + ' -O0 -fno-sanitize=shadow-call-stack ' + config.target_cflags + ' ') ) -if config.host_os not in ['Linux'] or config.target_arch != 'x86_64': +scs_arch_cflags = config.target_cflags +if config.target_arch == 'aarch64': + scs_arch_cflags += ' -ffixed-x18 ' +config.substitutions.append( ("%clang_scs ", config.clang + ' -O0 -fsanitize=shadow-call-stack ' + scs_arch_cflags + ' ') ) + +if config.host_os not in ['Linux'] or config.target_arch not in ['x86_64', 'aarch64']: config.unsupported = True |