Skip to main content

CSEL

CSEL snapshots three Reg5 sources, selects SrcL for a nonzero predicate or its optionally negated SrcR for zero, and publishes through the common scalar destination map.

PTO-SCALAR-CSEL

Assembly syntax

csel SrcP, SrcL, SrcR<.neg>, ->{t, u, Rd}

Assembler symbols

Assembly fields and architectural roles
FieldBitsSignednessArchitectural roleEncoded zero
RegDst5encoding-definedReg5 destination or discardEncoded zero discards the result.
SrcL5encoding-definedReg5 true-value sourceEncoded zero reads the architectural zero GPR.
SrcP5encoding-definedReg5 predicate sourceEncoded zero reads the architectural zero GPR and therefore selects the false value.
SrcR5encoding-definedReg5 false-value sourceEncoded zero reads the architectural zero GPR.
SrcRType2encoding-definedCSEL-specific false-source modifier selectorEncoded zero is an assigned unmodified false-source alias.

Encoding

Loading WaveDrom diagram… The encoding table and WaveJSON remain available below.

Encoding fields as an accessible table
Generated encoding fields for csel SrcP, SrcL, SrcR<.neg>, ->{t, u, Rd}
Decoded itemBit rangeValue
SrcP31:27variable
SrcRType26:25variable
SrcR24:20variable
SrcL19:15variable
Constant14:123'b000
RegDst11:7variable
Constant6:07'b1110111
WaveJSON source
{
  "reg": [
    {
      "bits": 7,
      "name": "7'b1110111"
    },
    {
      "bits": 5,
      "name": "RegDst"
    },
    {
      "bits": 3,
      "name": "3'b000"
    },
    {
      "bits": 5,
      "name": "SrcL"
    },
    {
      "bits": 5,
      "name": "SrcR"
    },
    {
      "bits": 2,
      "name": "SrcRType"
    },
    {
      "bits": 5,
      "name": "SrcP"
    }
  ],
  "config": {
    "bits": 32,
    "fontsize": 13,
    "hspace": 900,
    "lanes": 1,
    "offset": 0
  }
}

csel SrcP, SrcL, SrcR<.neg>, ->{t, u, Rd}

Instruction contract

Operands and parameters

SrcP
Reg5 predicate source
SrcL
Reg5 true-value source
SrcR
Reg5 false-value source
SrcRType
CSEL-specific false-source modifier selector
RegDst
Reg5 destination or discard

Constraints, checks, and faults

  • SrcP, SrcL, and SrcR codes 0..23 select absolute GPRs, 24..27 select T#1..T#4, and 28..31 select U#1..U#4 without consumption.
  • All four SrcRType values are assigned. Codes 00, 01, and 10 leave SrcR unchanged; code 11 negates the complete XLEN value modulo 2^PTO_XLEN.
  • RegDst codes 0 and 24..29 discard, codes 1..23 write GPRs, code 30 pushes U, and code 31 pushes T.
  • An unavailable selected T/U queue source raises Fault_IllegalInstruction before the destination effect and before TPC advances, including a source not selected by the predicate outcome.
  • CSEL raises no arithmetic, memory, alignment, permission, or control-flow exception.

State reads, writes, and result

  • Snapshot SrcP, SrcL, and SrcR before any destination effect. Only an all-zero SrcP is false; every nonzero bit pattern is true.
  • For a true predicate publish the complete snapshotted SrcL. For a false predicate publish the complete snapshotted SrcR after the CSEL-specific raw modifier; negation wraps modulo 2^PTO_XLEN and does not fault.
  • No memory, reservation, descriptor, numeric-status, block, privilege, branch-target, or other control state changes. Successful execution advances TPC by four bytes.
  • none
  • Read all three Reg5 sources eagerly and non-consumingly before the destination write, even when the predicate outcome does not select one value.
  • Publish the selected value, then advance TPC by four bytes.

ASL pseudocode

This Operation comes directly from the instruction owner; the page does not rewrite its behavior.

Decode source binding

readonly func InstructionContractOperation_CSEL()    => ScalarOperationbegin    return ScalarOperation_CSEL;end;
pure func InstructionContractRightModifier_CSEL(encoded: bits(2))    => ScalarRightModifierbegin    return DecodeScalarSelectRightModifier(encoded);end;

Operation source binding

readonly func InstructionContractHandler_CSEL()    => ScalarSemanticHandlerbegin    return ScalarHandler_ScalarConditionalSelect;end;
pure func InstructionContractFalseValue_CSEL(    right: Word,    encoded_modifier: bits(2))    => Wordbegin    let modifier = InstructionContractRightModifier_CSEL(encoded_modifier);    return ApplySelectModifier(right, modifier);end;
pure func InstructionContractResult_CSEL(    predicate: Word,    selected_true: Word,    selected_false: Word,    encoded_modifier: bits(2))    => Wordbegin    let prepared_false = InstructionContractFalseValue_CSEL(        selected_false,        encoded_modifier);    return ScalarConditionalSelect(        predicate,        selected_true,        prepared_false);end;
View the complete ASL owner
// PTO-INSTRUCTION: {"assembly":["csel SrcP, SrcL, SrcR<.neg>, ->{t, u, Rd}"],"block":[],"catalog_indices":[71],"catalog_records":[{"asm":"csel SrcP, SrcL, SrcR<.neg>, ->{t, u, Rd}","constraints":[],"encoding":[{"index":0,"mask":"0x0000707f","match":"0x00000077","width_bits":32}],"encoding_kind":"L32","fields":[{"name":"RegDst","pieces":[{"instruction_lsb":7,"value_lsb":0,"width":5}],"signedness":"encoding-defined","width":5},{"name":"SrcL","pieces":[{"instruction_lsb":15,"value_lsb":0,"width":5}],"signedness":"encoding-defined","width":5},{"name":"SrcP","pieces":[{"instruction_lsb":27,"value_lsb":0,"width":5}],"signedness":"encoding-defined","width":5},{"name":"SrcR","pieces":[{"instruction_lsb":20,"value_lsb":0,"width":5}],"signedness":"encoding-defined","width":5},{"name":"SrcRType","pieces":[{"instruction_lsb":25,"value_lsb":0,"width":2}],"signedness":"encoding-defined","width":2}],"form_id":"csel_32_ba77cbad3c99","length_bits":32,"mnemonic":"CSEL","semantic_family":"ALU","semantic_group":"ALU","semantic_handler":"ScalarConditionalSelect","semantic_summary":"CSEL snapshots three Reg5 sources, selects SrcL for a nonzero predicate or its optionally negated SrcR for zero, and publishes through the common scalar destination map.","status":"accepted"}],"classification":["alu"],"contract":{"block_composition":["none"],"canonical_assembly":["csel SrcP, SrcL, SrcR<.neg>, ->{t, u, Rd}"],"defaults":["SrcP, SrcL, SrcR, SrcRType, and RegDst are required encoded fields; no field can be omitted.","Assembly without .neg uses the canonical unmodified alias selected by the assembler. Raw SrcRType codes 00, 01, and 10 are assigned unmodified aliases; raw code 11 is .neg."],"encoding_class":"standalone-encoded","examples":["csel a0, a1, a2, ->a3","csel t#1, u#1, a0.neg, ->u","csel zero, a0, a1, ->zero"],"exceptions":["An unavailable selected T/U queue source raises Fault_IllegalInstruction before the destination effect and before TPC advances, including a source not selected by the predicate outcome.","CSEL raises no arithmetic, memory, alignment, permission, or control-flow exception."],"field_contracts":{},"field_zero_meanings":{"RegDst":"Encoded zero discards the result.","SrcL":"Encoded zero reads the architectural zero GPR.","SrcP":"Encoded zero reads the architectural zero GPR and therefore selects the false value.","SrcR":"Encoded zero reads the architectural zero GPR.","SrcRType":"Encoded zero is an assigned unmodified false-source alias."},"legality":["SrcP, SrcL, and SrcR codes 0..23 select absolute GPRs, 24..27 select T#1..T#4, and 28..31 select U#1..U#4 without consumption.","All four SrcRType values are assigned. Codes 00, 01, and 10 leave SrcR unchanged; code 11 negates the complete XLEN value modulo 2^PTO_XLEN.","RegDst codes 0 and 24..29 discard, codes 1..23 write GPRs, code 30 pushes U, and code 31 pushes T."],"memory_effects":["none"],"operands":[{"field":"SrcP","role":"Reg5 predicate source"},{"field":"SrcL","role":"Reg5 true-value source"},{"field":"SrcR","role":"Reg5 false-value source"},{"field":"SrcRType","role":"CSEL-specific false-source modifier selector"},{"field":"RegDst","role":"Reg5 destination or discard"}],"ordering":["Read all three Reg5 sources eagerly and non-consumingly before the destination write, even when the predicate outcome does not select one value.","Publish the selected value, then advance TPC by four bytes."],"standalone_opcode":true,"state_effects":["Snapshot SrcP, SrcL, and SrcR before any destination effect. Only an all-zero SrcP is false; every nonzero bit pattern is true.","For a true predicate publish the complete snapshotted SrcL. For a false predicate publish the complete snapshotted SrcR after the CSEL-specific raw modifier; negation wraps modulo 2^PTO_XLEN and does not fault.","No memory, reservation, descriptor, numeric-status, block, privilege, branch-target, or other control state changes. Successful execution advances TPC by four bytes."]},"depends_on":["PTO-BLOCK-MODEL-SCHEMA-PROFILE-ENCODING"],"id":"PTO-SCALAR-CSEL","mnemonic":"CSEL","summary":"CSEL snapshots three Reg5 sources, selects SrcL for a nonzero predicate or its optionally negated SrcR for zero, and publishes through the common scalar destination map.","surface":"scalar"}// PTO-REVIEW: {"review_method":"formal-definition-read","outcome":"FORMAL-COMPLETE","reviewed_fields":["assembly","encoding","defaults","operation","state","memory","ordering","faults","reserved"]}// DOC-BEGIN: decodereadonly func InstructionContractOperation_CSEL()    => ScalarOperationbegin    return ScalarOperation_CSEL;end;
pure func InstructionContractRightModifier_CSEL(encoded: bits(2))    => ScalarRightModifierbegin    return DecodeScalarSelectRightModifier(encoded);end;// DOC-END: decode// DOC-BEGIN: operationreadonly func InstructionContractHandler_CSEL()    => ScalarSemanticHandlerbegin    return ScalarHandler_ScalarConditionalSelect;end;
pure func InstructionContractFalseValue_CSEL(    right: Word,    encoded_modifier: bits(2))    => Wordbegin    let modifier = InstructionContractRightModifier_CSEL(encoded_modifier);    return ApplySelectModifier(right, modifier);end;
pure func InstructionContractResult_CSEL(    predicate: Word,    selected_true: Word,    selected_false: Word,    encoded_modifier: bits(2))    => Wordbegin    let prepared_false = InstructionContractFalseValue_CSEL(        selected_false,        encoded_modifier);    return ScalarConditionalSelect(        predicate,        selected_true,        prepared_false);end;// DOC-END: operation

