Index: src/trusted/validator_arm/build.scons |
diff --git a/src/trusted/validator_arm/build.scons b/src/trusted/validator_arm/build.scons |
index dd4925a13f9074ff320da5de4fc0d7c32376fbf3..c980f049c83f798f088588c009e07961dfb3b09c 100644 |
--- a/src/trusted/validator_arm/build.scons |
+++ b/src/trusted/validator_arm/build.scons |
@@ -20,13 +20,14 @@ if env.Bit('linux'): |
env.Command(target=gen_dec, |
source=['armv7-opt.table', |
+ 'armv7-thumb.table', |
'generate_decoder.py', |
'dgen_core.py', |
'dgen_input.py', |
'dgen_opt.py', |
'dgen_output.py'], |
- action=['${SOURCES[1].abspath} ${SOURCES[0].abspath} ' |
- '${TARGET.abspath}']) |
+ action=['${SOURCES[2].abspath} ${SOURCES[0].abspath} ' |
+ '${SOURCES[1].abspath} ${TARGET.abspath}']) |
env.ComponentLibrary('arm_validator_core', |
['address_set.cc', |
@@ -71,6 +72,22 @@ if env.Bit('linux'): |
'test_vector_stores': 1, |
} |
+ validator_tests_thumb = { |
Karl
2011/09/19 19:56:05
NIT: Should this be named thumb2 instead of thunb?
jasonwkim
2011/09/26 21:35:52
not really.
we are teting thumb MODE
thumb MODE
th
|
+ 'local_allowed' : 0, |
+ 'local_disallowed' : 1, |
+ 'test_forbidden_instructions' : 1, |
+ 'masking_instructions' : 0, |
+ 'mem_test' : 1, |
+ 'branch_test' : 1, |
+ 'bundle_test' : 1, |
+ 'it_test' : 1, |
+ 'test_external_jumps' : 1, |
+ 'test_internal_jumps' : 1, |
+ 'test_sp_updates' : 1, |
+ 'test_stores' : 1, |
+ 'lit_pool_test' : 0 |
+ } |
+ |
for test, exit_status in validator_tests.iteritems(): |
node = env.CommandTest( |
test + '_actual.out', |
@@ -84,6 +101,19 @@ if env.Bit('linux'): |
env.AddNodeToTestSuite(node, ['small_tests', 'validator_tests'], |
"run_arm_" + test) |
+ for test, exit_status in validator_tests_thumb.iteritems(): |
+ node = env.CommandTest( |
+ test + '_thumb_actual.out', |
+ [ncval, env.File('testdata-thumb/' + test + '.nexe')], |
Karl
2011/09/19 19:56:05
NIT: Again, isn't this thumb2, not thumb?
jasonwkim
2011/09/26 21:35:52
no this is for thumb MODE, this is not the ISA
|
+ exit_status = str(exit_status), |
+ filter_regex = "'^ncval'", |
+ # NOTE: all stdout_golden are currently empty |
+ stdout_golden = env.File('testdata-thumb/' + test + '.out'), |
+ stderr_golden = env.File('testdata-thumb/' + test + '.err')) |
+ |
+ env.AddNodeToTestSuite(node, ['small_tests', 'validator_tests'], |
+ "run_arm_" + test) |
+ |
gtest_env = env.Clone() |
# gtest does not compile with our stringent settings. |
gtest_env.FilterOut( |