m2isar.backends.coredsl2.utils ============================== .. py:module:: m2isar.backends.coredsl2.utils .. autoapi-nested-parse:: Clean M2-ISA-R/Seal5 metamodel to .core_desc file. Attributes ---------- .. autoapisummary:: m2isar.backends.coredsl2.utils.logger Classes ------- .. autoapisummary:: m2isar.backends.coredsl2.utils.CoreDSL2Writer Module Contents --------------- .. py:data:: logger .. py:class:: CoreDSL2Writer(visitor, reduced: bool = True, skip_empty: bool = False, drop_first_op: bool = False, allowed_attrs: Optional[Set[str]] = None) .. py:attribute:: visitor .. py:attribute:: reduced :value: True .. py:attribute:: drop_first_op :value: False .. py:attribute:: allowed_attrs .. py:attribute:: defined_by_ext .. py:attribute:: text :value: '' .. py:attribute:: indent_str :value: ' ' .. py:attribute:: level :value: 0 .. py:method:: reset() .. py:property:: indent .. py:property:: isstartofline .. py:property:: needsspace .. py:method:: write(text, nl=False) .. py:method:: write_line(text) .. py:method:: enter_block(br=True, nl=True) .. py:method:: leave_block(br=True, nl=True) .. py:method:: write_type(ty) .. py:method:: write_attribute(attr, val=None) .. py:method:: write_attributes(attributes) .. py:method:: write_function(function) .. py:method:: write_functions(functions) .. py:method:: write_encoding_val(bitval) .. py:method:: write_encoding_field(bitfield) .. py:method:: write_constraints(constraints) .. py:method:: write_encoding(encoding) .. py:method:: write_assembly(instruction) .. py:method:: write_behavior2(op, drop_first: bool = False) .. py:method:: write_behavior(instruction, drop_first: bool = False) .. py:method:: write_instruction(instruction) .. py:method:: write_instructions(instructions) .. py:method:: write_architectural_state(core_set_def: Union[m2isar.metamodel.arch.CoreDef, m2isar.metamodel.arch.InstructionSet]) .. py:method:: write_set(set_def) .. py:method:: write_parameter(parameter) .. py:method:: write_parameters(parameters) .. py:method:: write_register_bank(register_bank) .. py:method:: write_register_banks(register_banks) .. py:method:: write_register_alias(register_alias) .. py:method:: write_register_aliases(register_aliases) .. py:method:: write_memories(memories) .. py:method:: write_memory(memory) .. py:method:: write_memory_alias(memory_alias) .. py:method:: write_memory_aliases(memory_aliases) .. py:method:: write_core(core_def)