Skip to main content

PTO-BLOCK-MODEL-STATE-CONTROL-STATE

PTO-BLOCK-MODEL-STATE-CONTROL-STATE

ASL pseudocode

The complete ASL owner is shown directly below.

// PTO-UNIT: {"id":"PTO-BLOCK-MODEL-STATE-CONTROL-STATE","surface":"block","classification":["model","state","control-state"],"depends_on":["PTO-BLOCK-MODEL-STATE-TYPES"]}// PTO-STATE: {"id":"PTO-STATE-BLOCK-CONTROL","classification":["block","control"],"scope":"core","owner":"PTO-BLOCK-MODEL-STATE-CONTROL-STATE","members":["_BARG","_BundleCommitTargetSet","_BundleConditionSet","_SystemBlockTerminalPending","_BundleSequentialPC","_FrameStackReturnTarget","_BundleArgument","_BundleArgumentKind","_BundleOperation","_BundleDimensions","_BundleDimensionPresent","_BundleScalarBindings","_BundleTileBindings","_BundleSharedBindings","_BundleRangeGroup","_BundleZeroParticipationSeen","_BundleControlAttributes","_BundleDataAttributes","_BundleDataAttributesPresent","_BundleHint","_BundleFixedPointAttributes","_MemoryCopyTemplate","_FrameTemplate","_LocalGenerations","_SharedGenerations","_BundleExecutionDomainToken","_NextBundleExecutionDomainToken","_TileDataLayoutCapabilities","_FrameDepth","_LastFrameBegin","_LastFrameEnd","_LastFrameSize","_LastQueueLeft","_LastQueueRight","_LastQueueFlags","_LastMemoryCommandAddress","_LastMemoryCommandSize","_LastCrossBlockACR","_LastCrossBlockID","_LastBundleHintPayload"],"depends_on":[]}
// NDF-BEGIN: PTO-REQ-BUNDLE-STATE-001// ndf: kind=contract level=L1 layer=block status=accepted// Architecture-visible bundle-control state MUST be the state defined by// [[PTO-STATE-BLOCK-CONTROL]].// NDF-END: PTO-REQ-BUNDLE-STATE-001
var _BARG : BundleArgumentRegister;// C.SETC.TGT owns one successful value snapshot per active block. This marker// is separate from BARG.BPCN because BSTART initializes BPCN before any setter.var _BundleCommitTargetSet : boolean;// Exactly one SETC condition setter may publish BARG.TAKEN in one conditional// block. The marker is trap-preserved and cleared with block state.var _BundleConditionSet : boolean;// ACRC is the final scalar operation of a SYS block.  This marker survives// its service-request trap so recovery can accept only BSTOP or a new BSTART.var _SystemBlockTerminalPending : boolean;// These are not alternate continuation selectors. _BundleSequentialPC is the// instruction following the current BSTART and is supplied to the commit// boundary; _FrameStackReturnTarget belongs to FRET.STK frame state.var _BundleSequentialPC : Word;var _FrameStackReturnTarget : Word;var _BundleArgument : Word;var _BundleArgumentKind : bits(3);var _BundleOperation : BundleOperationDescriptor;var _BundleDimensions : BundleDimensionSnapshot;var _BundleDimensionPresent : BundleDimensionPresenceSnapshot;var _BundleScalarBindings : BundleScalarBindingSnapshot;var _BundleTileBindings : BundleTileBindingSnapshot;var _BundleSharedBindings : BundleSharedBindingSnapshot;var _BundleRangeGroup : BundleRangeGroupState;var _BundleZeroParticipationSeen : boolean;var _BundleControlAttributes : BundleControlAttributes;var _BundleDataAttributes : BundleDataAttributes;var _BundleDataAttributesPresent : boolean;var _BundleHint : BundleHintAttributes;var _BundleFixedPointAttributes : BundleFixedPointAttributes;var _MemoryCopyTemplate : MemoryCopyTemplateState;var _FrameTemplate : FrameTemplateState;// Local B.ASSEMBLE generations intentionally live outside the per-block// header and therefore survive ClearBundleHeaderState until explicit LAST.var _LocalGenerations : LocalGenerationSnapshot;// Pending Shared generations are Core-private and remain invisible through// the architectural S register file until complete collective publication.var _SharedGenerations : SharedGenerationSnapshot;// Opaque portable execution-domain identity for dynamic writer speculation.// It is execution context, never an encoded operand.var _BundleExecutionDomainToken : integer;// Mathematical dynamic-domain allocator for the reference model. Its// unbounded identity is portable; implementations may use any non-aliasing// internal representation.var _NextBundleExecutionDomainToken : integer;// NORM is mandatory. Other accepted layout bits require an advertised// profile/platform capability.var _TileDataLayoutCapabilities : bits(32);var _FrameDepth : integer {0..PTO_MODEL_MEMORY_EVENTS};var _LastFrameBegin : Reg5Selector;var _LastFrameEnd : Reg5Selector;var _LastFrameSize : Word;var _LastQueueLeft : Word;var _LastQueueRight : Word;var _LastQueueFlags : bits(4);var _LastMemoryCommandAddress : Word;var _LastMemoryCommandSize : Word;var _LastCrossBlockACR : bits(10);var _LastCrossBlockID : bits(7);var _LastBundleHintPayload : Word;
readonly func BundleIsActive() => booleanbegin    return _BundleActive;end;
readonly func BundleBodyIsActive() => booleanbegin    return _BundleBodyActive;end;
readonly func BundleTileOperationSelected() => booleanbegin    return _BundleOperation.valid &&           (_BundleOperation.operation_class == BundleOperation_TileElement ||            _BundleOperation.operation_class == BundleOperation_TileMemory ||            _BundleOperation.operation_class == BundleOperation_TileMatrix);end;
readonly func CurrentBundleTileOperationDataTypeCode() => bits(5)begin    assert BundleTileOperationSelected() &&           _BundleOperation.data_type_valid;    return _BundleOperation.data_type;end;
readonly func CurrentBundleMemoryOrder() => MemoryOrderbegin    if _BundleControlAttributes.acquire &&       _BundleControlAttributes.release then        return MemoryOrder_AcquireRelease;    elsif _BundleControlAttributes.acquire then        return MemoryOrder_Acquire;    elsif _BundleControlAttributes.release then        return MemoryOrder_Release;    else        return MemoryOrder_Relaxed;    end;end;
readonly func CurrentBundleAtomic() => booleanbegin    return _BundleControlAttributes.atomic;end;
readonly func CurrentBundleDimensionReduction() => booleanbegin    return _BundleControlAttributes.dimension_reduction;end;
readonly func CurrentBundlePadValue() => TilePadValuebegin    if !_BundleDataAttributesPresent then return TilePad_Null; end;    case _BundleDataAttributes.pad_value[1:0] of        when '00' => return TilePad_Zero;        when '01' => return TilePad_Max;        when '10' => return TilePad_Min;        when '11' => return TilePad_Null;    end;end;
pure func TileDataLayoutCodeAccepted(data_layout: bits(5)) => booleanbegin    let code = UInt(data_layout);    return code == 0 || code == 1 || code == 3 || code == 4 ||           code == 6 || code == 8 || code == 9 || code == 17 ||           code == 18 || code == 20 || (21 <= code && code <= 28) ||           code == 30;end;
pure func TileDataLayoutOfCode(data_layout: bits(5)) => TileDataLayoutbegin    assert TileDataLayoutCodeAccepted(data_layout);    let code = UInt(data_layout);    if code == 1 then return TileDataLayout_ND2DN;    elsif code == 3 then return TileDataLayout_ND2ZN;    elsif code == 4 then return TileDataLayout_ND2NZ;    elsif code == 6 then return TileDataLayout_DN2ND;    elsif code == 8 then return TileDataLayout_DN2ZN;    elsif code == 9 then return TileDataLayout_DN2NZ;    elsif code == 17 then return TileDataLayout_ZN2ND;    elsif code == 18 then return TileDataLayout_ZN2DN;    elsif code == 20 then return TileDataLayout_ZN2NZ;    elsif code == 21 then return TileDataLayout_ND2M32;    elsif code == 22 then return TileDataLayout_ND2M16;    elsif code == 23 then return TileDataLayout_ND2N8;    elsif code == 24 then return TileDataLayout_M322ND;    elsif code == 25 then return TileDataLayout_M162ND;    elsif code == 26 then return TileDataLayout_N82ND;    elsif code == 27 then return TileDataLayout_NZ2ND;    elsif code == 28 then return TileDataLayout_NZ2DN;    elsif code == 30 then return TileDataLayout_NZ2ZN;    else return TileDataLayout_NORM;    end;end;
pure func TileDataLayoutCodeOf(data_layout: TileDataLayout) => bits(5)begin    case data_layout of        when TileDataLayout_NORM => return Zeros{5};        when TileDataLayout_ND2DN => return Zeros{5} + 1;        when TileDataLayout_ND2ZN => return Zeros{5} + 3;        when TileDataLayout_ND2NZ => return Zeros{5} + 4;        when TileDataLayout_DN2ND => return Zeros{5} + 6;        when TileDataLayout_DN2ZN => return Zeros{5} + 8;        when TileDataLayout_DN2NZ => return Zeros{5} + 9;        when TileDataLayout_ZN2ND => return Zeros{5} + 17;        when TileDataLayout_ZN2DN => return Zeros{5} + 18;        when TileDataLayout_ZN2NZ => return Zeros{5} + 20;        when TileDataLayout_ND2M32 => return Zeros{5} + 21;        when TileDataLayout_ND2M16 => return Zeros{5} + 22;        when TileDataLayout_ND2N8 => return Zeros{5} + 23;        when TileDataLayout_M322ND => return Zeros{5} + 24;        when TileDataLayout_M162ND => return Zeros{5} + 25;        when TileDataLayout_N82ND => return Zeros{5} + 26;        when TileDataLayout_NZ2ND => return Zeros{5} + 27;        when TileDataLayout_NZ2DN => return Zeros{5} + 28;        when TileDataLayout_NZ2ZN => return Zeros{5} + 30;    end;end;
pure func TileDataLayoutIsCubeConversion(data_layout: bits(5)) => booleanbegin    let code = UInt(data_layout);    return 21 <= code && code <= 26;end;
pure func TileDataLayoutConversionIsLoad(data_layout: bits(5)) => booleanbegin    let code = UInt(data_layout);    return 21 <= code && code <= 23;end;
pure func TileDataLayoutConversionIsStore(data_layout: bits(5)) => booleanbegin    let code = UInt(data_layout);    return 24 <= code && code <= 26;end;
pure func TileDataLayoutCubeLayout(data_layout: bits(5)) => TileLayoutbegin    assert TileDataLayoutIsCubeConversion(data_layout);    let code = UInt(data_layout);    if code == 21 || code == 24 then        return TileLayout_CUBE_M32;    elsif code == 22 || code == 25 then        return TileLayout_CUBE_M16;    else        return TileLayout_CUBE_N8;    end;end;
readonly func CurrentBundleDataLayout() => TileDataLayoutbegin    return TileDataLayoutOfCode(_BundleDataAttributes.data_layout);end;
readonly func TileDataLayoutCodeSupported(data_layout: bits(5)) => booleanbegin    // Every assigned PTO Layout code is architectural.  Profiles cannot    // downgrade an assigned transform into an opaque implementation layout.    return TileDataLayoutCodeAccepted(data_layout);end;
pure func TileDataLayoutSourceLayout(data_layout: TileDataLayout) => TileLayoutbegin    case data_layout of        when TileDataLayout_NORM,             TileDataLayout_ND2DN,             TileDataLayout_ND2ZN,             TileDataLayout_ND2NZ => return TileLayout_RowMajor;        when TileDataLayout_DN2ND,             TileDataLayout_DN2ZN,             TileDataLayout_DN2NZ => return TileLayout_ColumnMajor;        when TileDataLayout_ZN2ND,             TileDataLayout_ZN2DN,             TileDataLayout_ZN2NZ => return TileLayout_ZN;        when TileDataLayout_NZ2ND,             TileDataLayout_NZ2DN,             TileDataLayout_NZ2ZN => return TileLayout_NZ;        when TileDataLayout_ND2M32,             TileDataLayout_ND2M16,             TileDataLayout_ND2N8,             TileDataLayout_M322ND,             TileDataLayout_M162ND,             TileDataLayout_N82ND => unreachable;    end;end;
pure func TileDataLayoutDestinationLayout(    data_layout: TileDataLayout) => TileLayoutbegin    case data_layout of        when TileDataLayout_NORM,             TileDataLayout_DN2ND,             TileDataLayout_ZN2ND,             TileDataLayout_NZ2ND => return TileLayout_RowMajor;        when TileDataLayout_ND2DN,             TileDataLayout_ZN2DN,             TileDataLayout_NZ2DN => return TileLayout_ColumnMajor;        when TileDataLayout_ND2ZN,             TileDataLayout_DN2ZN,             TileDataLayout_NZ2ZN => return TileLayout_ZN;        when TileDataLayout_ND2NZ,             TileDataLayout_DN2NZ,             TileDataLayout_ZN2NZ => return TileLayout_NZ;        when TileDataLayout_ND2M32,             TileDataLayout_ND2M16,             TileDataLayout_ND2N8,             TileDataLayout_M322ND,             TileDataLayout_M162ND,             TileDataLayout_N82ND => unreachable;    end;end;
readonly func CurrentBundleTileSourceLayout() => TileLayoutbegin    return TileDataLayoutSourceLayout(CurrentBundleDataLayout());end;
readonly func CurrentBundleTileLayout() => TileLayoutbegin    return TileDataLayoutDestinationLayout(CurrentBundleDataLayout());end;
func AdvertiseTileDataLayout(data_layout: bits(5))begin    assert TileDataLayoutCodeAccepted(data_layout);    _TileDataLayoutCapabilities[UInt(data_layout)] = '1';end;
readonly func CurrentBundleDataTypeCode() => bits(5)begin    return _BundleDataAttributes.data_type;end;
readonly func CurrentBundleCanonicalize() => booleanbegin    return _BundleDataAttributes.canonicalize;end;
func SetBundleDataAttributeState(    data_type: bits(5), data_layout: bits(5), pad_value: bits(2),    comparison_mode: bits(3), rounding_mode: bits(3), saturating: boolean,    canonicalize: boolean)begin    if !BundleDataTypeFieldValid(data_type) ||       !TileDataLayoutCodeSupported(data_layout) then        SetFault(Fault_TileLegality, ReadTPC());        return;    end;    _BundleDataAttributes.data_type_present = TRUE;    _BundleDataAttributes.data_type = data_type;    _BundleDataAttributes.data_layout = data_layout;    _BundleDataAttributes.pad_value = pad_value;    _BundleDataAttributes.comparison_mode = comparison_mode;    _BundleDataAttributes.rounding_mode = rounding_mode;    _BundleDataAttributes.saturating = saturating;    _BundleDataAttributes.canonicalize = canonicalize;end;

