From 45125b4e33d9439a20832a8691517c4d25906887 Mon Sep 17 00:00:00 2001 From: Philipp van Kempen Date: Thu, 14 Mar 2024 10:48:54 +0100 Subject: [PATCH] seal5.transform.converter: add --prefix option --- examples/cfg/xcorev/XCoreVMac.yml | 12 +++++++----- seal5/transform/converter.py | 8 ++++---- 2 files changed, 11 insertions(+), 9 deletions(-) diff --git a/examples/cfg/xcorev/XCoreVMac.yml b/examples/cfg/xcorev/XCoreVMac.yml index ecf0ce37..03aa6eb5 100644 --- a/examples/cfg/xcorev/XCoreVMac.yml +++ b/examples/cfg/xcorev/XCoreVMac.yml @@ -1,8 +1,8 @@ --- extensions: XCoreVMac: - feature: XCVmac - arch: xcvmac + # feature: XCVmac + # arch: xcvmac version: "1.0" experimental: false vendor: true @@ -10,7 +10,9 @@ extensions: passes: per_model: XCoreVMac: - skip: [riscv_features, riscv_isa_info, riscv_instr_formats, riscv_instr_info, behav_to_pat] + # skip: [riscv_features, riscv_isa_info, riscv_instr_formats, riscv_instr_info, behav_to_pat] override: - behav_to_pat: - patterns: false + # behav_to_pat: + # patterns: false + convert_models: + prefix: "SEAL5" diff --git a/seal5/transform/converter.py b/seal5/transform/converter.py index 01bb2aad..861f3568 100644 --- a/seal5/transform/converter.py +++ b/seal5/transform/converter.py @@ -27,6 +27,7 @@ def main(): parser = argparse.ArgumentParser() parser.add_argument("top_level", help="A .m2isarmodel file containing the models to generate.") parser.add_argument("--log", default="info", choices=["critical", "error", "warning", "info", "debug"]) + parser.add_argument("--prefix", default="", type=str) parser.add_argument("--output", "-o", type=str, default=None) args = parser.parse_args() @@ -65,10 +66,9 @@ def main(): for set_name, set_def in sets.items(): logger.info("replacing set %s", set_name) for enc, instr_def in set_def.instructions.items(): - PREFIX = True - if PREFIX: - instr_def.name = f"SEAL5_{instr_def.name}" - instr_def.mnemonic = f"seal5.{instr_def.mnemonic}" + if args.prefix: + instr_def.name = f"{args.prefix.upper()}_{instr_def.name}" + instr_def.mnemonic = f"{args.prefix.lower()}.{instr_def.mnemonic}" set_def.instructions[enc] = seal5_model.Seal5Instruction( instr_def.name, instr_def.attributes,