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

Side by Side Diff: pydir/crosstest.py

Issue 1273153002: Subzero. Native 64-bit int arithmetic on x86-64. (Closed) Base URL: https://chromium.googlesource.com/native_client/pnacl-subzero.git@master
Patch Set: Removes the x8664-specific xtest target. Created 5 years, 4 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 #!/usr/bin/env python2 1 #!/usr/bin/env python2
2 2
3 import argparse 3 import argparse
4 import os 4 import os
5 import subprocess 5 import subprocess
6 import sys 6 import sys
7 import tempfile 7 import tempfile
8 8
9 import targets 9 import targets
10 from utils import shellcmd 10 from utils import shellcmd
(...skipping 159 matching lines...) Expand 10 before | Expand all | Expand 10 after
170 objs.append(obj_llc) 170 objs.append(obj_llc)
171 else: 171 else:
172 objs.append(arg) 172 objs.append(arg)
173 173
174 # Add szrt_sb_${target}.o or szrt_native_${target}.o. 174 # Add szrt_sb_${target}.o or szrt_native_${target}.o.
175 objs.append(( 175 objs.append((
176 '{root}/toolchain_build/src/subzero/build/runtime/' + 176 '{root}/toolchain_build/src/subzero/build/runtime/' +
177 'szrt_{sb}_' + args.target + '.o' 177 'szrt_{sb}_' + args.target + '.o'
178 ).format(root=nacl_root, sb='sb' if args.sandbox else 'native')) 178 ).format(root=nacl_root, sb='sb' if args.sandbox else 'native'))
179 pure_c = os.path.splitext(args.driver)[1] == '.c' 179 pure_c = os.path.splitext(args.driver)[1] == '.c'
180
181 # TargetX8664 is ilp32, but clang does not currently support such
182 # configuration. In order to run the crosstests we play nasty, dangerous
183 # tricks with the stack pointer.
184 needs_stack_hack = (args.target == 'x8664')
185 stack_hack_params = []
186 if needs_stack_hack:
187 shellcmd('{bin}/clang -g -o stack_hack.x8664.{key}.o -c '
188 'stack_hack.x8664.c'.format(bin=bindir, key=key))
189 stack_hack_params.append('-DX8664_STACK_HACK')
190 stack_hack_params.append('stack_hack.x8664.{key}.o'.format(key=key))
191
180 # Set compiler to clang, clang++, pnacl-clang, or pnacl-clang++. 192 # Set compiler to clang, clang++, pnacl-clang, or pnacl-clang++.
181 compiler = '{bin}/{prefix}{cc}'.format( 193 compiler = '{bin}/{prefix}{cc}'.format(
182 bin=bindir, prefix='pnacl-' if args.sandbox else '', 194 bin=bindir, prefix='pnacl-' if args.sandbox else '',
183 cc='clang' if pure_c else 'clang++') 195 cc='clang' if pure_c else 'clang++')
184 sb_native_args = (['-O0', '--pnacl-allow-native', 196 sb_native_args = (['-O0', '--pnacl-allow-native',
185 '-arch', target_info.target, 197 '-arch', target_info.target,
186 '-Wn,-defsym=__Sz_AbsoluteZero=0'] 198 '-Wn,-defsym=__Sz_AbsoluteZero=0']
187 if args.sandbox else 199 if args.sandbox else
188 ['-g', '-target=' + triple, 200 ['-g', '-target=' + triple,
189 '-lm', '-lpthread', 201 '-lm', '-lpthread',
190 '-Wl,--defsym=__Sz_AbsoluteZero=0'] + 202 '-Wl,--defsym=__Sz_AbsoluteZero=0'] +
191 target_info.cross_headers) 203 target_info.cross_headers)
192 shellcmd([compiler, args.driver] + objs + 204 shellcmd([compiler] + stack_hack_params + [args.driver] + objs +
193 ['-o', os.path.join(args.dir, args.output)] + sb_native_args) 205 ['-o', os.path.join(args.dir, args.output)] + sb_native_args)
194 206
195 if __name__ == '__main__': 207 if __name__ == '__main__':
196 main() 208 main()
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698