Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(710)

Side by Side Diff: tests_lit/lit.cfg

Issue 600043002: Clean up run script to use for testing Subzero. (Closed) Base URL: https://chromium.googlesource.com/native_client/pnacl-subzero.git@master
Patch Set: Fix nits. Created 6 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 # Taken from utils/lit/tests in the LLVM tree and hacked together to support 1 # Taken from utils/lit/tests in the LLVM tree and hacked together to support
2 # our tests. 2 # our tests.
3 3
4 # -*- Python -*- 4 # -*- Python -*-
5 5
6 import os 6 import os
7 import re 7 import re
8 import sys 8 import sys
9 9
10 import lit.formats 10 import lit.formats
(...skipping 21 matching lines...) Expand all
32 config.substitutions.append(('%{python}', sys.executable)) 32 config.substitutions.append(('%{python}', sys.executable))
33 33
34 pydir = os.path.join(bin_root, 'pydir') 34 pydir = os.path.join(bin_root, 'pydir')
35 35
36 # Finding LLVM binary tools. All tools used in the tests must be listed in 36 # Finding LLVM binary tools. All tools used in the tests must be listed in
37 # the llvmbintools list. 37 # the llvmbintools list.
38 llvmbinpath = os.path.abspath(os.environ.get('LLVM_BIN_PATH')) 38 llvmbinpath = os.path.abspath(os.environ.get('LLVM_BIN_PATH'))
39 39
40 # Finding Subzero tools 40 # Finding Subzero tools
41 llvm2icetool = os.path.join(bin_root, 'llvm2ice') 41 llvm2icetool = os.path.join(bin_root, 'llvm2ice')
42
43 # Convert LLVM source to PNaCl bitcode, read using the
44 # Subzero bitcode reader, and then translate.
42 config.substitutions.append( 45 config.substitutions.append(
43 ('%llvm2iceinsts', ' '.join([os.path.join(pydir, 'llvm2iceinsts.py'), 46 ('%p2i', ' '.join([os.path.join(pydir, 'run-llvm2ice.py'),
44 '--llvm2ice', llvm2icetool, 47 '--llvm2ice', llvm2icetool,
45 '--llvm-bin-path', llvmbinpath 48 '--llvm-bin-path', llvmbinpath
46 ]))) 49 ])))
50
51 # Convert LLVM source to PNaCl bitcode, read using the PNaCl bitcode reader,
52 # convert to ICE using the ICE Converter, and then translate.
53 # TODO(kschimpf) Deprecated, remove once p2i working.
54 config.substitutions.append(
55 ('%l2i', ' '.join([os.path.join(pydir, 'run-llvm2ice.py'),
56 '--llvm', '--llvm2ice', llvm2icetool,
57 '--llvm-bin-path', llvmbinpath
58 ])))
59
60 # Read LLVM source, convert to ICE using the ICE converter, and then translate.
61 # Note: l2i should is prefered over lc2i, since it uses PNaCl bitcode.
jvoung (off chromium) 2014/09/24 20:35:19 should is preferred -> should be preferred
Jim Stichnoth 2014/09/24 20:37:36 remove "should", spell-check "preferred"
Karl 2014/09/24 21:01:22 Acknowledged.
Karl 2014/09/24 21:01:22 Done.
62 # TODO(kschimpf) Deprecated, remove once p2i working.
63 config.substitutions.append(
64 ('%lc2i', ' '.join([os.path.join(pydir, 'run-llvm2ice.py'),
65 '--llvm-source', '--llvm2ice', llvm2icetool,
66 '--llvm-bin-path', llvmbinpath
67 ])))
68
47 config.substitutions.append(('%llvm2ice', llvm2icetool)) 69 config.substitutions.append(('%llvm2ice', llvm2icetool))
48 config.substitutions.append(('%szdiff', os.path.join(pydir, 'szdiff.py'))) 70 config.substitutions.append(('%szdiff', os.path.join(pydir, 'szdiff.py')))
49 71
50 llvmbintools = [r"\bFileCheck\b", r"\bllvm-as\b", r"\bllvm-mc\b", 72 llvmbintools = [r"\bFileCheck\b", r"\bllvm-as\b", r"\bllvm-mc\b",
51 r"\bllvm-objdump\b", r"\bnot\b", r"\bpnacl-freeze\b", 73 r"\bllvm-objdump\b", r"\bnot\b", r"\bpnacl-freeze\b",
52 r"\bpnacl-bcdis\b"] 74 r"\bpnacl-bcdis\b"]
53 75
54 for tool in llvmbintools: 76 for tool in llvmbintools:
55 # The re.sub() line is adapted from one of LLVM's lit.cfg files. 77 # The re.sub() line is adapted from one of LLVM's lit.cfg files.
56 # Extract the tool name from the pattern. This relies on the tool 78 # Extract the tool name from the pattern. This relies on the tool
57 # name being surrounded by \b word match operators. If the 79 # name being surrounded by \b word match operators. If the
58 # pattern starts with "| ", include it in the string to be 80 # pattern starts with "| ", include it in the string to be
59 # substituted. 81 # substituted.
60 substitution = re.sub(r"^(\\)?((\| )?)\W+b([0-9A-Za-z-_]+)\\b\W*$", 82 substitution = re.sub(r"^(\\)?((\| )?)\W+b([0-9A-Za-z-_]+)\\b\W*$",
61 r"\2" + llvmbinpath + "/" + r"\4", 83 r"\2" + llvmbinpath + "/" + r"\4",
62 tool) 84 tool)
63 config.substitutions.append((tool, substitution)) 85 config.substitutions.append((tool, substitution))
64 86
65 # Add a feature to detect the Python version. 87 # Add a feature to detect the Python version.
66 config.available_features.add("python%d.%d" % (sys.version_info[0], 88 config.available_features.add("python%d.%d" % (sys.version_info[0],
67 sys.version_info[1])) 89 sys.version_info[1]))
68 90
69 # Debugging output 91 # Debugging output
70 def dbg(s): 92 def dbg(s):
71 print '[DBG] %s' % s 93 print '[DBG] %s' % s
72 94
73 dbg('bin_root = %s' % bin_root) 95 dbg('bin_root = %s' % bin_root)
74 dbg('llvmbinpath = %s' % llvmbinpath) 96 dbg('llvmbinpath = %s' % llvmbinpath)
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698