Purpose and scope
This unit defines the read and write helpers for the ordinary program counter, trap program counter, and bundle program counter views.
PTO-ARCH-STATE-PROGRAM-COUNTERThe complete ASL owner is shown directly below.
// PTO-UNIT: {"id":"PTO-ARCH-STATE-PROGRAM-COUNTER","surface":"arch","classification":["state","program-counter"],"depends_on":["PTO-ARCH-PROGRAMMING-MODEL-SCALAR-REGISTERS"]}readonly func ReadPC() => Wordbegin return _PC;end;
readonly func ReadTPC() => Wordbegin return _PC;end;
readonly func ReadBPC() => Wordbegin return _BPC;end;
func WritePC(value: Word)begin _PC = value;end;
func WriteTPC(value: Word)begin _PC = value;end;
func WriteBPC(value: Word)begin _BPC = value;end;
This unit defines the read and write helpers for the ordinary program counter, trap program counter, and bundle program counter views.
ReadPC and ReadTPC both return _PC. ReadBPC returns the separate _BPC state.
WritePC and WriteTPC both replace _PC, while WriteBPC replaces _BPC.
PC and TPC are two access names for the same stored Word; they are not independent counters in this model. BPC remains independent of that shared storage.
These helpers define storage access only. They do not by themselves define instruction sequencing, alignment checks, trap entry, bundle completion, or recovery eligibility.
After WriteTPC stores an aligned address, ReadPC observes the same value because both use _PC. A subsequent WriteBPC changes only the value returned by ReadBPC.
Bodies come from owning ASL. Dragging or buttons change only this page-session view order.
No NDF clause is attached to this unit.
10 matching entries
PTO-AVS-ARCH-PROGRAM-COUNTER-STATE-001tests/asl/arch/state/program-counter/arch-state-scalar-001.asl2f4c57a7182ce6707369e1cca732679572bcf318089ccea5f6188271736d8bdaPTO-AVS-ARCH-STATE-PROGRAM-COUNTER-STATIC-001tests/asl/arch/state/program-counter/arch-static-program-counter-contract-001.asl029beecc1a36ba671aa592a04339db70da60bd5aae48ff817c28d7490cc3047bPTO-EVIDENCE-RELEASE-TRACEABILITYPTO-EVIDENCE-RELEASE-TRACEABILITYspec/evidence/release-traceability-readiness.jsonc7327021d39dc67ac5564bc55073b3870a397d79ac8d9648284d56e33bc14a3ePTO-EVIDENCE-INSTRUCTION-CONTRACT-CLOSUREPTO-EVIDENCE-INSTRUCTION-CONTRACT-CLOSUREspec/evidence/instruction-contract-closure.json3ef2bb62421c79dff8fa77a1c7983923b523244b8090812883ef81286ca8106aPTO-EVIDENCE-ARCHITECTURE-READINESSPTO-EVIDENCE-ARCHITECTURE-READINESSspec/evidence/architecture-readiness.json4b0b85199101251bea744e0f3591cc31906909dc80d5ab651c417a936036a004PTO-EVIDENCE-RELEASE-GATE-READINESSPTO-EVIDENCE-RELEASE-GATE-READINESSspec/evidence/release-gate-readiness.jsona0f4d2b6920c08981ea55fd8ef820708a40d4feb5402c5150e8e9ab532d84ce0PTO-EVIDENCE-RELEASE-MANIFESTPTO-EVIDENCE-RELEASE-MANIFESTspec/release-manifest.json1a64c109ed7a90351c41e2a418b3c0ebaf8ad975838986d2101385186b85c0d8Loading ADR-0008…
ADR-0008docs/status/decisions/0008-architectural-state-contract.md9c33e1b57d0f04c4d808ee61aaf975187a3dbd32a071329ca65a916dc0e614caLoading ADR-0009…
ADR-0009docs/status/decisions/0009-scalar-tpc-and-execution-status.md158daf8c726f443cb35afc2e6218d64f0a7da1a68cb3aa9624472baf25467a11Loading ADR-0021…
ADR-0021docs/status/decisions/0021-scalar-pc-relative-and-return-address.md99c06f12ee973312181938672a9e059a0dc5a0c4e08effd666616b8006e5f5f9{
"classification": [
"state",
"program-counter"
],
"documentation": "docs/arch/state/program-counter.md",
"id": "PTO-ARCH-STATE-PROGRAM-COUNTER",
"mnemonic": null,
"readiness_subjects": [
"ADR-0008",
"ADR-0009",
"ADR-0021"
],
"semantic_tests": [
"PTO-AVS-ARCH-PROGRAM-COUNTER-STATE-001"
],
"source": "asl/arch/state/program-counter.asl",
"surface": "arch",
"tests": [
"PTO-AVS-ARCH-PROGRAM-COUNTER-STATE-001",
"PTO-AVS-ARCH-STATE-PROGRAM-COUNTER-STATIC-001"
]
}0.58.5 · Release candidate7dc8b7e5b121d2b2499a2273bebff29e2cd868123b5f7bad14ca62af5d776ae551ddf32b4b9f43fe25d96ce0fd31a59b44e1e8458aedcb21ce2bc653515041f92cf1de114cc48a840d3b3afa80a669aae3adf970asl/arch/state/program-counter.asl