Architecture behavior

This internal model unit is documented through its normative ASL/NDF owners and validation evidence; it has no reader-guide migration target.

NDF clauses

Bodies come from owning ASL. Dragging or buttons change only this page-session view order.

    1. surfaceBLOCK
    2. ownerPTO-BLOCK-MODEL-STATE-CONTROL-STATE
    3. categoryREQ-BUNDLE-STATE
    4. case001

    Normative contract

    contract · L1 · accepted

    Architecture-visible bundle-control state MUST be the state defined by [[PTO-STATE-BLOCK-CONTROL]].

    Sources and references
    Complete stable ID
    PTO-REQ-BUNDLE-STATE-001
    Source path
    asl/block/model/state/control-state.asl
    Affected units
    PTO-BLOCK-MODEL-STATE-CONTROL-STATE
    Source SHA-256
    49a31597b44f56dd3131df58f663871be6d828c06cc33729522abd4988a12675
    Clause SHA-256
    dd0eb91876165dfbf62dc34fc411cd1264bce82eb6ed530cfa01d03d937e2dbd
    Open exact canonical source ↗

Evidence index

13 matching entries

Executable evidence2
  • PTO-BLOCK-MODEL-STATE-CONTROL-STATE compiles as an independent normative unit
    1. surfaceBLOCK
    2. ownerPTO-BLOCK-MODEL-STATE-CONTROL-STATE
    3. categorySTATIC-INVARIANT
    4. case001
    Show exact test source
    Sources and references
    Complete stable ID
    PTO-AVS-BLOCK-MODEL-STATE-CONTROL-STATE-STATIC-001
    Path
    tests/asl/block/model/state/control-state/block-static-control-state-contract-001.asl
    Kind / role
    static-invariant
    Requirements
    PTO-REQ-BUNDLE-STATE-001
    Pass condition
    the complete model and this unit's static invariant compile
    SHA-256
    7e3838ed87026a2aa6075a1664fd63dc3e801114699b979dd9a4ee7c41210e40
    Open exact source ↗ for PTO-AVS-BLOCK-MODEL-STATE-CONTROL-STATE-STATIC-001
  • Covers Bundle Configuration State.
    1. surfaceBLOCK
    2. ownerPTO-BLOCK-MODEL-STATE-CONTROL-STATE
    3. categorySTATE-TRANSITION
    4. case001
    Show exact test source
    Sources and references
    Complete stable ID
    PTO-AVS-BLOCK-TESTBUNDLECONFIGURATIONSTATE-STATE-TRANSITION-001
    Path
    tests/asl/block/model/state/control-state/block-state-configuration-001.asl
    Kind / role
    state-transition
    Pass condition
    TestBundleConfigurationState completes without assertion failure
    SHA-256
    19f982219f8d9c6c9aa43d82fc49841014ec677cb8e2de284cc1d7bf50250966
    Open exact source ↗ for PTO-AVS-BLOCK-TESTBUNDLECONFIGURATIONSTATE-STATE-TRANSITION-001
