Index: src/trusted/validator_arm/generate_decoder.py |
diff --git a/src/trusted/validator_arm/generate_decoder.py b/src/trusted/validator_arm/generate_decoder.py |
deleted file mode 100755 |
index 11d48bf41daab17553c1b8fb132dcd6b5b56af04..0000000000000000000000000000000000000000 |
--- a/src/trusted/validator_arm/generate_decoder.py |
+++ /dev/null |
@@ -1,79 +0,0 @@ |
-#!/usr/bin/python |
-# |
-# Copyright 2012 The Native Client Authors. All rights reserved. |
-# Use of this source code is governed by a BSD-style license that can |
-# be found in the LICENSE file. |
-# |
- |
-"""Decoder Generator script. |
- |
-Usage: generate-decoder.py <table-file> <output-cc-file> <decoder-name> |
- |
-Note: If the file ends with named.{h,cc}, it is assumed that one should |
-build the corresponding source file for named classes, so that testing |
-is easier to perform. In either case, the .h file will declare a decoder |
-state (with the given decoder name) to decode instructions, while the |
-.cc file will define the methods for the declared decoder state. |
-""" |
- |
-import re |
-import sys |
-import dgen_input |
-import dgen_decoder_output |
-import dgen_test_output |
- |
-def _localize_filename(filename): |
- """ Strips off directories above 'native_client', returning |
- a location neutral name for the file |
- """ |
- m = re.match(r'.*/(native_client/.*)', filename) |
- if m: |
- return m.group(1) |
- else: |
- # Don't know localized |
- return filename |
- |
-def main(argv): |
- table_filename = argv[1] |
- output_filename = argv[2] |
- decoder_name = argv[3] |
- |
- print "Decoder Generator reading ", table_filename |
- f = open(table_filename, 'r') |
- decoder = dgen_input.parse_tables(f) |
- f.close() |
- |
- print "Successful - got %d tables." % len(decoder.tables()) |
- |
- print "Generating %s..." % output_filename |
- f = open(output_filename, 'w') |
- |
- if output_filename.endswith('tests.cc'): |
- dgen_test_output.generate_tests_cc(decoder, |
- decoder_name, |
- f) |
- elif output_filename.endswith('named_classes.h'): |
- dgen_test_output.generate_named_classes_h( |
- decoder, decoder_name, _localize_filename(output_filename), |
- f) |
- elif output_filename.endswith('named_decoder.h'): |
- dgen_test_output.generate_named_decoder_h( |
- decoder, decoder_name, _localize_filename(output_filename), f) |
- elif output_filename.endswith('.h'): |
- dgen_decoder_output.generate_h( |
- decoder, decoder_name, _localize_filename(output_filename), f) |
- elif output_filename.endswith('named.cc'): |
- dgen_test_output.generate_named_cc( |
- decoder, decoder_name, _localize_filename(output_filename), f) |
- elif output_filename.endswith('.cc'): |
- dgen_decoder_output.generate_cc( |
- decoder, decoder_name, _localize_filename(output_filename), f) |
- else: |
- print 'Error: output filename not of form "*.{h,cc}"' |
- f.close() |
- print "Completed." |
- |
- return 0 |
- |
-if __name__ == '__main__': |
- sys.exit(main(sys.argv)) |