6 config
.name
= 'ShadowCallStack'
9 config
.test_source_root
= os
.path
.dirname(__file__
)
12 config
.suffixes
= ['.c', '.cpp', '.m', '.mm', '.ll', '.test']
14 # Add clang substitutions.
15 config
.substitutions
.append( ("%clang_noscs ", config
.clang
+ ' -O0 -fno-sanitize=shadow-call-stack ' + config
.target_cflags
+ ' ') )
17 scs_arch_cflags
= config
.target_cflags
18 if config
.target_arch
== 'aarch64':
19 scs_arch_cflags
+= ' -ffixed-x18 '
20 config
.substitutions
.append( ("%clang_scs ", config
.clang
+ ' -O0 -fsanitize=shadow-call-stack ' + scs_arch_cflags
+ ' ') )
22 if config
.host_os
not in ['Linux'] or config
.target_arch
not in ['aarch64']:
23 config
.unsupported
= True