aboutsummaryrefslogtreecommitdiff
path: root/utils/perf-training/lit.cfg
blob: edae551bed3fa12ad8e7735fb1d69bd7ce0e982e (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
# -*- Python -*-

from lit import Test
import lit.formats
import lit.util

def getSysrootFlagsOnDarwin(config, lit_config):
    # On Darwin, support relocatable SDKs by providing Clang with a
    # default system root path.
    if 'darwin' in config.target_triple:
        try:
            out = lit.util.capture(['xcrun', '--show-sdk-path']).strip()
            res = 0
        except OSError:
            res = -1
        if res == 0 and out:
            sdk_path = out
            lit_config.note('using SDKROOT: %r' % sdk_path)
            return '-isysroot %s' % sdk_path
    return ''

sysroot_flags = getSysrootFlagsOnDarwin(config, lit_config)

config.clang = lit.util.which('clang', config.clang_tools_dir).replace('\\', '/')

config.name = 'Clang Perf Training'
config.suffixes = ['.c', '.cpp', '.m', '.mm', '.cu', '.ll', '.cl', '.s', '.S', '.modulemap']

cc1_wrapper = '%s %s/perf-helper.py cc1' % (config.python_exe, config.test_source_root)

use_lit_shell = os.environ.get("LIT_USE_INTERNAL_SHELL")
config.test_format = lit.formats.ShTest(use_lit_shell == "0")
config.substitutions.append( ('%clang_cpp_skip_driver', ' %s %s %s ' % (cc1_wrapper, config.clang, sysroot_flags)))
config.substitutions.append( ('%clang_cpp', ' %s --driver-mode=g++ %s ' % (config.clang, sysroot_flags)))
config.substitutions.append( ('%clang_skip_driver', ' %s %s %s ' % (cc1_wrapper, config.clang, sysroot_flags)))
config.substitutions.append( ('%clang', ' %s %s ' % (config.clang, sysroot_flags) ) )
config.substitutions.append( ('%test_root', config.test_exec_root ) )

config.environment['LLVM_PROFILE_FILE'] = 'perf-training-%p.profraw'