update cdsl2llvm dependency branch #12
style.yml
on: push
Run linters
15s
Check for License headers
9s
Annotations
61 errors and 3 warnings
/home/runner/work/seal5/seal5/seal5/backends/patterngen/writer.py#L153
output_file,
skip_patterns=False,
skip_formats=not args.formats,
ext=predicate,
mattr=mattr,
-
)
if output_file.is_file():
metrics["n_success"] += 1
if args.formats:
file_artifact_fmt_dest = f"llvm/lib/Target/RISCV/seal5/{set_name}/{out_name_fmt}"
|
/home/runner/work/seal5/seal5/seal5/backends/riscv_gisel_legalizer/writer.py#L21
logger = logging.getLogger("riscv_gisel_legalizer")
# if (ST.hasVendorXCvsimd()) {
+
def type_helper(ty):
print("type_helper", ty)
ty_ = ty.replace("seal5_", "")
if ty_.startswith("p"):
sz = ty_[1:]
|
/home/runner/work/seal5/seal5/seal5/backends/riscv_gisel_legalizer/writer.py#L39
n = int(n)
sz = int(sz)
return f"const LLT {ty} = LLT::fixed_vector({n}, LLT::scalar({sz}));"
else:
raise RuntimeError(f"Unsupported: {ty}")
-
def gen_riscv_gisel_legalizer_str(legalizer_settings: RISCVLegalizerSettings):
print("legalizer_settings", legalizer_settings)
ops = legalizer_settings.ops
|
/home/runner/work/seal5/seal5/seal5/backends/riscv_gisel_legalizer/writer.py#L165
if gisel_settings:
content = gen_riscv_gisel_legalizer_str(gisel_settings)
with open(out_path, "w") as f:
f.write(content)
riscv_gisel_legalizer_patch = NamedPatch(
- "llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp", key="riscv_legalizer_info", src_path=out_path
+ "llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp",
+ key="riscv_legalizer_info",
+ src_path=out_path,
)
artifacts[None].append(riscv_gisel_legalizer_patch)
if args.metrics:
raise NotImplementedError
metrics_file = args.metrics
|
/home/runner/work/seal5/seal5/seal5/backends/riscv_isa_info/writer.py#L22
from seal5.settings import ExtensionsSettings, LLVMVersion
logger = logging.getLogger("riscv_isa_info")
-MAKO_TEMPLATE = " {\"${arch}\", RISCVExtensionVersion{${version_major}, ${version_minor}}},"
-MAKO_TEMPLATE_LLVM18 = " {\"${arch}\", {${version_major}, ${version_minor}}},"
+MAKO_TEMPLATE = ' {"${arch}", RISCVExtensionVersion{${version_major}, ${version_minor}}},'
+MAKO_TEMPLATE_LLVM18 = ' {"${arch}", {${version_major}, ${version_minor}}},'
def gen_riscv_isa_info_str(name: str, ext_settings: ExtensionsSettings, llvm_version: LLVMVersion):
# print("name", name)
# print("ext_settings", ext_settings)
|
/home/runner/work/seal5/seal5/seal5/backends/riscv_isa_info/writer.py#L138
f.write(content)
if ext_settings.experimental:
key = "riscv_isa_info_experimental"
else:
key = "riscv_isa_info"
- riscv_isa_info_patch = NamedPatch(
- "llvm/lib/Support/RISCVISAInfo.cpp", key=key, src_path=out_path
- )
+ riscv_isa_info_patch = NamedPatch("llvm/lib/Support/RISCVISAInfo.cpp", key=key, src_path=out_path)
artifacts[None].append(riscv_isa_info_patch)
if args.metrics:
metrics_file = args.metrics
with open(metrics_file, "w") as f:
f.write(",".join(metrics.keys()))
|
/home/runner/work/seal5/seal5/seal5/settings.py#L446
@DataClass
class LLVMSettings(YAMLSettings):
state: Optional[LLVMState] = None
configs: Optional[Dict[str, LLVMConfig]] = None
+
@DataClass
class RISCVLegalizerSetting(YAMLSettings):
name: Optional[Union[str, List[str]]] = None
types: Optional[Union[str, List[str]]] = None
onlyif: Optional[Union[str, List[str]]] = None
+
@DataClass
class RISCVLegalizerSettings(YAMLSettings):
ops: Optional[List[RISCVLegalizerSetting]] = None
+
@DataClass
class RISCVSettings(YAMLSettings):
xlen: Optional[int] = None
features: Optional[List[str]] = None
|
/home/runner/work/seal5/seal5/seal5/settings.py#L477
@DataClass
class ToolsSettings(YAMLSettings):
pattern_gen: Optional[PatternGenSettings] = None
+
@DataClass
class Seal5Settings(YAMLSettings):
logging: Optional[LoggingSettings] = None
filter: Optional[FilterSettings] = None
|
/home/runner/work/seal5/seal5/seal5/tools/cdsl2llvm.py#L45
"pattern-gen", cwd=dest, print_func=logger.info if verbose else logger.debug, live=True, use_ninja=use_ninja
)
def get_pattern_gen_patches(
- src: Path, temp_dir: Path, verbose: bool = False,
+ src: Path,
+ temp_dir: Path,
+ verbose: bool = False,
):
# TODO: copy!
artifacts = []
directory_artifact = Directory(
"llvm/tools/pattern-gen",
|
/home/runner/work/seal5/seal5/seal5/flow.py#L158
logger.error("Target directory does not exist! Aborting...")
sys.exit(1)
sha, version_info = llvm.clone_llvm_repo(self.directory, clone_url, ref=clone_ref, label=self.name)
else:
if force:
- sha, version_info = llvm.clone_llvm_repo(self.directory, clone_url, ref=clone_ref, refresh=True, label=self.name)
+ sha, version_info = llvm.clone_llvm_repo(
+ self.directory, clone_url, ref=clone_ref, refresh=True, label=self.name
+ )
if self.meta_dir.is_dir():
if force is False and not utils.ask_user(
"Overwrite existing .seal5 diretcory?", default=False, interactive=interactive
):
logger.error(f"Directory {self.meta_dir} already exists! Aborting...")
|
/home/runner/work/seal5/seal5/seal5/transform/filter_model/filter.py#L209
size += length
assert size in [16, 32, 64, 128], f"Invalid size: {size}"
if drop2 and keep2:
ret = size not in drop2 and size in keep2
elif keep2:
- ret = size in keep2
+ ret = size in keep2
elif drop2:
ret = size not in drop2
if not ret:
return False
if opcode is None: # not found (not a riscv insn?)
|
seal5/backends/coredsl2/writer.py#L19
'm2isar.metamodel.behav' imported but unused (F401)
|
seal5/backends/riscv_features/writer.py#L27
Line too long (133 > 120 characters) (E501)
|
seal5/backends/riscv_features/writer.py#L29
Line too long (150 > 120 characters) (E501)
|
seal5/backends/riscv_gisel_legalizer/writer.py#L20
'seal5.settings.ExtensionsSettings' imported but unused (F401)
|
seal5/backends/riscv_gisel_legalizer/writer.py#L26
Expected 2 blank lines, found 1 (E302)
|
seal5/backends/riscv_gisel_legalizer/writer.py#L47
Too many blank lines (3) (E303)
|
seal5/backends/riscv_gisel_legalizer/writer.py#L170
Line too long (123 > 120 characters) (E501)
|
seal5/backends/viewer_seal5/treegen.py#L11
'tkinter as tk' imported but unused (F401)
|
seal5/backends/viewer_seal5/treegen.py#L13
'...metamodel.arch' imported but unused (F401)
|
seal5/backends/viewer_seal5/utils.py#L12
'anytree.RenderTree' imported but unused (F401)
|
seal5/backends/viewer_seal5/utils.py#L29
Redefinition of unused 'TreeGenContext' from line 19 (F811)
|
seal5/backends/viewer_seal5/viewer.py#L23
'...metamodel.utils.expr_preprocessor.process_attributes' imported but unused (F401)
|
seal5/backends/viewer_seal5/viewer.py#L23
'...metamodel.utils.expr_preprocessor.process_functions' imported but unused (F401)
|
seal5/backends/viewer_seal5/viewer.py#L23
'...metamodel.utils.expr_preprocessor.process_instructions' imported but unused (F401)
|
seal5/backends/viewer_seal5/viewer.py#L108
Local variable 'consts_node' is assigned to but never used (F841)
|
seal5/backends/viewer_seal5/viewer.py#L307
Local variable 'text' is assigned to but never used (F841)
|
seal5/backends/yaml/writer.py#L19
'm2isar.metamodel.patch_model' imported but unused (F401)
|
seal5/backends/yaml/writer.py#L19
'm2isar.metamodel.behav' imported but unused (F401)
|
seal5/flow.py#L163
Line too long (129 > 120 characters) (E501)
|
seal5/flow.py#L215
Line too long (233 > 120 characters) (E501)
|
seal5/flow.py#L998
Local variable 'formats' is assigned to but never used (F841)
|
seal5/flow.py#L1052
Local variable 'formats' is assigned to but never used (F841)
|
seal5/flow.py#L1138
F-string is missing placeholders (F541)
|
seal5/flow.py#L1142
F-string is missing placeholders (F541)
|
seal5/flow.py#L1190
Line too long (174 > 120 characters) (E501)
|
seal5/flow.py#L1330
Local variable 'patches' is assigned to but never used (F841)
|
seal5/frontends/coredsl2_seal5/architecture_model_builder.py#L255
Local variable 'size' is assigned to but never used (F841)
|
seal5/frontends/coredsl2_seal5/architecture_model_builder.py#L273
Whitespace before ':' (E203)
|
seal5/frontends/coredsl2_seal5/architecture_model_builder.py#L295
Local variable 'qualifiers' is assigned to but never used (F841)
|
seal5/frontends/coredsl2_seal5/behavior_model_builder.py#L111
Local variable 'storage' is assigned to but never used (F841)
|
seal5/frontends/coredsl2_seal5/behavior_model_builder.py#L112
Local variable 'qualifiers' is assigned to but never used (F841)
|
seal5/frontends/coredsl2_seal5/behavior_model_builder.py#L113
Local variable 'attributes' is assigned to but never used (F841)
|
seal5/frontends/coredsl2_seal5/behavior_model_builder.py#L340
Whitespace before ':' (E203)
|
seal5/frontends/coredsl2_seal5/expr_interpreter.py#L11
'm2isar.M2ValueError' imported but unused (F401)
|
seal5/frontends/coredsl2_seal5/load_order.py#L11
'm2isar.M2NameError' imported but unused (F401)
|
seal5/frontends/coredsl2_seal5/parser.py#L17
'm2isar.metamodel.arch' imported but unused (F401)
|
seal5/frontends/coredsl2_seal5/parser.py#L34
Local variable 'app_dir' is assigned to but never used (F841)
|
seal5/frontends/coredsl2_seal5/parser.py#L71
Syntax error in forward annotation 'dict[str arch.InstructionSet]' (F722)
|
seal5/frontends/coredsl2_seal5/parser.py#L84
Undefined name 'core_name' (F821)
|
seal5/frontends/coredsl2_seal5/parser.py#L153
Undefined name 'fn_def' (F821)
|
seal5/settings.py#L451
Expected 2 blank lines, found 1 (E302)
|
seal5/settings.py#L457
Expected 2 blank lines, found 1 (E302)
|
seal5/settings.py#L461
Expected 2 blank lines, found 1 (E302)
|
seal5/settings.py#L467
Line too long (134 > 120 characters) (E501)
|
seal5/settings.py#L483
Expected 2 blank lines, found 1 (E302)
|
seal5/transform/detect_inouts/visitor.py#L11
'm2isar.metamodel.arch' imported but unused (F401)
|
seal5/transform/detect_side_effects/visitor.py#L11
'm2isar.flatten' imported but unused (F401)
|
seal5/transform/eliminate_mod_rfs/visitor.py#L11
'm2isar.metamodel.arch' imported but unused (F401)
|
seal5/transform/eliminate_rd_cmp_zero/visitor.py#L11
'm2isar.metamodel.arch' imported but unused (F401)
|
seal5/transform/explicit_truncations/visitor.py#L26
'm2isar.metamodel.arch' imported but unused (F401)
|
Check for License headers
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: actions/checkout@v3. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
|
Run linters
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: actions/checkout@v3, actions/setup-python@v4, wearerequired/lint-action@v1. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
|
Run linters
The following actions uses node12 which is deprecated and will be forced to run on node16: wearerequired/lint-action@v1. For more info: https://github.blog/changelog/2023-06-13-github-actions-all-actions-will-run-on-node16-instead-of-node12-by-default/
|