Commit-scoped evidence5
  • spec/evidence/release-traceability-readiness.json · closedPTO-EVIDENCE-RELEASE-TRACEABILITY
    Sources and references
    Complete stable ID
    PTO-EVIDENCE-RELEASE-TRACEABILITY
    Path
    spec/evidence/release-traceability-readiness.json
    Kind / role
    ASL/NDF/documentation/AVS traceability
    SHA-256
    c7327021d39dc67ac5564bc55073b3870a397d79ac8d9648284d56e33bc14a3e
    Open exact source ↗ for PTO-EVIDENCE-RELEASE-TRACEABILITY
  • spec/evidence/instruction-contract-closure.json · closedPTO-EVIDENCE-INSTRUCTION-CONTRACT-CLOSURE
    Sources and references
    Complete stable ID
    PTO-EVIDENCE-INSTRUCTION-CONTRACT-CLOSURE
    Path
    spec/evidence/instruction-contract-closure.json
    Kind / role
    mnemonic and encoding contract closure
    SHA-256
    3ef2bb62421c79dff8fa77a1c7983923b523244b8090812883ef81286ca8106a
    Open exact source ↗ for PTO-EVIDENCE-INSTRUCTION-CONTRACT-CLOSURE
  • spec/evidence/architecture-readiness.json · openPTO-EVIDENCE-ARCHITECTURE-READINESS
    Sources and references
    Complete stable ID
    PTO-EVIDENCE-ARCHITECTURE-READINESS
    Path
    spec/evidence/architecture-readiness.json
    Kind / role
    architecture maturity and blockers
    SHA-256
    4b0b85199101251bea744e0f3591cc31906909dc80d5ab651c417a936036a004
    Open exact source ↗ for PTO-EVIDENCE-ARCHITECTURE-READINESS
  • spec/evidence/release-gate-readiness.json · ready-for-exact-head-verificationPTO-EVIDENCE-RELEASE-GATE-READINESS
    Sources and references
    Complete stable ID
    PTO-EVIDENCE-RELEASE-GATE-READINESS
    Path
    spec/evidence/release-gate-readiness.json
    Kind / role
    exact-head gate readiness
    SHA-256
    a0f4d2b6920c08981ea55fd8ef820708a40d4feb5402c5150e8e9ab532d84ce0
    Open exact source ↗ for PTO-EVIDENCE-RELEASE-GATE-READINESS
  • spec/release-manifest.json · draftPTO-EVIDENCE-RELEASE-MANIFEST
    Sources and references
    Complete stable ID
    PTO-EVIDENCE-RELEASE-MANIFEST
    Path
    spec/release-manifest.json
    Kind / role
    release content and encoding fingerprints
    SHA-256
    1a64c109ed7a90351c41e2a418b3c0ebaf8ad975838986d2101385186b85c0d8
    Open exact source ↗ for PTO-EVIDENCE-RELEASE-MANIFEST
Decision history6
  • Define the PTO architectural state contract · accepted
    1. decision recordADR
    2. case0008

    Decision record

    Loading ADR-0008…

    Sources and references
    Complete stable ID
    ADR-0008
    Path
    docs/status/decisions/0008-architectural-state-contract.md
    Affected units
    PTO-ARCH-OVERVIEW-ARCHITECTURE, PTO-ARCH-PROGRAMMING-MODEL-EXECUTION-CONTEXT, PTO-ARCH-PROGRAMMING-MODEL-PREDICATE-REGISTERS, PTO-ARCH-PROGRAMMING-MODEL-SCALAR-REGISTERS, PTO-ARCH-PROGRAMMING-MODEL-SHARED-TILE-REGISTERS, PTO-ARCH-PROGRAMMING-MODEL-TILE-REGISTERS, PTO-ARCH-STATE-DEFINEDNESS, PTO-ARCH-STATE-PROGRAM-COUNTER, PTO-ARCH-STATE-TILE-DESCRIPTOR, PTO-ARCH-STATE-TRAP-CONTEXT, PTO-ARCH-SYSTEM-REGISTERS-ACCESS-CONTROL, PTO-ARCH-SYSTEM-REGISTERS-ADDRESSING, PTO-ARCH-SYSTEM-REGISTERS-CONTEXT, PTO-BLOCK-B-IOR, PTO-BLOCK-B-IOS, PTO-BLOCK-B-IOT, PTO-BLOCK-MODEL-STATE-BINDING-STATE, PTO-BLOCK-MODEL-STATE-CONTROL-STATE, PTO-BLOCK-MODEL-STATE-DESCRIPTOR-STATE, PTO-BLOCK-MODEL-STATE-TYPES, PTO-TILE-MODEL-STATE-LOCAL-REGISTERS
    Affected NDF
    PTO-ARCH-STATE-CLOSURE-001, PTO-REQ-BUNDLE-STATE-001, PTO-REQ-SHARED-TILE-001, PTO-REQ-STATE-001, PTO-REQ-TILE-001, PTO-TILE-CAPACITY-PER-PE
    SHA-256
    9c33e1b57d0f04c4d808ee61aaf975187a3dbd32a071329ca65a916dc0e614ca
    Open exact decision source ↗ for ADR-0008
  • scalar TPC and execution status · accepted
    1. decision recordADR
    2. case0009

    Decision record

    Loading ADR-0009…

    Sources and references
    Complete stable ID
    ADR-0009
    Path
    docs/status/decisions/0009-scalar-tpc-and-execution-status.md
    Affected units
    PTO-ARCH-PROGRAMMING-MODEL-EXECUTION-CONTEXT, PTO-ARCH-STATE-PROGRAM-COUNTER, PTO-BLOCK-BSTART, PTO-BLOCK-BSTOP, PTO-BLOCK-C-BSTOP, PTO-BLOCK-L-BSTOP, PTO-BLOCK-MODEL-STATE-BARG, PTO-BLOCK-MODEL-STATE-CONTROL-STATE
    Affected NDF
    PTO-BARG-CONTINUATION-001, PTO-BSTART-DECISION-BINDING-001, PTO-BSTOP-DECISION-BINDING-001, PTO-C-BSTOP-DECISION-BINDING-001, PTO-L-BSTOP-DECISION-BINDING-001, PTO-REQ-BUNDLE-STATE-001, PTO-REQ-STATE-001
    SHA-256
    158daf8c726f443cb35afc2e6218d64f0a7da1a68cb3aa9624472baf25467a11
    Open exact decision source ↗ for ADR-0009
  • Bundle operation descriptor and transactional commit · accepted
    1. decision recordADR
    2. case0022

    Decision record

    Loading ADR-0022…

    Sources and references
    Complete stable ID
    ADR-0022
    Path
    docs/status/decisions/0022-bundle-operation-descriptor-and-commit.md
    Affected units
    PTO-BLOCK-B-CATR, PTO-BLOCK-B-DATR, PTO-BLOCK-B-DIM, PTO-BLOCK-B-FPATR, PTO-BLOCK-B-IOR, PTO-BLOCK-B-IOS, PTO-BLOCK-B-IOT, PTO-BLOCK-MODEL-COMMIT-EFFECTS, PTO-BLOCK-MODEL-COMMIT-VALIDATION, PTO-BLOCK-MODEL-LIFECYCLE-BEGIN, PTO-BLOCK-MODEL-LIFECYCLE-ENTER-STOP, PTO-BLOCK-MODEL-OPERANDS-SCALAR-BINDINGS, PTO-BLOCK-MODEL-OPERANDS-SHARED-BINDINGS, PTO-BLOCK-MODEL-OPERANDS-TILE-BINDINGS, PTO-BLOCK-MODEL-SCHEMA-ATTRIBUTES, PTO-BLOCK-MODEL-SCHEMA-DIMENSIONS, PTO-BLOCK-MODEL-SCHEMA-HEADER, PTO-BLOCK-MODEL-STATE-BINDING-STATE, PTO-BLOCK-MODEL-STATE-CONTROL-STATE, PTO-BLOCK-MODEL-STATE-DESCRIPTOR-STATE, PTO-BLOCK-MODEL-STATE-TYPES
    Affected NDF
    PTO-B-CATR-CONTROL-001, PTO-B-DATR-FIELDS-001, PTO-B-DIM-WRITE-001, PTO-B-FPATR-MATRIX-POSTPROCESS-001, PTO-B-IOR-BINDING-001, PTO-B-IOS-SHARED-STATE-001, PTO-B-IOT-STREAM-001, PTO-REQ-BUNDLE-STATE-001
    SHA-256
    f129ec54af4630d28bf6c94e5829a3cafe904706fdd9f59ca65ee62cb511ad47
    Open exact decision source ↗ for ADR-0022
  • Bundle-command totality and PTO-v0 profile boundaries · accepted
    1. decision recordADR
    2. case0032

    Decision record

    Loading ADR-0032…

    Sources and references
    Complete stable ID
    ADR-0032
    Path
    docs/status/decisions/0032-bundle-command-totality-and-profile-boundaries.md
    Affected units
    PTO-BLOCK-B-CATR, PTO-BLOCK-B-DATR, PTO-BLOCK-B-DIM, PTO-BLOCK-B-FPATR, PTO-BLOCK-B-HINT, PTO-BLOCK-B-IOR, PTO-BLOCK-B-IOS, PTO-BLOCK-B-IOT, PTO-BLOCK-BSTART, PTO-BLOCK-BSTART-CALL, PTO-BLOCK-BSTART-FP, PTO-BLOCK-BSTART-GMOV, PTO-BLOCK-BSTART-ICALL, PTO-BLOCK-BSTART-MGATHER, PTO-BLOCK-BSTART-MGATHER-CAS, PTO-BLOCK-BSTART-MGATHER-MASK, PTO-BLOCK-BSTART-MSCATTER, PTO-BLOCK-BSTART-MSCATTER-MASK, PTO-BLOCK-BSTART-SFU, PTO-BLOCK-BSTART-STD, PTO-BLOCK-BSTART-SYS, PTO-BLOCK-BSTART-TEPL, PTO-BLOCK-BSTART-TGEMV, PTO-BLOCK-BSTART-TGEMV-ACC, PTO-BLOCK-BSTART-TGEMV-BIAS, PTO-BLOCK-BSTART-TGEMVMX, PTO-BLOCK-BSTART-TGEMVMX-ACC, PTO-BLOCK-BSTART-TGEMVMX-BIAS, PTO-BLOCK-BSTART-TLOAD, PTO-BLOCK-BSTART-TMATMUL, PTO-BLOCK-BSTART-TMATMUL-ACC, PTO-BLOCK-BSTART-TMATMUL-BIAS, PTO-BLOCK-BSTART-TMATMULMX, PTO-BLOCK-BSTART-TMATMULMX-ACC, PTO-BLOCK-BSTART-TMATMULMX-BIAS, PTO-BLOCK-BSTART-TMOV, PTO-BLOCK-BSTART-TPREFETCH, PTO-BLOCK-BSTART-TSTORE, PTO-BLOCK-BSTART-VEC, PTO-BLOCK-BSTOP, PTO-BLOCK-C-B-DIMI, PTO-BLOCK-C-BSTART, PTO-BLOCK-C-BSTART-FP, PTO-BLOCK-C-BSTART-STD, PTO-BLOCK-C-BSTART-SYS, PTO-BLOCK-C-BSTOP, PTO-BLOCK-ERCOV, PTO-BLOCK-ESAVE, PTO-BLOCK-FENTRY, PTO-BLOCK-FEXIT, PTO-BLOCK-FRET-RA, PTO-BLOCK-FRET-STK, PTO-BLOCK-HL-QMT, PTO-BLOCK-HL-QPOP, PTO-BLOCK-HL-QPUSH, PTO-BLOCK-L-BSTOP, PTO-BLOCK-MCOPY, PTO-BLOCK-MODEL-COMMIT-EFFECTS, PTO-BLOCK-MODEL-COMMIT-VALIDATION, PTO-BLOCK-MODEL-DISPATCH-COMMANDS, PTO-BLOCK-MODEL-DISPATCH-COMPARISON-SCHEMA, PTO-BLOCK-MODEL-DISPATCH-CUBE-DESTINATION, PTO-BLOCK-MODEL-DISPATCH-CUBE-TMATMUL, PTO-BLOCK-MODEL-DISPATCH-DECODE, PTO-BLOCK-MODEL-DISPATCH-DESCRIPTOR-LEGALITY, PTO-BLOCK-MODEL-DISPATCH-DESTINATION-SHAPE, PTO-BLOCK-MODEL-DISPATCH-EXPANSION-SCHEMA, PTO-BLOCK-MODEL-DISPATCH-GENERATION-SCHEMA, PTO-BLOCK-MODEL-DISPATCH-HISTOGRAM-SCHEMA, PTO-BLOCK-MODEL-DISPATCH-NUMERIC-CONTROL, PTO-BLOCK-MODEL-DISPATCH-QUANTIZATION-SCHEMA, PTO-BLOCK-MODEL-DISPATCH-REDUCTION-SCHEMA, PTO-BLOCK-MODEL-DISPATCH-SCALAR-SCHEMA, PTO-BLOCK-MODEL-DISPATCH-SHARED-TLSU, PTO-BLOCK-MODEL-DISPATCH-SORTING-SCHEMA, PTO-BLOCK-MODEL-DISPATCH-START, PTO-BLOCK-MODEL-DISPATCH-TCVT-SCHEMA, PTO-BLOCK-MODEL-DISPATCH-TILE-EXECUTION, PTO-BLOCK-MODEL-DISPATCH-TILE-SCALAR-SCHEMA, PTO-BLOCK-MODEL-DISPATCH-TILE-SCHEMA, PTO-BLOCK-MODEL-DISPATCH-TLSU-GMOV, PTO-BLOCK-MODEL-DISPATCH-TLSU-LAYOUT-CONVERSION, PTO-BLOCK-MODEL-DISPATCH-TLSU-MGATHER, PTO-BLOCK-MODEL-DISPATCH-TLSU-MGATHER-CAS, PTO-BLOCK-MODEL-DISPATCH-TLSU-MGATHER-MASK, PTO-BLOCK-MODEL-DISPATCH-TLSU-MSCATTER, PTO-BLOCK-MODEL-DISPATCH-TLSU-MSCATTER-MASK, PTO-BLOCK-MODEL-DISPATCH-TLSU-PREFETCH, PTO-BLOCK-MODEL-DISPATCH-TOP-LEVEL, PTO-BLOCK-MODEL-FAULTS-ROLLBACK, PTO-BLOCK-MODEL-LIFECYCLE-BEGIN, PTO-BLOCK-MODEL-LIFECYCLE-ENTER-STOP, PTO-BLOCK-MODEL-LIFECYCLE-LIFETIME, PTO-BLOCK-MODEL-LIFECYCLE-RESET, PTO-BLOCK-MODEL-OPERANDS-SCALAR-BINDINGS, PTO-BLOCK-MODEL-OPERANDS-SHARED-BINDINGS, PTO-BLOCK-MODEL-OPERANDS-TILE-BINDINGS, PTO-BLOCK-MODEL-SCHEMA-ATTRIBUTES, PTO-BLOCK-MODEL-SCHEMA-DIMENSIONS, PTO-BLOCK-MODEL-SCHEMA-HEADER, PTO-BLOCK-MODEL-SCHEMA-PROFILE-ENCODING, PTO-BLOCK-MODEL-STATE-BARG, PTO-BLOCK-MODEL-STATE-BINDING-STATE, PTO-BLOCK-MODEL-STATE-CONTROL-STATE, PTO-BLOCK-MODEL-STATE-DESCRIPTOR-STATE, PTO-BLOCK-MODEL-STATE-TYPES, PTO-BLOCK-MSET, PTO-BLOCK-XB
    Affected NDF
    PTO-B-CATR-CONTROL-001, PTO-B-DATR-FIELDS-001, PTO-B-DIM-WRITE-001, PTO-B-FPATR-MATRIX-POSTPROCESS-001, PTO-B-HINT-LIFECYCLE-001, PTO-B-IOR-BINDING-001, PTO-B-IOS-SHARED-STATE-001, PTO-B-IOT-STREAM-001, PTO-BARG-CONTINUATION-001, PTO-BLOCK-ERCOV-RESERVED-001, PTO-BLOCK-ESAVE-RESERVED-001, PTO-BLOCK-MSET-FILL-001, PTO-BLOCK-XB-RESERVED-001, PTO-BSTART-CALL-DECISION-BINDING-001, PTO-BSTART-DECISION-BINDING-001, PTO-BSTART-FP-CONTROL-001, PTO-BSTART-GMOV-COLLECTIVE-001, PTO-BSTART-ICALL-DECISION-BINDING-001, PTO-BSTART-MGATHER-CAS-SCHEMA-001, PTO-BSTART-MGATHER-MASK-SCHEMA-001, PTO-BSTART-MGATHER-SCHEMA-001, PTO-BSTART-MSCATTER-MASK-SCHEMA-001, PTO-BSTART-MSCATTER-SCHEMA-001, PTO-BSTART-SFU-DECISION-BINDING-001, PTO-BSTART-STD-CONTROL-001, PTO-BSTART-SYS-CONTROL-001, PTO-BSTART-TEPL-DECISION-BINDING-001, PTO-BSTART-TGEMV-ACC-CONTRACT-001, PTO-BSTART-TGEMV-BIAS-CONTRACT-001, PTO-BSTART-TGEMV-CONTRACT-001, PTO-BSTART-TGEMVMX-ACC-CONTRACT-001, PTO-BSTART-TGEMVMX-BIAS-CONTRACT-001, PTO-BSTART-TGEMVMX-CONTRACT-001, PTO-BSTART-TLOAD-CUBE-001, PTO-BSTART-TLOAD-MEMORY-001, PTO-BSTART-TMATMUL-ACC-CONTRACT-001, PTO-BSTART-TMATMUL-BIAS-CONTRACT-001, PTO-BSTART-TMATMUL-CONTRACT-001, PTO-BSTART-TMATMULMX-ACC-CONTRACT-001, PTO-BSTART-TMATMULMX-BIAS-CONTRACT-001, PTO-BSTART-TMATMULMX-CONTRACT-001, PTO-BSTART-TMOV-SHARED-001, PTO-BSTART-TPREFETCH-MEMORY-001, PTO-BSTART-TSTORE-CUBE-001, PTO-BSTART-TSTORE-MEMORY-001, PTO-BSTART-VEC-DECISION-BINDING-001, PTO-BSTOP-DECISION-BINDING-001, PTO-C-BSTART-CONTROL-001, PTO-C-BSTART-FP-CONTROL-001, PTO-C-BSTART-STD-CONTROL-001, PTO-C-BSTART-SYS-CONTROL-001, PTO-C-BSTOP-DECISION-BINDING-001, PTO-CUBE-CELL-TRANSPORT-001, PTO-FENTRY-RESTARTABLE-FRAME-001, PTO-FEXIT-RESTARTABLE-FRAME-001, PTO-FRET-RA-RESTARTABLE-FRAME-001, PTO-FRET-STK-RESTARTABLE-FRAME-001, PTO-HL-QMT-GQM-001, PTO-HL-QPOP-GQM-001, PTO-HL-QPUSH-GQM-001, PTO-L-BSTOP-DECISION-BINDING-001, PTO-MCOPY-RESTART-001, PTO-REQ-BUNDLE-STATE-001
    SHA-256
    e1f91826817343c0977a565a91e495a15397b83fa2af227124f225821ffa54ae
    Open exact decision source ↗ for ADR-0032
  • Complete-Bundle B.IOR Schema and Defaults · accepted
    1. decision recordADR
    2. case0055

    Decision record

    Loading ADR-0055…

    Sources and references
    Complete stable ID
    ADR-0055
    Path
    docs/status/decisions/0055-complete-bundle-bior-schema-and-defaults.md
    Affected units
    PTO-BLOCK-B-IOR, PTO-BLOCK-BSTART-CALL, PTO-BLOCK-BSTART-FP, PTO-BLOCK-BSTART-GMOV, PTO-BLOCK-BSTART-ICALL, PTO-BLOCK-BSTART-MGATHER, PTO-BLOCK-BSTART-MGATHER-CAS, PTO-BLOCK-BSTART-MGATHER-MASK, PTO-BLOCK-BSTART-MSCATTER, PTO-BLOCK-BSTART-MSCATTER-MASK, PTO-BLOCK-BSTART-SFU, PTO-BLOCK-BSTART-STD, PTO-BLOCK-BSTART-SYS, PTO-BLOCK-BSTART-TEPL, PTO-BLOCK-BSTART-TGEMV, PTO-BLOCK-BSTART-TGEMV-ACC, PTO-BLOCK-BSTART-TGEMV-BIAS, PTO-BLOCK-BSTART-TGEMVMX, PTO-BLOCK-BSTART-TGEMVMX-ACC, PTO-BLOCK-BSTART-TGEMVMX-BIAS, PTO-BLOCK-BSTART-TLOAD, PTO-BLOCK-BSTART-TMATMUL, PTO-BLOCK-BSTART-TMATMUL-ACC, PTO-BLOCK-BSTART-TMATMUL-BIAS, PTO-BLOCK-BSTART-TMATMULMX, PTO-BLOCK-BSTART-TMATMULMX-ACC, PTO-BLOCK-BSTART-TMATMULMX-BIAS, PTO-BLOCK-BSTART-TMOV, PTO-BLOCK-BSTART-TPREFETCH, PTO-BLOCK-BSTART-TSTORE, PTO-BLOCK-BSTART-VEC, PTO-BLOCK-MODEL-COMMIT-EFFECTS, PTO-BLOCK-MODEL-COMMIT-VALIDATION, PTO-BLOCK-MODEL-DISPATCH-COMMANDS, PTO-BLOCK-MODEL-DISPATCH-COMPARISON-SCHEMA, PTO-BLOCK-MODEL-DISPATCH-CUBE-DESTINATION, PTO-BLOCK-MODEL-DISPATCH-CUBE-TMATMUL, PTO-BLOCK-MODEL-DISPATCH-DECODE, PTO-BLOCK-MODEL-DISPATCH-DESCRIPTOR-LEGALITY, PTO-BLOCK-MODEL-DISPATCH-DESTINATION-SHAPE, PTO-BLOCK-MODEL-DISPATCH-EXPANSION-SCHEMA, PTO-BLOCK-MODEL-DISPATCH-GENERATION-SCHEMA, PTO-BLOCK-MODEL-DISPATCH-HISTOGRAM-SCHEMA, PTO-BLOCK-MODEL-DISPATCH-NUMERIC-CONTROL, PTO-BLOCK-MODEL-DISPATCH-QUANTIZATION-SCHEMA, PTO-BLOCK-MODEL-DISPATCH-REDUCTION-SCHEMA, PTO-BLOCK-MODEL-DISPATCH-SCALAR-SCHEMA, PTO-BLOCK-MODEL-DISPATCH-SHARED-TLSU, PTO-BLOCK-MODEL-DISPATCH-SORTING-SCHEMA, PTO-BLOCK-MODEL-DISPATCH-START, PTO-BLOCK-MODEL-DISPATCH-TCVT-SCHEMA, PTO-BLOCK-MODEL-DISPATCH-TILE-EXECUTION, PTO-BLOCK-MODEL-DISPATCH-TILE-SCALAR-SCHEMA, PTO-BLOCK-MODEL-DISPATCH-TILE-SCHEMA, PTO-BLOCK-MODEL-DISPATCH-TLSU-GMOV, PTO-BLOCK-MODEL-DISPATCH-TLSU-LAYOUT-CONVERSION, PTO-BLOCK-MODEL-DISPATCH-TLSU-MGATHER, PTO-BLOCK-MODEL-DISPATCH-TLSU-MGATHER-CAS, PTO-BLOCK-MODEL-DISPATCH-TLSU-MGATHER-MASK, PTO-BLOCK-MODEL-DISPATCH-TLSU-MSCATTER, PTO-BLOCK-MODEL-DISPATCH-TLSU-MSCATTER-MASK, PTO-BLOCK-MODEL-DISPATCH-TLSU-PREFETCH, PTO-BLOCK-MODEL-DISPATCH-TOP-LEVEL, PTO-BLOCK-MODEL-FAULTS-ROLLBACK, PTO-BLOCK-MODEL-LIFECYCLE-BEGIN, PTO-BLOCK-MODEL-LIFECYCLE-ENTER-STOP, PTO-BLOCK-MODEL-LIFECYCLE-LIFETIME, PTO-BLOCK-MODEL-LIFECYCLE-RESET, PTO-BLOCK-MODEL-OPERANDS-SCALAR-BINDINGS, PTO-BLOCK-MODEL-OPERANDS-SHARED-BINDINGS, PTO-BLOCK-MODEL-OPERANDS-TILE-BINDINGS, PTO-BLOCK-MODEL-SCHEMA-ATTRIBUTES, PTO-BLOCK-MODEL-SCHEMA-DIMENSIONS, PTO-BLOCK-MODEL-SCHEMA-HEADER, PTO-BLOCK-MODEL-SCHEMA-PROFILE-ENCODING, PTO-BLOCK-MODEL-STATE-BARG, PTO-BLOCK-MODEL-STATE-BINDING-STATE, PTO-BLOCK-MODEL-STATE-CONTROL-STATE, PTO-BLOCK-MODEL-STATE-DESCRIPTOR-STATE, PTO-BLOCK-MODEL-STATE-TYPES
    Affected NDF
    PTO-B-IOR-BINDING-001, PTO-BARG-CONTINUATION-001, PTO-BSTART-CALL-DECISION-BINDING-001, PTO-BSTART-FP-CONTROL-001, PTO-BSTART-GMOV-COLLECTIVE-001, PTO-BSTART-ICALL-DECISION-BINDING-001, PTO-BSTART-MGATHER-CAS-SCHEMA-001, PTO-BSTART-MGATHER-MASK-SCHEMA-001, PTO-BSTART-MGATHER-SCHEMA-001, PTO-BSTART-MSCATTER-MASK-SCHEMA-001, PTO-BSTART-MSCATTER-SCHEMA-001, PTO-BSTART-SFU-DECISION-BINDING-001, PTO-BSTART-STD-CONTROL-001, PTO-BSTART-SYS-CONTROL-001, PTO-BSTART-TEPL-DECISION-BINDING-001, PTO-BSTART-TGEMV-ACC-CONTRACT-001, PTO-BSTART-TGEMV-BIAS-CONTRACT-001, PTO-BSTART-TGEMV-CONTRACT-001, PTO-BSTART-TGEMVMX-ACC-CONTRACT-001, PTO-BSTART-TGEMVMX-BIAS-CONTRACT-001, PTO-BSTART-TGEMVMX-CONTRACT-001, PTO-BSTART-TLOAD-CUBE-001, PTO-BSTART-TLOAD-MEMORY-001, PTO-BSTART-TMATMUL-ACC-CONTRACT-001, PTO-BSTART-TMATMUL-BIAS-CONTRACT-001, PTO-BSTART-TMATMUL-CONTRACT-001, PTO-BSTART-TMATMULMX-ACC-CONTRACT-001, PTO-BSTART-TMATMULMX-BIAS-CONTRACT-001, PTO-BSTART-TMATMULMX-CONTRACT-001, PTO-BSTART-TMOV-SHARED-001, PTO-BSTART-TPREFETCH-MEMORY-001, PTO-BSTART-TSTORE-CUBE-001, PTO-BSTART-TSTORE-MEMORY-001, PTO-BSTART-VEC-DECISION-BINDING-001, PTO-REQ-BUNDLE-STATE-001
    SHA-256
    d84224ee1980cb16a6c4efb6ce3c5c2649d5db27002e7e6429850da189a2cdff
    Open exact decision source ↗ for ADR-0055
  • B.SUBVIEW and B.ASSEMBLE range-modifier association · accepted
    1. decision recordADR
    2. case0098

    Decision record

    Loading ADR-0098…

    Sources and references
    Complete stable ID
    ADR-0098
    Path
    docs/status/decisions/0098-b-range-modifiers.md
    Affected units
    PTO-ARCH-PROFILE-RESET, PTO-BLOCK-B-IOT, PTO-BLOCK-B-IOS, PTO-BLOCK-B-SUBVIEW, PTO-BLOCK-B-ASSEMBLE, PTO-BLOCK-MODEL-DISPATCH-COMMANDS, PTO-BLOCK-MODEL-OPERANDS-RANGE-MODIFIERS, PTO-BLOCK-MODEL-OPERANDS-SHARED-BINDINGS, PTO-BLOCK-MODEL-OPERANDS-TILE-BINDINGS, PTO-BLOCK-MODEL-STATE-CONTROL-STATE, PTO-BLOCK-MODEL-STATE-DESCRIPTOR-STATE, PTO-BLOCK-MODEL-STATE-TYPES, PTO-ARCH-DATA-TYPES-TRAP-CONTEXT, PTO-ARCH-PROFILE-REFERENCE-PROFILE, PTO-ARCH-PROFILE-TRAP-CONTEXT-RECOVERY, PTO-ARCH-STATE-TRAP-CONTEXT, PTO-BLOCK-MODEL-DISPATCH-TILE-EXECUTION, PTO-BLOCK-MODEL-DISPATCH-TILE-SCHEMA, PTO-BLOCK-MODEL-FAULTS-ROLLBACK, PTO-BLOCK-MODEL-LIFECYCLE-RESET, PTO-BLOCK-MODEL-OPERANDS-LOCAL-GENERATION, PTO-BLOCK-MODEL-OPERANDS-SHARED-GENERATION, PTO-BLOCK-MODEL-OPERANDS-PORTABLE-CARRIERS, PTO-BLOCK-MODEL-OPERANDS-SUBVIEW-DESCRIPTOR, PTO-BLOCK-MODEL-STATE-SHARED-GENERATION, PTO-TILE-MODEL-LEGALITY-MATRIX-POSTPROCESS
    Affected NDF
    PTO-B-IOT-STREAM-001, PTO-B-IOS-SHARED-STATE-001, PTO-B-SUBVIEW-RANGE-001, PTO-B-ASSEMBLE-RANGE-001, PTO-B-SUBVIEW-DESCRIPTOR-001, PTO-BLOCK-TILE-OPERATION-APPLICABILITY-001, PTO-B-ASSEMBLE-LOCAL-GENERATION-001, PTO-B-ASSEMBLE-SHARED-GENERATION-001, PTO-B-ASSEMBLE-SHARED-STANDALONE-001, PTO-B-ASSEMBLE-CONSUMER-READINESS-001, PTO-B-ASSEMBLE-SPECULATION-001, PTO-B-ASSEMBLE-PRODUCER-EFFECT-ELIGIBILITY-001
    SHA-256
    e194ccc6b6922fd4b65066b533f5e4b0eba094e099970059bca8e25b4e466fba
    Open exact decision source ↗ for ADR-0098

