diff options
author | Gabe Black <gblack@eecs.umich.edu> | 2007-03-29 00:47:46 -0700 |
---|---|---|
committer | Gabe Black <gblack@eecs.umich.edu> | 2007-03-29 00:47:46 -0700 |
commit | 0d5f6167ffbc78fb5e514a12875d6a873e054871 (patch) | |
tree | 4ee01b00cf7f96850811fea5b4659b75d7827816 | |
parent | 55614caecca476a12ef711b8b6e459fee19028b9 (diff) | |
download | gem5-0d5f6167ffbc78fb5e514a12875d6a873e054871.tar.xz |
Allow "let" blocks to add code to the output files.
--HG--
extra : convert_revision : 0ffddb2b40dccbf2a3790464c843cfc1b43eaa02
-rwxr-xr-x | src/arch/isa_parser.py | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/arch/isa_parser.py b/src/arch/isa_parser.py index f3981a6eb..a0d671da1 100755 --- a/src/arch/isa_parser.py +++ b/src/arch/isa_parser.py @@ -311,12 +311,19 @@ def p_output_exec(t): def p_global_let(t): 'global_let : LET CODELIT SEMI' updateExportContext() + exportContext["header_output"] = '' + exportContext["decoder_output"] = '' + exportContext["exec_output"] = '' + exportContext["decode_block"] = '' try: exec fixPythonIndentation(t[2]) in exportContext except Exception, exc: error(t.lineno(1), 'error: %s in global let block "%s".' % (exc, t[2])) - t[0] = GenCode() # contributes nothing to the output C++ file + t[0] = GenCode(header_output = exportContext["header_output"], + decoder_output = exportContext["decoder_output"], + exec_output = exportContext["exec_output"], + decode_block = exportContext["decode_block"]) # Define the mapping from operand type extensions to C++ types and bit # widths (stored in operandTypeMap). |