Skip to main content

PTO-ARCH-DATA-TYPES-MEMORY-OPERATIONS

PTO-ARCH-DATA-TYPES-MEMORY-OPERATIONS

ASL pseudocode

The complete ASL owner is shown directly below.

// PTO-UNIT: {"id":"PTO-ARCH-DATA-TYPES-MEMORY-OPERATIONS","surface":"arch","classification":["data-types","memory-operations"],"depends_on":["PTO-ARCH-DATA-TYPES-MEMORY-MODEL"]}type AddressUpdateMode of enumeration {    AddressUpdate_None,    AddressUpdate_PreIndex,    AddressUpdate_PostIndex};
type AtomicOperation of enumeration {    Atomic_SWAP,    Atomic_ADD,    Atomic_AND,    Atomic_OR,    Atomic_XOR,    Atomic_SMIN,    Atomic_SMAX,    Atomic_UMIN,    Atomic_UMAX};

Architecture behavior

purpose scope

Purpose and scope

This unit names the address-update and atomic-operation selectors shared by scalar and tile memory execution.

Keeping these selectors in one owner prevents individual instructions from inventing incompatible names for the same operation class.

concepts state

Concepts and visible state

  • AddressUpdateMode has AddressUpdate_None, AddressUpdate_PreIndex, and AddressUpdate_PostIndex.
  • AtomicOperation covers swap, add, bitwise AND/OR/XOR, signed min/max, and unsigned min/max.
  • The enumerations are typed inputs to executable helpers; they do not contain address calculation or read-modify-write behavior by themselves.
rules interactions

Rules and interactions

Pre-index and post-index are distinct selectors. The consuming instruction owner determines when the base update is computed and committed.

Signed and unsigned min/max have separate enum members: Atomic_SMIN, Atomic_SMAX, Atomic_UMIN, and Atomic_UMAX.

No enum member implies fault, ordering, size, or publication rules; those remain parameters and behavior of the consuming owner.

boundaries

Architectural boundaries

This unit has no fallback or implementation-defined selector. A decoder must map only to a declared member before execution.

Selector identity is portable, while support and legality for a particular instruction form remain with that instruction's current ASL owner.

example usage

illustrative reading example

An atomic instruction selecting Atomic_ADD still needs its own address, width, order, fault, and commit contract; this enumeration contributes only the operation identity.

Likewise, AddressUpdate_PostIndex identifies the mode but does not by itself state whether a failed access updates the base register.

NDF clauses

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

No NDF clause is attached to this unit.

Evidence index

6 matching entries

Executable evidence1
  • PTO-ARCH-DATA-TYPES-MEMORY-OPERATIONS compiles as an independent normative unit
    1. surfaceARCH
    2. ownerPTO-ARCH-DATA-TYPES-MEMORY-OPERATIONS
    3. categorySTATIC-INVARIANT
    4. case001
    Show exact test source
    Sources and references
    Complete stable ID
    PTO-AVS-ARCH-DATA-TYPES-MEMORY-OPERATIONS-STATIC-001
    Path
    tests/asl/arch/data-types/memory-operations/arch-static-memory-operations-contract-001.asl
    Kind / role
    static-invariant
    Pass condition
    the complete model and this unit's static invariant compile
    SHA-256
    8b451f6f410d2e40e83e06f6b9c7509dd4e7a4f9bf9784c4926ef52316f7149c
    Open exact source ↗ for PTO-AVS-ARCH-DATA-TYPES-MEMORY-OPERATIONS-STATIC-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

Unit metadata

Open 4 generated metadata fields
id
PTO-ARCH-DATA-TYPES-MEMORY-OPERATIONS
surface
arch
classification
[
  "data-types",
  "memory-operations"
]
depends_on
[
  "PTO-ARCH-DATA-TYPES-MEMORY-MODEL"
]
Open generated traceability record
{
  "classification": [
    "data-types",
    "memory-operations"
  ],
  "documentation": "docs/arch/data-types/memory-operations.md",
  "id": "PTO-ARCH-DATA-TYPES-MEMORY-OPERATIONS",
  "mnemonic": null,
  "readiness_subjects": [],
  "semantic_tests": [],
  "source": "asl/arch/data-types/memory-operations.asl",
  "surface": "arch",
  "tests": [
    "PTO-AVS-ARCH-DATA-TYPES-MEMORY-OPERATIONS-STATIC-001"
  ]
}

Sources and release identity

Show commit, paths, hashes, version, and canonical owners
Release
0.58.5 · Release candidate
Commit
7dc8b7e5b121d2b2499a2273bebff29e2cd86812
ASL SHA-256
4c5b08dd7c47caa6b1917185886bd8ea6929a9bf00c2b8578b86ead04e110b71
Generated documentation
docs/arch/data-types/memory-operations.md · embedded in this page
Documentation SHA-256
c227eb0ee9843190e32358ee3c8231774c07aa84e332b6178b535d6f6af62d33

Exact owners