Commit 94e97f6a by John Porto

Subzero. ARM32. Enable hwdiv-arm crosstests.

parent 6d392374
...@@ -435,6 +435,9 @@ else ...@@ -435,6 +435,9 @@ else
check-xtest: $(OBJDIR)/pnacl-sz make_symlink runtime check-xtest: $(OBJDIR)/pnacl-sz make_symlink runtime
# Do all native/sse2 tests, but only test_vector_ops for native/sse4.1. # Do all native/sse2 tests, but only test_vector_ops for native/sse4.1.
# For (slow) sandboxed tests, limit to Om1/sse4.1. # For (slow) sandboxed tests, limit to Om1/sse4.1.
# run.py (used to run the sandboxed xtests) does not support
# specifying -cpu cortex-a15 to qemu, hence we disable the
# hwdiv-arm tests.
./pydir/crosstest_generator.py -v --lit \ ./pydir/crosstest_generator.py -v --lit \
--toolchain-root $(TOOLCHAIN_ROOT) \ --toolchain-root $(TOOLCHAIN_ROOT) \
$(FORCEASM_FLAG) \ $(FORCEASM_FLAG) \
...@@ -446,7 +449,9 @@ check-xtest: $(OBJDIR)/pnacl-sz make_symlink runtime ...@@ -446,7 +449,9 @@ check-xtest: $(OBJDIR)/pnacl-sz make_symlink runtime
-i x8664,native,sse2 \ -i x8664,native,sse2 \
-i x8664,native,sse4.1,test_vector_ops \ -i x8664,native,sse4.1,test_vector_ops \
-i x8664,sandbox,sse4.1,Om1 \ -i x8664,sandbox,sse4.1,Om1 \
-i arm32,neon -i arm32 \
-e arm32,sandbox,hwdiv-arm \
-e arm32,neon,test_vector_ops
PNACL_BIN_PATH=$(PNACL_BIN_PATH) \ PNACL_BIN_PATH=$(PNACL_BIN_PATH) \
$(LLVM_SRC_PATH)/utils/lit/lit.py -sv $(CHECK_XTEST_TESTS) $(LLVM_SRC_PATH)/utils/lit/lit.py -sv $(CHECK_XTEST_TESTS)
endif endif
......
#!/usr/bin/env python2 #!/usr/bin/env python2
import argparse import argparse
import collections
import ConfigParser import ConfigParser
import os import os
import shutil import shutil
...@@ -28,7 +29,7 @@ def Match(desc, includes, excludes, default_match): ...@@ -28,7 +29,7 @@ def Match(desc, includes, excludes, default_match):
return default_match return default_match
def RunNativePrefix(toolchain_root, target, run_cmd): def RunNativePrefix(toolchain_root, target, attr, run_cmd):
"""Returns a prefix for running an executable for the target. """Returns a prefix for running an executable for the target.
For example, we may be running an ARM or MIPS target executable on an For example, we may be running an ARM or MIPS target executable on an
...@@ -39,7 +40,10 @@ def RunNativePrefix(toolchain_root, target, run_cmd): ...@@ -39,7 +40,10 @@ def RunNativePrefix(toolchain_root, target, run_cmd):
'arm32' : os.path.join(toolchain_root, 'arm_trusted', 'arm32' : os.path.join(toolchain_root, 'arm_trusted',
'run_under_qemu_arm'), 'run_under_qemu_arm'),
} }
prefix = arch_map[target] attr_map = collections.defaultdict(str, {
'arm32-neon': ' -cpu cortex-a9',
'arm32-hwdiv-arm': ' -cpu cortex-a15' })
prefix = arch_map[target] + attr_map[target + '-' + attr]
return (prefix + ' ' + run_cmd) if prefix else run_cmd return (prefix + ' ' + run_cmd) if prefix else run_cmd
def NonsfiLoaderArch(target): def NonsfiLoaderArch(target):
...@@ -187,9 +191,11 @@ def main(): ...@@ -187,9 +191,11 @@ def main():
'{root}/scons-out/opt-linux-{arch}/obj/src/nonsfi/' + '{root}/scons-out/opt-linux-{arch}/obj/src/nonsfi/' +
'loader/nonsfi_loader ').format( 'loader/nonsfi_loader ').format(
root=root, arch=NonsfiLoaderArch(target)) + run_cmd root=root, arch=NonsfiLoaderArch(target)) + run_cmd
run_cmd = RunNativePrefix(args.toolchain_root, target, run_cmd) run_cmd = RunNativePrefix(args.toolchain_root, target, attr,
run_cmd)
else: else:
run_cmd = RunNativePrefix(args.toolchain_root, target, run_cmd) run_cmd = RunNativePrefix(args.toolchain_root, target, attr,
run_cmd)
if args.lit: if args.lit:
# Create a file to drive the lit test. # Create a file to drive the lit test.
with open(run_cmd_base + '.xtest', 'w') as f: with open(run_cmd_base + '.xtest', 'w') as f:
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment