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

Unified Diff: src/trusted/validator_ragel/build.scons

Issue 49183002: Regular instructions golden file test. Base URL: svn://svn.chromium.org/native_client/trunk/src/native_client/
Patch Set: Created 6 years, 11 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « buildbot/buildbot_standard.py ('k') | src/trusted/validator_ragel/compress_regular_instructions.py » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/trusted/validator_ragel/build.scons
===================================================================
--- src/trusted/validator_ragel/build.scons (revision 12664)
+++ src/trusted/validator_ragel/build.scons (working copy)
@@ -150,7 +150,7 @@
# dfagen : Regenerate any autogenerated source files.
ragel_targets = set([
- 'dfagen', 'dfacheckdecoder', 'dfacheckvalidator'])
+ 'dfagen', 'dfacheckdecoder', 'dfacheckvalidator', 'dfafullcheckvalidator'])
ragel_involved = ragel_targets.intersection(COMMAND_LINE_TARGETS)
gas = env.MakeUntrustedNativeEnv()['AS']
@@ -283,6 +283,10 @@
if python_can_load_dll:
+ # Fullcheck includes both [relatively] slow "regular instructions test"
+ # and [relatively] fast "regressions test". Check only includes
+ # [relatively] fast "regressions test".
+ dfafullcheckvalidator_tests = []
dfacheckvalidator_tests = []
for bitness, xml in [('32', validator32_xml), ('64', validator64_xml)]:
@@ -304,8 +308,10 @@
superinstruction])
env.AlwaysBuild(superinstruction_verified)
+ dfafullcheckvalidator_tests.append(superinstruction_verified)
dfacheckvalidator_tests.append(superinstruction_verified)
+ # Compare list of allowed instructions to python model
regular_instructions_test = env.AutoDepsCommand(
'regular_instructions_test_x86_%s.out' % bitness,
['${PYTHON}',
@@ -317,9 +323,23 @@
# Never run exhaustive tests in parallel because they can take all CPU.
env.AlwaysBuild(regular_instructions_test)
- SideEffect('check_validator', regular_instructions_test)
- dfacheckvalidator_tests.append(regular_instructions_test)
+ SideEffect('check_validator_full', regular_instructions_test)
+ dfafullcheckvalidator_tests.append(regular_instructions_test)
+ # Compress list of instructions and compare it to golden file
+ compress_regular_instructions_test = env.CommandTest(
+ '%sbit_regular.out' % bitness,
+ ['${PYTHON}',
+ env.File('compress_regular_instructions.py'),
+ xml,
+ '--bitness', bitness,
+ '--validator_dll', validator_dll,
+ '--decoder_dll', decoder_dll],
+ size = 'huge', scale_timeout = 16, capture_stderr = False,
+ stdout_golden = env.File('testdata/%sbit_regular.golden' % bitness))
+ SideEffect('check_validator', compress_regular_instructions_test)
+ dfacheckvalidator_tests.append(compress_regular_instructions_test)
+
env32 = env.Clone(BUILD_TARGET_NAME='x86-32')
env64 = env.Clone(BUILD_TARGET_NAME='x86-64')
old_ncval32 = env32.File('$STAGING_DIR/ncval$PROGSUFFIX')
@@ -340,8 +360,8 @@
# Never run exhaustive tests in parallel because they can take all CPU.
env.AlwaysBuild(regular_instructions_old_test)
- SideEffect('check_validator', regular_instructions_old_test)
- dfacheckvalidator_tests.append(regular_instructions_old_test)
+ SideEffect('check_validator_full', regular_instructions_old_test)
+ dfafullcheckvalidator_tests.append(regular_instructions_old_test)
# There are three categories of protected files: validator files, generated
# files (those of validator files that lie withing 'gen' directory) and
@@ -403,9 +423,13 @@
source=protected_files,
action=CalculateHashSums)
env.Depends(calculate_hash_sums, dfacheckvalidator_tests)
+ dfafullcheckvalidator_tests.append(calculate_hash_sums)
+ dfacheckvalidator_tests.append(calculate_hash_sums)
- env.Alias('dfacheckvalidator', calculate_hash_sums)
+ env.Alias('dfafullcheckvalidator', dfafullcheckvalidator_tests)
+ env.Alias('dfacheckvalidator', dfacheckvalidator_tests)
+
# Targeted tests: RDFA validator test, dis section checker and spec_val test.
for bits in ['32', '64']:
« no previous file with comments | « buildbot/buildbot_standard.py ('k') | src/trusted/validator_ragel/compress_regular_instructions.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698