Unit metadata

Open 4 generated metadata fields
id
PTO-BLOCK-MODEL-STATE-CONTROL-STATE
surface
block
classification
[
  "model",
  "state",
  "control-state"
]
depends_on
[
  "PTO-BLOCK-MODEL-STATE-TYPES"
]
Open generated traceability record
{
  "classification": [
    "model",
    "state",
    "control-state"
  ],
  "documentation": "docs/block/model/state/control-state.md",
  "id": "PTO-BLOCK-MODEL-STATE-CONTROL-STATE",
  "mnemonic": null,
  "readiness_subjects": [
    "ADR-0008",
    "ADR-0009",
    "ADR-0022",
    "ADR-0032",
    "ADR-0055",
    "ADR-0098"
  ],
  "semantic_tests": [
    "PTO-AVS-BLOCK-TESTBUNDLECONFIGURATIONSTATE-STATE-TRANSITION-001"
  ],
  "source": "asl/block/model/state/control-state.asl",
  "surface": "block",
  "tests": [
    "PTO-AVS-BLOCK-MODEL-STATE-CONTROL-STATE-STATIC-001",
    "PTO-AVS-BLOCK-TESTBUNDLECONFIGURATIONSTATE-STATE-TRANSITION-001"
  ]
}

Sources and release identity

Show commit, paths, hashes, version, and canonical owners
Release
0.58.5 · Release candidate
Commit
7dc8b7e5b121d2b2499a2273bebff29e2cd86812
ASL SHA-256
49a31597b44f56dd3131df58f663871be6d828c06cc33729522abd4988a12675
Generated documentation
docs/block/model/state/control-state.md · embedded in this page
Documentation SHA-256
14ce7adb14c72497d0380362525588ad43ab8b9dca4e1910a5b2640a54811527

Exact owners