BSTART¶
Ch 04
Block ISA — Block-structured Control Flow |
**Group:** BSTART |
**Forms:** 20 |
**Unique mnemonics:** 8
Block split instructions with CALL/RET/commit argument encoding.
Instructions¶
| Mnemonic | Assembly | Length | Decode | Description |
|---|---|---|---|---|
| BSTART CALL | BSTART.CALL <br_label>, <rt_label>, ->ra |
32 | — | Atomic fused call with independent call-target and return-target fields; transfers to the call block and writes ra. This exact aggregate is distinct from the generic bare-call form, which preserves ra and requires an adjacent SETRET or C.SETRET. |
| HL.BSTART CALL | HL.BSTART.CALL <br_label>, <rt_label>, ->ra |
48 | — | [48-bit HL.] Atomic fused call with independent call-target and return-target fields; transfers to the call block and writes ra. This exact aggregate is distinct from the generic bare-call form, which preserves ra and requires an adjacent SETRET or C.SETRET. |
| HL.BSTART.FP | HL.BSTART.FP FALL<, fixup_label> |
48 | — | [48-bit HL.] Terminates the current block and begins the next. |
| HL.BSTART.STD | HL.BSTART.STD FALL<, fixup_label> |
48 | — | [48-bit HL.] Terminates the current block and begins the next. |
| HL.BSTART.SYS | HL.BSTART.SYS FALL<, fixup_label> |
48 | — | [48-bit HL.] Terminates the current block and begins the next. |
| L.BSTART.FP | L.BSTART.FP DIRECT, <label> |
64 | — | Instruction from the BSTART group. |
| L.BSTART.STD | L.BSTART.STD COND, <label> |
64 | — | Instruction from the BSTART group. |
| L.BSTART.SYS | L.BSTART.SYS FALL<, fixup_label> |
64 | — | Instruction from the BSTART group. |