Behavior

purpose

What CSEL does

CSEL is a 32-bit scalar ALU instruction. It selects the left value for a nonzero predicate, otherwise selecting the optionally negated right value; its current instruction contract defines the result publication path and any additional state effect.

mechanism

How the result is formed

Execution snapshots the encoded inputs, then selects the left value for a nonzero predicate, otherwise selecting the optionally negated right value, and only afterward performs the destination effects.

  • SrcRType chooses the right-source transformation before the operation-specific arithmetic or logical step.
  • Result publication uses the width and extension rule fixed by this mnemonic's current contract.
inputs outputs

Inputs and destinations

  • The 5-bit SrcP field selects the predicate value through Reg5.
  • The 5-bit SrcL field selects the value used for a true predicate.
  • The 5-bit SrcR field selects the value used for a false predicate.
  • The 2-bit SrcRType field selects the CSEL transformation applied to the false-side source.
  • The 5-bit RegDst field selects the Reg5 result target or discards the result.

These roles come from the current instruction contract. T/U sources are read and snapshotted without being removed from their queues; exact encoded-zero meanings appear in the generated defaults below.

effects

Effects and ordering

Every scalar source is snapshotted before the destination effect. The completed value is then routed through RegDst using the current scalar destination map.

This ALU operation has no memory effect. After its successful architectural effects, TPC advances by 4 bytes.

The operation does not introduce a hidden scalar publication target or an implicit memory access. Architectural changes remain limited to the state effects enumerated by the current contract.

constraints

Legality and fault boundary

All three sources are read before selection; an unavailable T/U source faults with Fault_IllegalInstruction before publication even when the predicate would choose the other side.

The generated legality table is authoritative for assigned field values, reserved encodings, and destination discard codes. Decode and source availability are checked before architectural effects.

example

illustrative worked example

This example illustrates the current ASL owner and does not replace the normative operation.

For a small CSEL example, predicate 0, false-side value 3, and the negating selector publish -3 modulo 2^PTO_XLEN.

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

12 matching entries

