Skip to content

Better support for multiple replacement partterns inside instruction pattern #347

@dop-amin

Description

@dop-amin

When trying to put multiple replacement patterns of the same type, e.g., <imm>, into an instruction pattern it is required to start the numbering at 0.

Works:

class mul(OTBNInstruction):
    pattern = "mul <Wd>, <Wa>.<imm0>, <Wb>.<imm1>, <imm2>"
    inputs = ["Wa", "Wb"]
    outputs = ["Wd", "FGa"]

Does not work:

class mul(OTBNInstruction):
    pattern = "mul <Wd>, <Wa>.<imm1>, <Wb>.<imm2>, <imm3>"
    inputs = ["Wa", "Wb"]
    outputs = ["Wd", "FGa"]
class mul(OTBNInstruction):
    pattern = "mul <Wd>, <Wa>.<imm>, <Wb>.<imm>, <imm>"
    inputs = ["Wa", "Wb"]
    outputs = ["Wd", "FGa"]

At least this should be documented somewhere.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions