diff options
author | Christian Herber <christian.herber@oss.nxp.com> | 2025-08-08 22:42:05 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-08-08 13:42:05 -0700 |
commit | 767b74181f2ee325a2f6a2606620530d743553d2 (patch) | |
tree | 9eccf37ce5255dcb2ec35fda216db9a138a8dba1 /parse.py | |
parent | 1d4b38c868963b312d3289fbcf41bc11a69872b0 (diff) | |
download | riscv-opcodes-767b74181f2ee325a2f6a2606620530d743553d2.zip riscv-opcodes-767b74181f2ee325a2f6a2606620530d743553d2.tar.gz riscv-opcodes-767b74181f2ee325a2f6a2606620530d743553d2.tar.bz2 |
Adding support to generate an svg from opcodes (#364)
* Adding support to generate an svg from opcodes
* Attempt to fix linting issues
* Adding matplotlib dependency to precommit hooks
* Update linting changes
* Added typed tuples
* Fixing further linting issue (WiP)
* Resolved all linting issue
Matplotlib types cannot be resolved by the linter.
Matplotlib calles are ignored for type checking
* Adding matplotlib to dependencies and svg to output for coverage
Diffstat (limited to 'parse.py')
-rwxr-xr-x | parse.py | 8 |
1 files changed, 8 insertions, 0 deletions
@@ -13,6 +13,7 @@ from latex_utils import make_latex_table, make_priv_latex_table from rust_utils import make_rust from shared_utils import add_segmented_vls_insn, create_inst_dict from sverilog_utils import make_sverilog +from svg_utils import make_svg LOG_FORMAT = "%(levelname)s:: %(message)s" LOG_LEVEL = logging.INFO @@ -31,6 +32,7 @@ def generate_extensions( rust: bool, go: bool, latex: bool, + svg: bool, ): instr_dict = create_inst_dict(extensions, include_pseudo) instr_dict = dict(sorted(instr_dict.items())) @@ -73,6 +75,10 @@ def generate_extensions( make_priv_latex_table() logging.info("priv-instr-table.tex generated successfully") + if svg: + make_svg(instr_dict) + logging.info("inst.svg generated successfully") + def main(): parser = argparse.ArgumentParser(description="Generate RISC-V constants headers") @@ -92,6 +98,7 @@ def main(): parser.add_argument("-rust", action="store_true", help="Generate output for Rust") parser.add_argument("-go", action="store_true", help="Generate output for Go") parser.add_argument("-latex", action="store_true", help="Generate output for Latex") + parser.add_argument("-svg", action="store_true", help="Generate .svg output") parser.add_argument( "extensions", nargs="*", @@ -112,6 +119,7 @@ def main(): args.rust, args.go, args.latex, + args.svg, ) |