Executable evidence5
  • CSEL eagerly snapshots relative sources and preserves all three unmodified modifier aliases
    1. surfaceSCALAR
    2. ownerCSEL
    3. categoryBOUNDARY
    4. case001
    Show exact test source
    Sources and references
    Complete stable ID
    PTO-AVS-SCALAR-CSEL-ALIASES-001
    Path
    tests/asl/scalar/alu/CSEL/scalar-bound-csel-aliases-001.asl
    Kind / role
    boundary
    Requirements
    PTO-INST-SCALAR-CSEL
    Pass condition
    raw codes 00 through 10 are equal, T and U reads are non-consuming, source-destination aliases use snapshots, and queue publication is ordered
    SHA-256
    8189404df01d4047752cc85b48f3afb4f45b4d2f8283d0e71947746019405c7e
    Open exact source ↗ for PTO-AVS-SCALAR-CSEL-ALIASES-001
  • canonical CSEL catalog and ASL contract remain aligned
    1. surfaceSCALAR
    2. ownerCSEL
    3. categoryDECODE-POSITIVE
    4. case001
    Show exact test source
    Sources and references
    Complete stable ID
    PTO-AVS-SCALAR-CSEL-DECODE-001
    Path
    tests/asl/scalar/alu/CSEL/scalar-decode-csel-canonical-001.asl
    Kind / role
    decode-positive
    Requirements
    PTO-INST-SCALAR-CSEL
    Pass condition
    all canonical decode and contract assertions hold
    SHA-256
    d737c823173a6e5b655f0ee1e8848febf1ded43f1c578e06c1b41cd1400df00e
    Open exact source ↗ for PTO-AVS-SCALAR-CSEL-DECODE-001
  • CSEL keeps raw modifier codes 00, 01, and 10 as unmodified aliases and negates only raw code 11
    1. surfaceSCALAR
    2. ownerCSEL
    3. categoryBOUNDARY
    4. case001
    Show exact test source
    Sources and references
    Complete stable ID
    PTO-AVS-SCALAR-CSEL-MODIFIER-001
    Path
    tests/asl/scalar/alu/CSEL/scalar-bound-csel-modifier-001.asl
    Kind / role
    boundary
    Requirements
    PTO-INST-SCALAR-CSEL
    Pass condition
    the CSEL-specific modifier decoder and selected-right transformation match ADR 0026
    SHA-256
    ee8bbc2c9f01e69fdf27b1e237503e9c92c7e33c8ce79bec2c6492f871f3fab1
    Open exact source ↗ for PTO-AVS-SCALAR-CSEL-MODIFIER-001
  • CSEL rejects an unavailable relative source before selection or destination effects
    1. surfaceSCALAR
    2. ownerCSEL
    3. categoryFAULT
    4. case001
    Show exact test source
    Sources and references
    Complete stable ID
    PTO-AVS-SCALAR-CSEL-READINESS-001
    Path
    tests/asl/scalar/alu/CSEL/scalar-fault-csel-readiness-001.asl
    Kind / role
    fault
    Requirements
    PTO-INST-SCALAR-CSEL
    Pass condition
    all three source selectors are preflighted, Fault_IllegalInstruction is reported, and destination, queues, and TPC remain unchanged
    SHA-256
    7735a3865de594610fcc151ab00b03e8630be4d6da113d36b51730ec08493343
    Open exact source ↗ for PTO-AVS-SCALAR-CSEL-READINESS-001
  • CSEL treats every nonzero predicate as true and negates the false source only for raw modifier code 11
    1. surfaceSCALAR
    2. ownerCSEL
    3. categoryEXECUTION
    4. case001
    Show exact test source
    Sources and references
    Complete stable ID
    PTO-AVS-SCALAR-CSEL-SELECT-001
    Path
    tests/asl/scalar/alu/CSEL/scalar-exec-csel-select-001.asl
    Kind / role
    execution
    Requirements
    PTO-INST-SCALAR-CSEL
    Pass condition
    decoded true and false selections, modulo negation, destination publication, and TPC match the mnemonic contract
    SHA-256
    fa403f1fd88912b725154984d9154320c6fac4c596c6db17358014cebafab991
    Open exact source ↗ for PTO-AVS-SCALAR-CSEL-SELECT-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 history2
  • Scalar ALU totality and alias order · accepted
    1. decision recordADR
    2. case0026

    Decision record

    Loading ADR-0026…

    Sources and references
    Complete stable ID
    ADR-0026
    Path
    docs/status/decisions/0026-scalar-alu-totality-and-alias-order.md
    Affected units
    PTO-SCALAR-ADD, PTO-SCALAR-ADDI, PTO-SCALAR-ADDIW, PTO-SCALAR-ADDW, PTO-SCALAR-AND, PTO-SCALAR-ANDI, PTO-SCALAR-ANDIW, PTO-SCALAR-ANDW, PTO-SCALAR-BCNT, PTO-SCALAR-BIC, PTO-SCALAR-BIS, PTO-SCALAR-BXS, PTO-SCALAR-BXU, PTO-SCALAR-C-ADD, PTO-SCALAR-C-ADDI, PTO-SCALAR-C-AND, PTO-SCALAR-C-MOVI, PTO-SCALAR-C-MOVR, PTO-SCALAR-C-OR, PTO-SCALAR-C-SETC-TGT, PTO-SCALAR-C-SETRET, PTO-SCALAR-C-SEXT-B, PTO-SCALAR-C-SEXT-H, PTO-SCALAR-C-SEXT-W, PTO-SCALAR-C-SLLI, PTO-SCALAR-C-SRLI, PTO-SCALAR-C-SUB, PTO-SCALAR-C-ZEXT-B, PTO-SCALAR-C-ZEXT-H, PTO-SCALAR-C-ZEXT-W, PTO-SCALAR-CLZ, PTO-SCALAR-CSEL, PTO-SCALAR-CTZ, PTO-SCALAR-DIV, PTO-SCALAR-DIVU, PTO-SCALAR-DIVUW, PTO-SCALAR-DIVW, PTO-SCALAR-HL-ADDI, PTO-SCALAR-HL-ADDIW, PTO-SCALAR-HL-ANDI, PTO-SCALAR-HL-ANDIW, PTO-SCALAR-HL-BFI, PTO-SCALAR-HL-CCAT, PTO-SCALAR-HL-CCATW, PTO-SCALAR-HL-DIV, PTO-SCALAR-HL-DIVU, PTO-SCALAR-HL-DIVUW, PTO-SCALAR-HL-DIVW, PTO-SCALAR-HL-LIS, PTO-SCALAR-HL-LIU, PTO-SCALAR-HL-LUI, PTO-SCALAR-HL-MADD, PTO-SCALAR-HL-MADDW, PTO-SCALAR-HL-MIADD, PTO-SCALAR-HL-MISUB, PTO-SCALAR-HL-MUL, PTO-SCALAR-HL-MULU, PTO-SCALAR-HL-ORI, PTO-SCALAR-HL-ORIW, PTO-SCALAR-HL-REM, PTO-SCALAR-HL-REMU, PTO-SCALAR-HL-REMUW, PTO-SCALAR-HL-REMW, PTO-SCALAR-HL-SUBI, PTO-SCALAR-HL-SUBIW, PTO-SCALAR-HL-XORI, PTO-SCALAR-HL-XORIW, PTO-SCALAR-LUI, PTO-SCALAR-MADD, PTO-SCALAR-MADDW, PTO-SCALAR-MAX, PTO-SCALAR-MAXU, PTO-SCALAR-MIN, PTO-SCALAR-MINU, PTO-SCALAR-MUL, PTO-SCALAR-MULU, PTO-SCALAR-MULUW, PTO-SCALAR-MULW, PTO-SCALAR-OR, PTO-SCALAR-ORI, PTO-SCALAR-ORIW, PTO-SCALAR-ORW, PTO-SCALAR-REM, PTO-SCALAR-REMU, PTO-SCALAR-REMUW, PTO-SCALAR-REMW, PTO-SCALAR-REV, PTO-SCALAR-SLL, PTO-SCALAR-SLLI, PTO-SCALAR-SLLIW, PTO-SCALAR-SLLW, PTO-SCALAR-SRA, PTO-SCALAR-SRAI, PTO-SCALAR-SRAIW, PTO-SCALAR-SRAW, PTO-SCALAR-SRL, PTO-SCALAR-SRLI, PTO-SCALAR-SRLIW, PTO-SCALAR-SRLW, PTO-SCALAR-SUB, PTO-SCALAR-SUBI, PTO-SCALAR-SUBIW, PTO-SCALAR-SUBW, PTO-SCALAR-XOR, PTO-SCALAR-XORI, PTO-SCALAR-XORIW, PTO-SCALAR-XORW
    Affected NDF
    PTO-ADD-DECISION-BINDING-001, PTO-AND-DECISION-BINDING-001, PTO-BCNT-DECISION-BINDING-001, PTO-BIC-DECISION-BINDING-001, PTO-BIS-DECISION-BINDING-001, PTO-BXS-DECISION-BINDING-001, PTO-BXU-DECISION-BINDING-001, PTO-C-SETC-TGT-SNAPSHOT-001, PTO-C-SETRET-DECISION-BINDING-001, PTO-CLZ-DECISION-BINDING-001, PTO-CTZ-DECISION-BINDING-001, PTO-HL-ADDI-CONTRACT-001, PTO-HL-ADDIW-CONTRACT-001, PTO-HL-ANDI-CONTRACT-001, PTO-HL-ANDIW-CONTRACT-001, PTO-HL-BFI-DECISION-BINDING-001, PTO-HL-CCAT-CONTRACT-001, PTO-HL-CCATW-CONTRACT-001, PTO-HL-DIV-DECISION-BINDING-001, PTO-HL-DIVU-DECISION-BINDING-001, PTO-HL-DIVUW-DECISION-BINDING-001, PTO-HL-DIVW-DECISION-BINDING-001, PTO-HL-LIS-DECISION-BINDING-001, PTO-HL-LUI-UPPER-HALF-001, PTO-HL-MADDW-WORD-HALVES-001, PTO-HL-ORI-CONTRACT-001, PTO-HL-ORIW-CONTRACT-001, PTO-HL-REM-RESULT-ORDER-001, PTO-HL-REMU-RESULT-ORDER-001, PTO-HL-REMUW-RESULT-ORDER-001, PTO-HL-REMW-RESULT-ORDER-001, PTO-HL-SUBI-CONTRACT-001, PTO-HL-SUBIW-CONTRACT-001, PTO-HL-XORI-CONTRACT-001, PTO-HL-XORIW-CONTRACT-001, PTO-OR-DECISION-BINDING-001, PTO-REV-DECISION-BINDING-001, PTO-SLL-ADR-CONTRACT-001, PTO-SLLI-ADR-CONTRACT-001, PTO-SLLIW-ADR-CONTRACT-001, PTO-SLLW-ADR-CONTRACT-001, PTO-SRA-ADR-CONTRACT-001, PTO-SRAI-ADR-CONTRACT-001, PTO-SRAIW-ADR-CONTRACT-001, PTO-SRAW-ADR-CONTRACT-001, PTO-SRL-ADR-CONTRACT-001, PTO-SRLI-ADR-CONTRACT-001, PTO-SRLIW-ADR-CONTRACT-001, PTO-SRLW-ADR-CONTRACT-001, PTO-SUB-ADR-CONTRACT-001, PTO-SUBI-ADR-CONTRACT-001, PTO-SUBIW-ADR-CONTRACT-001, PTO-SUBW-ADR-CONTRACT-001, PTO-XOR-ADR-CONTRACT-001, PTO-XORI-ADR-CONTRACT-001, PTO-XORIW-ADR-CONTRACT-001, PTO-XORW-ADR-CONTRACT-001
    SHA-256
    41d126f224dddc371832120f1b02eab64e426872fdcbea452bad77c90bdec349
    Open exact decision source ↗ for ADR-0026
  • Mnemonic and Encoded-Field Contract Closure · accepted
    1. decision recordADR
    2. case0059

    Decision record

    Loading ADR-0059…

    Sources and references
    Complete stable ID
    ADR-0059
    Path
    docs/status/decisions/0059-mnemonic-field-encoding-closure.md
    Affected units
    PTO-ARCH-DATA-TYPES-FORMAT-DESCRIPTOR, PTO-ARCH-OVERVIEW-ARCHITECTURE, PTO-ARCH-OVERVIEW-ENCODING-OWNERSHIP, PTO-ARCH-OVERVIEW-INSTRUCTION-CLASSIFICATION, 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-MSET, PTO-BLOCK-XB, PTO-SCALAR-ACRC, PTO-SCALAR-ACRE, PTO-SCALAR-ADD, PTO-SCALAR-ADDI, PTO-SCALAR-ADDIW, PTO-SCALAR-ADDTPC, PTO-SCALAR-ADDW, PTO-SCALAR-AND, PTO-SCALAR-ANDI, PTO-SCALAR-ANDIW, PTO-SCALAR-ANDW, PTO-SCALAR-ASSERT, PTO-SCALAR-BC-IALL, PTO-SCALAR-BC-IVA, PTO-SCALAR-BCNT, PTO-SCALAR-BIC, PTO-SCALAR-BIS, PTO-SCALAR-BSE, PTO-SCALAR-BWE, PTO-SCALAR-BWI, PTO-SCALAR-BWT, PTO-SCALAR-BXS, PTO-SCALAR-BXU, PTO-SCALAR-C-ADD, PTO-SCALAR-C-ADDI, PTO-SCALAR-C-AND, PTO-SCALAR-C-CMP-EQI, PTO-SCALAR-C-CMP-NEI, PTO-SCALAR-C-EBREAK, PTO-SCALAR-C-LDI, PTO-SCALAR-C-LWI, PTO-SCALAR-C-MOVI, PTO-SCALAR-C-MOVR, PTO-SCALAR-C-OR, PTO-SCALAR-C-SDI, PTO-SCALAR-C-SETC-EQ, PTO-SCALAR-C-SETC-NE, PTO-SCALAR-C-SETC-TGT, PTO-SCALAR-C-SETRET, PTO-SCALAR-C-SEXT-B, PTO-SCALAR-C-SEXT-H, PTO-SCALAR-C-SEXT-W, PTO-SCALAR-C-SLLI, PTO-SCALAR-C-SRLI, PTO-SCALAR-C-SSRGET, PTO-SCALAR-C-SUB, PTO-SCALAR-C-SWI, PTO-SCALAR-C-ZEXT-B, PTO-SCALAR-C-ZEXT-H, PTO-SCALAR-C-ZEXT-W, PTO-SCALAR-CASB, PTO-SCALAR-CASD, PTO-SCALAR-CASH, PTO-SCALAR-CASW, PTO-SCALAR-CLZ, PTO-SCALAR-CMP-AND, PTO-SCALAR-CMP-ANDI, PTO-SCALAR-CMP-EQ, PTO-SCALAR-CMP-EQI, PTO-SCALAR-CMP-GE, PTO-SCALAR-CMP-GEI, PTO-SCALAR-CMP-GEU, PTO-SCALAR-CMP-GEUI, PTO-SCALAR-CMP-LT, PTO-SCALAR-CMP-LTI, PTO-SCALAR-CMP-LTU, PTO-SCALAR-CMP-LTUI, PTO-SCALAR-CMP-NE, PTO-SCALAR-CMP-NEI, PTO-SCALAR-CMP-OR, PTO-SCALAR-CMP-ORI, PTO-SCALAR-CSEL, PTO-SCALAR-CTZ, PTO-SCALAR-DC-CISW, PTO-SCALAR-DC-CIVA, PTO-SCALAR-DC-CSW, PTO-SCALAR-DC-CVA, PTO-SCALAR-DC-IALL, PTO-SCALAR-DC-ISW, PTO-SCALAR-DC-IVA, PTO-SCALAR-DC-ZVA, PTO-SCALAR-DIV, PTO-SCALAR-DIVU, PTO-SCALAR-DIVUW, PTO-SCALAR-DIVW, PTO-SCALAR-DMA, PTO-SCALAR-EBREAK, PTO-SCALAR-FABS, PTO-SCALAR-FADD, PTO-SCALAR-FCVT, PTO-SCALAR-FCVTA, PTO-SCALAR-FCVTM, PTO-SCALAR-FCVTN, PTO-SCALAR-FCVTP, PTO-SCALAR-FCVTZ, PTO-SCALAR-FDIV, PTO-SCALAR-FENCE-D, PTO-SCALAR-FENCE-I, PTO-SCALAR-FEQ, PTO-SCALAR-FEQS, PTO-SCALAR-FEXP, PTO-SCALAR-FGE, PTO-SCALAR-FGES, PTO-SCALAR-FLT, PTO-SCALAR-FLTS, PTO-SCALAR-FMADD, PTO-SCALAR-FMAX, PTO-SCALAR-FMIN, PTO-SCALAR-FMSUB, PTO-SCALAR-FMUL, PTO-SCALAR-FNE, PTO-SCALAR-FNES, PTO-SCALAR-FNMADD, PTO-SCALAR-FNMSUB, PTO-SCALAR-FRECIP, PTO-SCALAR-FSQRT, PTO-SCALAR-FSUB, PTO-SCALAR-HL-ADDI, PTO-SCALAR-HL-ADDIW, PTO-SCALAR-HL-ADDTPC, PTO-SCALAR-HL-ANDI, PTO-SCALAR-HL-ANDIW, PTO-SCALAR-HL-BFI, PTO-SCALAR-HL-CASB, PTO-SCALAR-HL-CASD, PTO-SCALAR-HL-CASH, PTO-SCALAR-HL-CASW, PTO-SCALAR-HL-CCAT, PTO-SCALAR-HL-CCATW, PTO-SCALAR-HL-CMP-ANDI, PTO-SCALAR-HL-CMP-EQI, PTO-SCALAR-HL-CMP-GEI, PTO-SCALAR-HL-CMP-GEUI, PTO-SCALAR-HL-CMP-LTI, PTO-SCALAR-HL-CMP-LTUI, PTO-SCALAR-HL-CMP-NEI, PTO-SCALAR-HL-CMP-ORI, PTO-SCALAR-HL-DIV, PTO-SCALAR-HL-DIVU, PTO-SCALAR-HL-DIVUW, PTO-SCALAR-HL-DIVW, PTO-SCALAR-HL-LB-PCR, PTO-SCALAR-HL-LB-PO, PTO-SCALAR-HL-LB-PR, PTO-SCALAR-HL-LBI, PTO-SCALAR-HL-LBI-PO, PTO-SCALAR-HL-LBI-PR, PTO-SCALAR-HL-LBIP, PTO-SCALAR-HL-LBP, PTO-SCALAR-HL-LBU-PCR, PTO-SCALAR-HL-LBU-PO, PTO-SCALAR-HL-LBU-PR, PTO-SCALAR-HL-LBUI, PTO-SCALAR-HL-LBUI-PO, PTO-SCALAR-HL-LBUI-PR, PTO-SCALAR-HL-LBUIP, PTO-SCALAR-HL-LBUP, PTO-SCALAR-HL-LD-PCR, PTO-SCALAR-HL-LD-PO, PTO-SCALAR-HL-LD-PR, PTO-SCALAR-HL-LDI, PTO-SCALAR-HL-LDI-PO, PTO-SCALAR-HL-LDI-PR, PTO-SCALAR-HL-LDI-U, PTO-SCALAR-HL-LDI-UPO, PTO-SCALAR-HL-LDI-UPR, PTO-SCALAR-HL-LDIP, PTO-SCALAR-HL-LDIP-U, PTO-SCALAR-HL-LDP, PTO-SCALAR-HL-LH-PCR, PTO-SCALAR-HL-LH-PO, PTO-SCALAR-HL-LH-PR, PTO-SCALAR-HL-LHI, PTO-SCALAR-HL-LHI-PO, PTO-SCALAR-HL-LHI-PR, PTO-SCALAR-HL-LHI-U, PTO-SCALAR-HL-LHI-UPO, PTO-SCALAR-HL-LHI-UPR, PTO-SCALAR-HL-LHIP, PTO-SCALAR-HL-LHIP-U, PTO-SCALAR-HL-LHP, PTO-SCALAR-HL-LHU-PCR, PTO-SCALAR-HL-LHU-PO, PTO-SCALAR-HL-LHU-PR, PTO-SCALAR-HL-LHUI, PTO-SCALAR-HL-LHUI-PO, PTO-SCALAR-HL-LHUI-PR, PTO-SCALAR-HL-LHUI-U, PTO-SCALAR-HL-LHUI-UPO, PTO-SCALAR-HL-LHUI-UPR, PTO-SCALAR-HL-LHUIP, PTO-SCALAR-HL-LHUIP-U, PTO-SCALAR-HL-LHUP, PTO-SCALAR-HL-LIS, PTO-SCALAR-HL-LIU, PTO-SCALAR-HL-LUI, PTO-SCALAR-HL-LW-PCR, PTO-SCALAR-HL-LW-PO, PTO-SCALAR-HL-LW-PR, PTO-SCALAR-HL-LWI, PTO-SCALAR-HL-LWI-PO, PTO-SCALAR-HL-LWI-PR, PTO-SCALAR-HL-LWI-U, PTO-SCALAR-HL-LWI-UPO, PTO-SCALAR-HL-LWI-UPR, PTO-SCALAR-HL-LWIP, PTO-SCALAR-HL-LWIP-U, PTO-SCALAR-HL-LWP, PTO-SCALAR-HL-LWU-PCR, PTO-SCALAR-HL-LWU-PO, PTO-SCALAR-HL-LWU-PR, PTO-SCALAR-HL-LWUI, PTO-SCALAR-HL-LWUI-PO, PTO-SCALAR-HL-LWUI-PR, PTO-SCALAR-HL-LWUI-U, PTO-SCALAR-HL-LWUI-UPO, PTO-SCALAR-HL-LWUI-UPR, PTO-SCALAR-HL-LWUIP, PTO-SCALAR-HL-LWUIP-U, PTO-SCALAR-HL-LWUP, PTO-SCALAR-HL-MADD, PTO-SCALAR-HL-MADDW, PTO-SCALAR-HL-MIADD, PTO-SCALAR-HL-MISUB, PTO-SCALAR-HL-MUL, PTO-SCALAR-HL-MULU, PTO-SCALAR-HL-ORI, PTO-SCALAR-HL-ORIW, PTO-SCALAR-HL-PRF, PTO-SCALAR-HL-PRF-A, PTO-SCALAR-HL-PRFI-U, PTO-SCALAR-HL-PRFI-UA, PTO-SCALAR-HL-REM, PTO-SCALAR-HL-REMU, PTO-SCALAR-HL-REMUW, PTO-SCALAR-HL-REMW, PTO-SCALAR-HL-SB-PCR, PTO-SCALAR-HL-SB-PO, PTO-SCALAR-HL-SB-PR, PTO-SCALAR-HL-SBI, PTO-SCALAR-HL-SBI-PO, PTO-SCALAR-HL-SBI-PR, PTO-SCALAR-HL-SBIP, PTO-SCALAR-HL-SBP, PTO-SCALAR-HL-SD-PCR, PTO-SCALAR-HL-SD-PO, PTO-SCALAR-HL-SD-PR, PTO-SCALAR-HL-SD-UPO, PTO-SCALAR-HL-SD-UPR, PTO-SCALAR-HL-SDI, PTO-SCALAR-HL-SDI-PO, PTO-SCALAR-HL-SDI-PR, PTO-SCALAR-HL-SDI-U, PTO-SCALAR-HL-SDI-UPO, PTO-SCALAR-HL-SDI-UPR, PTO-SCALAR-HL-SDIP, PTO-SCALAR-HL-SDIP-U, PTO-SCALAR-HL-SDP, PTO-SCALAR-HL-SDP-U, PTO-SCALAR-HL-SETC-ANDI, PTO-SCALAR-HL-SETC-EQI, PTO-SCALAR-HL-SETC-GEI, PTO-SCALAR-HL-SETC-GEUI, PTO-SCALAR-HL-SETC-LTI, PTO-SCALAR-HL-SETC-LTUI, PTO-SCALAR-HL-SETC-NEI, PTO-SCALAR-HL-SETC-ORI, PTO-SCALAR-HL-SETRET, PTO-SCALAR-HL-SH-PCR, PTO-SCALAR-HL-SH-PO, PTO-SCALAR-HL-SH-PR, PTO-SCALAR-HL-SH-UPO, PTO-SCALAR-HL-SH-UPR, PTO-SCALAR-HL-SHI, PTO-SCALAR-HL-SHI-PO, PTO-SCALAR-HL-SHI-PR, PTO-SCALAR-HL-SHI-U, PTO-SCALAR-HL-SHI-UPO, PTO-SCALAR-HL-SHI-UPR, PTO-SCALAR-HL-SHIP, PTO-SCALAR-HL-SHIP-U, PTO-SCALAR-HL-SHP, PTO-SCALAR-HL-SHP-U, PTO-SCALAR-HL-SSRGET, PTO-SCALAR-HL-SSRSET, PTO-SCALAR-HL-SUBI, PTO-SCALAR-HL-SUBIW, PTO-SCALAR-HL-SW-PCR, PTO-SCALAR-HL-SW-PO, PTO-SCALAR-HL-SW-PR, PTO-SCALAR-HL-SW-UPO, PTO-SCALAR-HL-SW-UPR, PTO-SCALAR-HL-SWI, PTO-SCALAR-HL-SWI-PO, PTO-SCALAR-HL-SWI-PR, PTO-SCALAR-HL-SWI-U, PTO-SCALAR-HL-SWI-UPO, PTO-SCALAR-HL-SWI-UPR, PTO-SCALAR-HL-SWIP, PTO-SCALAR-HL-SWIP-U, PTO-SCALAR-HL-SWP, PTO-SCALAR-HL-SWP-U, PTO-SCALAR-HL-XORI, PTO-SCALAR-HL-XORIW, PTO-SCALAR-IC-IALL, PTO-SCALAR-IC-IVA, PTO-SCALAR-J, PTO-SCALAR-JR, PTO-SCALAR-LB, PTO-SCALAR-LB-PCR, PTO-SCALAR-LBI, PTO-SCALAR-LBU, PTO-SCALAR-LBU-PCR, PTO-SCALAR-LBUI, PTO-SCALAR-LD, PTO-SCALAR-LD-ADD, PTO-SCALAR-LD-AND, PTO-SCALAR-LD-OR, PTO-SCALAR-LD-PCR, PTO-SCALAR-LD-SMAX, PTO-SCALAR-LD-SMIN, PTO-SCALAR-LD-UMAX, PTO-SCALAR-LD-UMIN, PTO-SCALAR-LD-XOR, PTO-SCALAR-LDI, PTO-SCALAR-LDI-U, PTO-SCALAR-LH, PTO-SCALAR-LH-PCR, PTO-SCALAR-LHI, PTO-SCALAR-LHI-U, PTO-SCALAR-LHU, PTO-SCALAR-LHU-PCR, PTO-SCALAR-LHUI, PTO-SCALAR-LHUI-U, PTO-SCALAR-LR-B, PTO-SCALAR-LR-D, PTO-SCALAR-LR-H, PTO-SCALAR-LR-W, PTO-SCALAR-LSRGET, PTO-SCALAR-LUI, PTO-SCALAR-LW, PTO-SCALAR-LW-ADD, PTO-SCALAR-LW-AND, PTO-SCALAR-LW-OR, PTO-SCALAR-LW-PCR, PTO-SCALAR-LW-SMAX, PTO-SCALAR-LW-SMIN, PTO-SCALAR-LW-UMAX, PTO-SCALAR-LW-UMIN, PTO-SCALAR-LW-XOR, PTO-SCALAR-LWI, PTO-SCALAR-LWI-U, PTO-SCALAR-LWU, PTO-SCALAR-LWU-PCR, PTO-SCALAR-LWUI, PTO-SCALAR-LWUI-U, PTO-SCALAR-MADD, PTO-SCALAR-MADDW, PTO-SCALAR-MAX, PTO-SCALAR-MAXU, PTO-SCALAR-MIN, PTO-SCALAR-MINU, PTO-SCALAR-MUL, PTO-SCALAR-MULU, PTO-SCALAR-MULUW, PTO-SCALAR-MULW, PTO-SCALAR-OR, PTO-SCALAR-ORI, PTO-SCALAR-ORIW, PTO-SCALAR-ORW, PTO-SCALAR-PRF, PTO-SCALAR-PRFI-U, PTO-SCALAR-REM, PTO-SCALAR-REMU, PTO-SCALAR-REMUW, PTO-SCALAR-REMW, PTO-SCALAR-REV, PTO-SCALAR-SB, PTO-SCALAR-SB-PCR, PTO-SCALAR-SBI, PTO-SCALAR-SC-B, PTO-SCALAR-SC-D, PTO-SCALAR-SC-H, PTO-SCALAR-SC-W, PTO-SCALAR-SCVTF, PTO-SCALAR-SD, PTO-SCALAR-SD-ADD, PTO-SCALAR-SD-AND, PTO-SCALAR-SD-OR, PTO-SCALAR-SD-PCR, PTO-SCALAR-SD-SMAX, PTO-SCALAR-SD-SMIN, PTO-SCALAR-SD-U, PTO-SCALAR-SD-UMAX, PTO-SCALAR-SD-UMIN, PTO-SCALAR-SD-XOR, PTO-SCALAR-SDI, PTO-SCALAR-SDI-U, PTO-SCALAR-SETC-AND, PTO-SCALAR-SETC-ANDI, PTO-SCALAR-SETC-EQ, PTO-SCALAR-SETC-EQI, PTO-SCALAR-SETC-GE, PTO-SCALAR-SETC-GEI, PTO-SCALAR-SETC-GEU, PTO-SCALAR-SETC-GEUI, PTO-SCALAR-SETC-LT, PTO-SCALAR-SETC-LTI, PTO-SCALAR-SETC-LTU, PTO-SCALAR-SETC-LTUI, PTO-SCALAR-SETC-NE, PTO-SCALAR-SETC-NEI, PTO-SCALAR-SETC-OR, PTO-SCALAR-SETC-ORI, PTO-SCALAR-SETC-TGT, PTO-SCALAR-SETRET, PTO-SCALAR-SH, PTO-SCALAR-SH-PCR, PTO-SCALAR-SH-U, PTO-SCALAR-SHI, PTO-SCALAR-SHI-U, PTO-SCALAR-SLL, PTO-SCALAR-SLLI, PTO-SCALAR-SLLIW, PTO-SCALAR-SLLW, PTO-SCALAR-SRA, PTO-SCALAR-SRAI, PTO-SCALAR-SRAIW, PTO-SCALAR-SRAW, PTO-SCALAR-SRL, PTO-SCALAR-SRLI, PTO-SCALAR-SRLIW, PTO-SCALAR-SRLW, PTO-SCALAR-SSRGET, PTO-SCALAR-SSRSET, PTO-SCALAR-SSRSWAP, PTO-SCALAR-SUB, PTO-SCALAR-SUBI, PTO-SCALAR-SUBIW, PTO-SCALAR-SUBW, PTO-SCALAR-SW, PTO-SCALAR-SW-ADD, PTO-SCALAR-SW-AND, PTO-SCALAR-SW-OR, PTO-SCALAR-SW-PCR, PTO-SCALAR-SW-SMAX, PTO-SCALAR-SW-SMIN, PTO-SCALAR-SW-U, PTO-SCALAR-SW-UMAX, PTO-SCALAR-SW-UMIN, PTO-SCALAR-SW-XOR, PTO-SCALAR-SWAPB, PTO-SCALAR-SWAPD, PTO-SCALAR-SWAPH, PTO-SCALAR-SWAPW, PTO-SCALAR-SWI, PTO-SCALAR-SWI-U, PTO-SCALAR-TLB-IA, PTO-SCALAR-TLB-IALL, PTO-SCALAR-TLB-IAV, PTO-SCALAR-TLB-IV, PTO-SCALAR-UCVTF, PTO-SCALAR-XOR, PTO-SCALAR-XORI, PTO-SCALAR-XORIW, PTO-SCALAR-XORW, PTO-TILE-GMOV, PTO-TILE-MGATHER, PTO-TILE-MGATHER-CAS, PTO-TILE-MGATHER-MASK, PTO-TILE-MSCATTER, PTO-TILE-MSCATTER-MASK, PTO-TILE-TABS, PTO-TILE-TADD, PTO-TILE-TADDS, PTO-TILE-TAND, PTO-TILE-TANDS, PTO-TILE-TCI, PTO-TILE-TCMP, PTO-TILE-TCMPS, PTO-TILE-TCOLARGMAX, PTO-TILE-TCOLARGMIN, PTO-TILE-TCOLEXPAND, PTO-TILE-TCOLEXPANDADD, PTO-TILE-TCOLEXPANDDIV, PTO-TILE-TCOLEXPANDEXPDIF, PTO-TILE-TCOLEXPANDMAX, PTO-TILE-TCOLEXPANDMIN, PTO-TILE-TCOLEXPANDMUL, PTO-TILE-TCOLEXPANDSUB, PTO-TILE-TCOLMAX, PTO-TILE-TCOLMIN, PTO-TILE-TCOLPROD, PTO-TILE-TCOLSUM, PTO-TILE-TCONCAT, PTO-TILE-TCVT, PTO-TILE-TDEQUANT, PTO-TILE-TDIV, PTO-TILE-TDIVS, PTO-TILE-TEXP, PTO-TILE-TEXPANDS, PTO-TILE-TEXTRACT, PTO-TILE-TFMA, PTO-TILE-TGATHER, PTO-TILE-TGEMV, PTO-TILE-TGEMV-ACC, PTO-TILE-TGEMV-BIAS, PTO-TILE-TGEMV-MX, PTO-TILE-TGEMV-MX-ACC, PTO-TILE-TGEMV-MX-BIAS, PTO-TILE-THISTOGRAM, PTO-TILE-TIMG2COL, PTO-TILE-TINSERT, PTO-TILE-TLOAD, PTO-TILE-TLOG, PTO-TILE-TMATMUL, PTO-TILE-TMATMUL-ACC, PTO-TILE-TMATMUL-BIAS, PTO-TILE-TMATMUL-MX, PTO-TILE-TMATMUL-MX-ACC, PTO-TILE-TMATMUL-MX-BIAS, PTO-TILE-TMAX, PTO-TILE-TMAXS, PTO-TILE-TMIN, PTO-TILE-TMINS, PTO-TILE-TMOV, PTO-TILE-TMRGSORT, PTO-TILE-TMUL, PTO-TILE-TMULS, PTO-TILE-TNEG, PTO-TILE-TNOT, PTO-TILE-TOR, PTO-TILE-TORS, PTO-TILE-TPREFETCH, PTO-TILE-TQUANT, PTO-TILE-TRECIP, PTO-TILE-TRELU, PTO-TILE-TREM, PTO-TILE-TREMS, PTO-TILE-TROWARGMAX, PTO-TILE-TROWARGMIN, PTO-TILE-TROWEXPAND, PTO-TILE-TROWEXPANDADD, PTO-TILE-TROWEXPANDDIV, PTO-TILE-TROWEXPANDEXPDIF, PTO-TILE-TROWEXPANDMAX, PTO-TILE-TROWEXPANDMIN, PTO-TILE-TROWEXPANDMUL, PTO-TILE-TROWEXPANDSUB, PTO-TILE-TROWMAX, PTO-TILE-TROWMIN, PTO-TILE-TROWPROD, PTO-TILE-TROWSUM, PTO-TILE-TRSQRT, PTO-TILE-TSCATTER, PTO-TILE-TSEL, PTO-TILE-TSELS, PTO-TILE-TSHL, PTO-TILE-TSHLS, PTO-TILE-TSHR, PTO-TILE-TSHRS, PTO-TILE-TSORT, PTO-TILE-TSQRT, PTO-TILE-TSTORE, PTO-TILE-TSUB, PTO-TILE-TSUBS, PTO-TILE-TTRI, PTO-TILE-TXOR, PTO-TILE-TXORS
    Affected NDF
    PTO-ACRC-DECISION-BINDING-001, PTO-ACRE-IMPLICIT-STOP-001, PTO-ADD-DECISION-BINDING-001, PTO-ADDTPC-PAGE-001, PTO-AND-DECISION-BINDING-001, PTO-ARCH-COMMIT-EVENT-CONFORMANCE-001, PTO-ARCH-CONDITIONAL-BRANCH-RESERVATION-001, PTO-ARCH-ENCODING-OWNERSHIP-001, PTO-ARCH-STATE-CLOSURE-001, PTO-ARCH-TEPL-ALIAS-001, PTO-ARCH-TILE-EXECUTION-ENGINE-001, PTO-ARCH-TILE-INSTRUCTION-CLASS-001, 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-BCNT-DECISION-BINDING-001, PTO-BIC-DECISION-BINDING-001, PTO-BIS-DECISION-BINDING-001, PTO-BLOCK-ERCOV-RESERVED-001, PTO-BLOCK-ESAVE-RESERVED-001, PTO-BLOCK-MSET-FILL-001, PTO-BLOCK-XB-RESERVED-001, PTO-BSE-DECISION-BINDING-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-BWE-DECISION-BINDING-001, PTO-BWI-DECISION-BINDING-001, PTO-BWT-DECISION-BINDING-001, PTO-BXS-DECISION-BINDING-001, PTO-BXU-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-C-CMP-EQI-DECISION-BINDING-001, PTO-C-CMP-NEI-DECISION-BINDING-001, PTO-C-EBREAK-CAUSE-001, PTO-C-SETC-EQ-CONDITIONAL-SETTER-001, PTO-C-SETC-NE-CONDITIONAL-SETTER-001, PTO-C-SETC-TGT-SNAPSHOT-001, PTO-C-SETRET-DECISION-BINDING-001, PTO-C-SSRGET-DIRECT-IDS-001, PTO-CLZ-DECISION-BINDING-001, PTO-CTZ-DECISION-BINDING-001, PTO-CUBE-CELL-TRANSPORT-001, PTO-EBREAK-DECISION-BINDING-001, PTO-FABS-DECISION-BINDING-001, PTO-FCVTA-DECISION-BINDING-001, PTO-FCVTM-DECISION-BINDING-001, PTO-FCVTN-DECISION-BINDING-001, PTO-FCVTP-DECISION-BINDING-001, PTO-FCVTZ-DECISION-BINDING-001, PTO-FENCE-D-DECISION-BINDING-001, PTO-FENCE-I-DECISION-BINDING-001, PTO-FENTRY-RESTARTABLE-FRAME-001, PTO-FEXIT-RESTARTABLE-FRAME-001, PTO-FMAX-DECISION-BINDING-001, PTO-FMIN-DECISION-BINDING-001, PTO-FNE-DECISION-BINDING-001, PTO-FNES-DECISION-BINDING-001, PTO-FRET-RA-RESTARTABLE-FRAME-001, PTO-FRET-STK-RESTARTABLE-FRAME-001, PTO-GMOV-CORE4-PEER-001, PTO-HL-ADDI-CONTRACT-001, PTO-HL-ADDIW-CONTRACT-001, PTO-HL-ADDTPC-PAGE-001, PTO-HL-ANDI-CONTRACT-001, PTO-HL-ANDIW-CONTRACT-001, PTO-HL-BFI-DECISION-BINDING-001, PTO-HL-CCAT-CONTRACT-001, PTO-HL-CCATW-CONTRACT-001, PTO-HL-DIV-DECISION-BINDING-001, PTO-HL-DIVU-DECISION-BINDING-001, PTO-HL-DIVUW-DECISION-BINDING-001, PTO-HL-DIVW-DECISION-BINDING-001, PTO-HL-LIS-DECISION-BINDING-001, PTO-HL-LUI-UPPER-HALF-001, PTO-HL-MADDW-WORD-HALVES-001, PTO-HL-ORI-CONTRACT-001, PTO-HL-ORIW-CONTRACT-001, PTO-HL-PRF-A-CACHE-MODEL-001, PTO-HL-PRF-CACHE-MODEL-001, PTO-HL-PRFI-U-CACHE-MODEL-001, PTO-HL-PRFI-UA-CACHE-MODEL-001, PTO-HL-QMT-GQM-001, PTO-HL-QPOP-GQM-001, PTO-HL-QPUSH-GQM-001, PTO-HL-REM-RESULT-ORDER-001, PTO-HL-REMU-RESULT-ORDER-001, PTO-HL-REMUW-RESULT-ORDER-001, PTO-HL-REMW-RESULT-ORDER-001, PTO-HL-SD-UPO-DECISION-BINDING-001, PTO-HL-SD-UPR-DECISION-BINDING-001, PTO-HL-SETC-ANDI-CONDITIONAL-SETTER-001, PTO-HL-SETC-EQI-CONDITIONAL-SETTER-001, PTO-HL-SETC-GEI-CONDITIONAL-SETTER-001, PTO-HL-SETC-GEUI-CONDITIONAL-SETTER-001, PTO-HL-SETC-LTI-CONDITIONAL-SETTER-001, PTO-HL-SETC-LTUI-CONDITIONAL-SETTER-001, PTO-HL-SETC-NEI-CONDITIONAL-SETTER-001, PTO-HL-SETC-ORI-CONDITIONAL-SETTER-001, PTO-HL-SETRET-DECISION-BINDING-001, PTO-HL-SH-UPO-DECISION-BINDING-001, PTO-HL-SH-UPR-DECISION-BINDING-001, PTO-HL-SSRGET-DECISION-BINDING-001, PTO-HL-SSRSET-DECISION-BINDING-001, PTO-HL-SUBI-CONTRACT-001, PTO-HL-SUBIW-CONTRACT-001, PTO-HL-SW-UPO-DECISION-BINDING-001, PTO-HL-SW-UPR-DECISION-BINDING-001, PTO-HL-XORI-CONTRACT-001, PTO-HL-XORIW-CONTRACT-001, PTO-J-DECISION-BINDING-001, PTO-JR-DECISION-BINDING-001, PTO-L-BSTOP-DECISION-BINDING-001, PTO-LSRGET-BARG-001, PTO-MCOPY-RESTART-001, PTO-MGATHER-BYTE-DISPLACEMENT-001, PTO-MGATHER-CAS-ATOMIC-001, PTO-MGATHER-CAS-PUBLICATION-001, PTO-MGATHER-MASK-PREDICATE-001, PTO-MGATHER-MASK-PUBLICATION-001, PTO-MGATHER-MASK-TYPE-002, PTO-MSCATTER-BYTE-DISPLACEMENT-001, PTO-MSCATTER-DUPLICATE-ORDER-001, PTO-MSCATTER-MASK-DUPLICATE-001, PTO-MSCATTER-MASK-PREDICATE-001, PTO-MSCATTER-MASK-TYPE-002, PTO-NUMERIC-FORMAT-DESCRIPTOR-001, PTO-OR-DECISION-BINDING-001, PTO-PRF-NONFAULTING-HINT-001, PTO-PRFI-U-NONFAULTING-HINT-001, PTO-RELEASE-VERIFICATION, PTO-REV-DECISION-BINDING-001, PTO-SCVTF-DECISION-BINDING-001, PTO-SD-U-ADR-CONTRACT-001, PTO-SD-XOR-ADR-CONTRACT-001, PTO-SDI-ADR-CONTRACT-001, PTO-SDI-U-ADR-CONTRACT-001, PTO-SETC-AND-CONDITIONAL-SETTER-001, PTO-SETC-ANDI-CONDITIONAL-SETTER-001, PTO-SETC-EQ-CONDITIONAL-SETTER-001, PTO-SETC-EQI-CONDITIONAL-SETTER-001, PTO-SETC-GE-CONDITIONAL-SETTER-001, PTO-SETC-GEI-CONDITIONAL-SETTER-001, PTO-SETC-GEU-CONDITIONAL-SETTER-001, PTO-SETC-GEUI-CONDITIONAL-SETTER-001, PTO-SETC-LT-CONDITIONAL-SETTER-001, PTO-SETC-LTI-CONDITIONAL-SETTER-001, PTO-SETC-LTU-CONDITIONAL-SETTER-001, PTO-SETC-LTUI-CONDITIONAL-SETTER-001, PTO-SETC-NE-CONDITIONAL-SETTER-001, PTO-SETC-NEI-CONDITIONAL-SETTER-001, PTO-SETC-OR-CONDITIONAL-SETTER-001, PTO-SETC-ORI-CONDITIONAL-SETTER-001, PTO-SETC-TGT-ADR-CONTRACT-001, PTO-SETRET-ADR-CONTRACT-001, PTO-SH-ADR-CONTRACT-001, PTO-SH-PCR-ADR-CONTRACT-001, PTO-SH-U-ADR-CONTRACT-001, PTO-SHI-ADR-CONTRACT-001, PTO-SHI-U-ADR-CONTRACT-001, PTO-SLL-ADR-CONTRACT-001, PTO-SLLI-ADR-CONTRACT-001, PTO-SLLIW-ADR-CONTRACT-001, PTO-SLLW-ADR-CONTRACT-001, PTO-SOURCE-HIERARCHY, PTO-SRA-ADR-CONTRACT-001, PTO-SRAI-ADR-CONTRACT-001, PTO-SRAIW-ADR-CONTRACT-001, PTO-SRAW-ADR-CONTRACT-001, PTO-SRL-ADR-CONTRACT-001, PTO-SRLI-ADR-CONTRACT-001, PTO-SRLIW-ADR-CONTRACT-001, PTO-SRLW-ADR-CONTRACT-001, PTO-SSRGET-ADR-CONTRACT-001, PTO-SSRSET-ADR-CONTRACT-001, PTO-SSRSWAP-ADR-CONTRACT-001, PTO-SUB-ADR-CONTRACT-001, PTO-SUBI-ADR-CONTRACT-001, PTO-SUBIW-ADR-CONTRACT-001, PTO-SUBW-ADR-CONTRACT-001, PTO-SW-ADD-ADR-CONTRACT-001, PTO-SW-ADR-CONTRACT-001, PTO-SW-AND-ADR-CONTRACT-001, PTO-SW-OR-ADR-CONTRACT-001, PTO-SW-PCR-ADR-CONTRACT-001, PTO-SW-SMAX-ADR-CONTRACT-001, PTO-SW-SMIN-ADR-CONTRACT-001, PTO-SW-U-ADR-CONTRACT-001, PTO-SW-UMAX-ADR-CONTRACT-001, PTO-SW-UMIN-ADR-CONTRACT-001, PTO-SW-XOR-ADR-CONTRACT-001, PTO-SWAPB-ADR-CONTRACT-001, PTO-SWAPD-ADR-CONTRACT-001, PTO-SWAPH-ADR-CONTRACT-001, PTO-SWAPW-ADR-CONTRACT-001, PTO-SWI-ADR-CONTRACT-001, PTO-SWI-U-ADR-CONTRACT-001, PTO-TABS-CONTRACT-001, PTO-TADD-CONTRACT-001, PTO-TADDS-CONTRACT-001, PTO-TAND-CONTRACT-001, PTO-TANDS-CONTRACT-001, PTO-TCI-CONTRACT-001, PTO-TCMP-CONTRACT-001, PTO-TCMPS-CONTRACT-001, PTO-TCOLARGMAX-CONTRACT-001, PTO-TCOLARGMIN-CONTRACT-001, PTO-TCOLEXPAND-CONTRACT-001, PTO-TCOLEXPANDADD-CONTRACT-001, PTO-TCOLEXPANDDIV-CONTRACT-001, PTO-TCOLEXPANDEXPDIF-CONTRACT-001, PTO-TCOLEXPANDMAX-CONTRACT-001, PTO-TCOLEXPANDMIN-CONTRACT-001, PTO-TCOLEXPANDMUL-CONTRACT-001, PTO-TCOLEXPANDSUB-CONTRACT-001, PTO-TCOLMAX-CONTRACT-001, PTO-TCOLMIN-CONTRACT-001, PTO-TCOLPROD-CONTRACT-001, PTO-TCOLSUM-CONTRACT-001, PTO-TCONCAT-CONTRACT-001, PTO-TCVT-CONTRACT-001, PTO-TDEQUANT-CONTRACT-001, PTO-TDIV-CONTRACT-001, PTO-TDIVS-CONTRACT-001, PTO-TEXP-CONTRACT-001, PTO-TEXPANDS-CONTRACT-001, PTO-TEXTRACT-CONTRACT-001, PTO-TFMA-CONTRACT-001, PTO-TGATHER-CONTRACT-001, PTO-TGEMV-ACC-CONTRACT-001, PTO-TGEMV-BIAS-CONTRACT-001, PTO-TGEMV-CONTRACT-001, PTO-TGEMV-MX-ACC-CONTRACT-001, PTO-TGEMV-MX-BIAS-CONTRACT-001, PTO-TGEMV-MX-CONTRACT-001, PTO-THISTOGRAM-CONTRACT-001, PTO-TILE-CAPACITY-PER-PE, PTO-TIMG2COL-CONTRACT-001, PTO-TINSERT-CONTRACT-001, PTO-TLB-IA-ADR-CONTRACT-001, PTO-TLB-IALL-ADR-CONTRACT-001, PTO-TLB-IAV-ADR-CONTRACT-001, PTO-TLB-IV-ADR-CONTRACT-001, PTO-TLOAD-CUBE-001, PTO-TLOAD-MEMORY-001, PTO-TLOG-CONTRACT-001, PTO-TMATMUL-ACC-CONTRACT-001, PTO-TMATMUL-BIAS-CONTRACT-001, PTO-TMATMUL-CONTRACT-001, PTO-TMATMUL-MX-ACC-CONTRACT-001, PTO-TMATMUL-MX-BIAS-CONTRACT-001, PTO-TMATMUL-MX-CONTRACT-001, PTO-TMAX-CONTRACT-001, PTO-TMAXS-CONTRACT-001, PTO-TMIN-CONTRACT-001, PTO-TMINS-CONTRACT-001, PTO-TMOV-CONTRACT-001, PTO-TMRGSORT-CONTRACT-001, PTO-TMUL-CONTRACT-001, PTO-TMULS-CONTRACT-001, PTO-TNEG-CONTRACT-001, PTO-TNOT-CONTRACT-001, PTO-TOR-CONTRACT-001, PTO-TORS-CONTRACT-001, PTO-TPREFETCH-FOOTPRINT-001, PTO-TQUANT-CONTRACT-001, PTO-TRECIP-CONTRACT-001, PTO-TRELU-CONTRACT-001, PTO-TREM-CONTRACT-001, PTO-TREMS-CONTRACT-001, PTO-TROWARGMAX-CONTRACT-001, PTO-TROWARGMIN-CONTRACT-001, PTO-TROWEXPAND-CONTRACT-001, PTO-TROWEXPANDADD-CONTRACT-001, PTO-TROWEXPANDDIV-CONTRACT-001, PTO-TROWEXPANDEXPDIF-CONTRACT-001, PTO-TROWEXPANDMAX-CONTRACT-001, PTO-TROWEXPANDMIN-CONTRACT-001, PTO-TROWEXPANDMUL-CONTRACT-001, PTO-TROWEXPANDSUB-CONTRACT-001, PTO-TROWMAX-CONTRACT-001, PTO-TROWMIN-CONTRACT-001, PTO-TROWPROD-CONTRACT-001, PTO-TROWSUM-CONTRACT-001, PTO-TRSQRT-CONTRACT-001, PTO-TSCATTER-CONTRACT-001, PTO-TSEL-CONTRACT-001, PTO-TSELS-CONTRACT-001, PTO-TSHL-CONTRACT-001, PTO-TSHLS-CONTRACT-001, PTO-TSHR-CONTRACT-001, PTO-TSHRS-CONTRACT-001, PTO-TSORT-CONTRACT-001, PTO-TSQRT-CONTRACT-001, PTO-TSTORE-CUBE-001, PTO-TSTORE-MEMORY-001, PTO-TSUB-CONTRACT-001, PTO-TSUBS-CONTRACT-001, PTO-TTRI-CONTRACT-001, PTO-TXOR-CONTRACT-001, PTO-TXORS-CONTRACT-001, PTO-UCVTF-DECISION-BINDING-001, PTO-XOR-ADR-CONTRACT-001, PTO-XORI-ADR-CONTRACT-001, PTO-XORIW-ADR-CONTRACT-001, PTO-XORW-ADR-CONTRACT-001
    SHA-256
    f18d13f735cfaf9f2803c754c5818f4af33d1cc42c489f0d9ce060b07bb3a196
    Open exact decision source ↗ for ADR-0059

