‘memSSA’ Dialect#

Operations#

memSSA.br (::pylir::MemSSA::MemoryBranchOp)#

Syntax:

operation ::= `memSSA.br` $successors $branch_args attr-dict

Traits: Terminator

Interfaces: BranchOpInterface

Attributes:#

AttributeMLIR TypeDescription
arg_sizes::mlir::DenseI32ArrayAttri32 dense array attribute

Operands:#

Operand

Description

branch_args

variadic of

Successors:#

Successor

Description

successors

any successor

memSSA.def (::pylir::MemSSA::MemoryDefOp)#

Syntax:

operation ::= `memSSA.def` `(` $clobbered `)` attr-dict `\n` $instruction $writes $reads

Interfaces: InferTypeOpInterface

Attributes:#

AttributeMLIR TypeDescription
instruction::pylir::MemSSA::InstructionAttr
writes::pylir::MemSSA::ReadWriteAttr
reads::pylir::MemSSA::ReadWriteAttr

Operands:#

Operand

Description

clobbered

Results:#

Result

Description

result

memSSA.liveOnEntry (::pylir::MemSSA::MemoryLiveOnEntryOp)#

Syntax:

operation ::= `memSSA.liveOnEntry` attr-dict

Interfaces: InferTypeOpInterface

Results:#

Result

Description

result

memSSA.module (::pylir::MemSSA::MemoryModuleOp)#

Syntax:

operation ::= `memSSA.module` attr-dict-with-keyword $body

Traits: IsolatedFromAbove

Interfaces: OpAsmOpInterface, RegionKindInterface

memSSA.use (::pylir::MemSSA::MemoryUseOp)#

Syntax:

operation ::= `memSSA.use` `(` $definition `)` attr-dict `\n` $instruction $reads

Attributes:#

AttributeMLIR TypeDescription
instruction::pylir::MemSSA::InstructionAttr
reads::pylir::MemSSA::ReadWriteAttr

Operands:#

Operand

Description

definition

Attributes#

InstructionAttr#

Parameters:#

Parameter

C++ type

Description

instruction

::mlir::Operation*

ReadWriteAttr#

Parameters:#

Parameter

C++ type

Description

locations

::llvm::ArrayRef<llvm::PointerUnion<mlir::Value, mlir::SymbolRefAttr>>

Types#

DefType#

Syntax: !memSSA.def