For the complete documentation index, see llms.txt. Markdown versions of all pages are available by appending .md to any URL (e.g. /max/get-started.md).
Mojo struct
PhaseStep
struct PhaseStep
One step in a phase recipe.
Specifies what to emit: either infrastructure ops (BARRIER, FENCE) or data ops matched from the body by role and predicates (EMIT).
Fieldsβ
- βaction (
PhaseAction): Action type for this step (EMIT,BARRIER, orFENCE). - βmatch_role (
OpRole): ForEMITsteps: requiredOpRoleof the body op to match. - βmatch_subtile (
Int): ForEMITsteps:-1= any, else a specific subtile value. - βexclude_lc (
Bool): ForEMITsteps: skip loop-carried ops (subtile == lc.selector). - βmatch_lc_only (
Bool): ForEMITsteps: emit only loop-carried ops. - βmatch_all (
Bool): ForEMITsteps: emit all matching ops (True) or first match only (False).
Implemented traitsβ
AnyType,
Copyable,
ImplicitlyCopyable,
ImplicitlyDeletable,
Movable
Methodsβ
emitβ
static def emit(role: OpRole, *, subtile: Int = -1, exclude_lc: Bool = False, match_lc_only: Bool = False, match_all: Bool = False) -> Self
Emit body ops matching the given role and predicates.
barrierβ
static def barrier() -> Self
Emit an s_barrier infrastructure op.
fenceβ
static def fence() -> Self
Emit a schedule_barrier fence infrastructure op.
Was this page helpful?
Thank you! We'll create more content like this.
Thank you for helping us improve!