Unit metadata

Open 11 generated metadata fields
assembly
[
  "csel SrcP, SrcL, SrcR<.neg>, ->{t, u, Rd}"
]
block
[]
catalog_indices
[
  71
]
catalog_records
[
  {
    "asm": "csel SrcP, SrcL, SrcR<.neg>, ->{t, u, Rd}",
    "constraints": [],
    "encoding": [
      {
        "index": 0,
        "mask": "0x0000707f",
        "match": "0x00000077",
        "width_bits": 32
      }
    ],
    "encoding_kind": "L32",
    "fields": [
      {
        "name": "RegDst",
        "pieces": [
          {
            "instruction_lsb": 7,
            "value_lsb": 0,
            "width": 5
          }
        ],
        "signedness": "encoding-defined",
        "width": 5
      },
      {
        "name": "SrcL",
        "pieces": [
          {
            "instruction_lsb": 15,
            "value_lsb": 0,
            "width": 5
          }
        ],
        "signedness": "encoding-defined",
        "width": 5
      },
      {
        "name": "SrcP",
        "pieces": [
          {
            "instruction_lsb": 27,
            "value_lsb": 0,
            "width": 5
          }
        ],
        "signedness": "encoding-defined",
        "width": 5
      },
      {
        "name": "SrcR",
        "pieces": [
          {
            "instruction_lsb": 20,
            "value_lsb": 0,
            "width": 5
          }
        ],
        "signedness": "encoding-defined",
        "width": 5
      },
      {
        "name": "SrcRType",
        "pieces": [
          {
            "instruction_lsb": 25,
            "value_lsb": 0,
            "width": 2
          }
        ],
        "signedness": "encoding-defined",
        "width": 2
      }
    ],
    "form_id": "csel_32_ba77cbad3c99",
    "length_bits": 32,
    "mnemonic": "CSEL",
    "semantic_family": "ALU",
    "semantic_group": "ALU",
    "semantic_handler": "ScalarConditionalSelect",
    "semantic_summary": "CSEL snapshots three Reg5 sources, selects SrcL for a nonzero predicate or its optionally negated SrcR for zero, and publishes through the common scalar destination map.",
    "status": "accepted"
  }
]
classification
[
  "alu"
]
contract
{
  "block_composition": [
    "none"
  ],
  "canonical_assembly": [
    "csel SrcP, SrcL, SrcR<.neg>, ->{t, u, Rd}"
  ],
  "defaults": [
    "SrcP, SrcL, SrcR, SrcRType, and RegDst are required encoded fields; no field can be omitted.",
    "Assembly without .neg uses the canonical unmodified alias selected by the assembler. Raw SrcRType codes 00, 01, and 10 are assigned unmodified aliases; raw code 11 is .neg."
  ],
  "encoding_class": "standalone-encoded",
  "examples": [
    "csel a0, a1, a2, ->a3",
    "csel t#1, u#1, a0.neg, ->u",
    "csel zero, a0, a1, ->zero"
  ],
  "exceptions": [
    "An unavailable selected T/U queue source raises Fault_IllegalInstruction before the destination effect and before TPC advances, including a source not selected by the predicate outcome.",
    "CSEL raises no arithmetic, memory, alignment, permission, or control-flow exception."
  ],
  "field_contracts": {},
  "field_zero_meanings": {
    "RegDst": "Encoded zero discards the result.",
    "SrcL": "Encoded zero reads the architectural zero GPR.",
    "SrcP": "Encoded zero reads the architectural zero GPR and therefore selects the false value.",
    "SrcR": "Encoded zero reads the architectural zero GPR.",
    "SrcRType": "Encoded zero is an assigned unmodified false-source alias."
  },
  "legality": [
    "SrcP, SrcL, and SrcR codes 0..23 select absolute GPRs, 24..27 select T#1..T#4, and 28..31 select U#1..U#4 without consumption.",
    "All four SrcRType values are assigned. Codes 00, 01, and 10 leave SrcR unchanged; code 11 negates the complete XLEN value modulo 2^PTO_XLEN.",
    "RegDst codes 0 and 24..29 discard, codes 1..23 write GPRs, code 30 pushes U, and code 31 pushes T."
  ],
  "memory_effects": [
    "none"
  ],
  "operands": [
    {
      "field": "SrcP",
      "role": "Reg5 predicate source"
    },
    {
      "field": "SrcL",
      "role": "Reg5 true-value source"
    },
    {
      "field": "SrcR",
      "role": "Reg5 false-value source"
    },
    {
      "field": "SrcRType",
      "role": "CSEL-specific false-source modifier selector"
    },
    {
      "field": "RegDst",
      "role": "Reg5 destination or discard"
    }
  ],
  "ordering": [
    "Read all three Reg5 sources eagerly and non-consumingly before the destination write, even when the predicate outcome does not select one value.",
    "Publish the selected value, then advance TPC by four bytes."
  ],
  "standalone_opcode": true,
  "state_effects": [
    "Snapshot SrcP, SrcL, and SrcR before any destination effect. Only an all-zero SrcP is false; every nonzero bit pattern is true.",
    "For a true predicate publish the complete snapshotted SrcL. For a false predicate publish the complete snapshotted SrcR after the CSEL-specific raw modifier; negation wraps modulo 2^PTO_XLEN and does not fault.",
    "No memory, reservation, descriptor, numeric-status, block, privilege, branch-target, or other control state changes. Successful execution advances TPC by four bytes."
  ]
}
depends_on
[
  "PTO-BLOCK-MODEL-SCHEMA-PROFILE-ENCODING"
]
id
PTO-SCALAR-CSEL
mnemonic
CSEL
summary
CSEL snapshots three Reg5 sources, selects SrcL for a nonzero predicate or its optionally negated SrcR for zero, and publishes through the common scalar destination map.
surface
scalar
Open generated traceability record
{
  "classification": [
    "alu"
  ],
  "documentation": "docs/scalar/alu/CSEL.md",
  "id": "PTO-SCALAR-CSEL",
  "instruction_contract": {
    "artifact": "spec/evidence/instruction-contract-closure.json",
    "mnemonic": "CSEL",
    "ndf_clause": "PTO-INST-SCALAR-CSEL"
  },
  "mnemonic": "CSEL",
  "readiness_subjects": [
    "ADR-0026",
    "ADR-0059"
  ],
  "semantic_tests": [
    "PTO-AVS-SCALAR-CSEL-ALIASES-001",
    "PTO-AVS-SCALAR-CSEL-MODIFIER-001",
    "PTO-AVS-SCALAR-CSEL-READINESS-001",
    "PTO-AVS-SCALAR-CSEL-SELECT-001"
  ],
  "source": "asl/scalar/alu/CSEL.asl",
  "surface": "scalar",
  "tests": [
    "PTO-AVS-SCALAR-CSEL-ALIASES-001",
    "PTO-AVS-SCALAR-CSEL-DECODE-001",
    "PTO-AVS-SCALAR-CSEL-MODIFIER-001",
    "PTO-AVS-SCALAR-CSEL-READINESS-001",
    "PTO-AVS-SCALAR-CSEL-SELECT-001"
  ]
}

Sources and release identity

Show commit, paths, hashes, version, and canonical owners
Release
0.58.5 · Release candidate
Commit
7dc8b7e5b121d2b2499a2273bebff29e2cd86812
ASL SHA-256
79b14f86ccca58efb097e635b619db93e7d18188cf36ff488f5f8328c8c7a444
Generated documentation
docs/scalar/alu/CSEL.md · embedded in this page
Documentation SHA-256
0beb9ac79efc1efd0af89907073dcd9e80fe45dab0d4a750a7140be14cd9eea2

Exact owners