Scratch Memory Instructions
29 AMDGPU instructions in this category - click any row for encoding, pseudocode, and full documentation.
| Mnemonic | Syntax | Format | Summary |
|---|---|---|---|
| scratch_load_block | scratch_load_block | SCRATCH | Load a block of data from the scratch aperture. |
| scratch_load_dword | scratch_load_dword | SCRATCH | Load 32 bits of data from the scratch aperture into a vector register. |
| scratch_load_dwordx2 | scratch_load_dwordx2 | SCRATCH | Load 64 bits of data from the scratch aperture into a vector register. |
| scratch_load_dwordx3 | scratch_load_dwordx3 | SCRATCH | Load 96 bits of data from the scratch aperture into a vector register. |
| scratch_load_dwordx4 | scratch_load_dwordx4 | SCRATCH | Load 128 bits of data from the scratch aperture into a vector register. |
| scratch_load_lds_dword | scratch_load_lds_dword | SCRATCH | Load 32 bits of untyped data from the scratch aperture and store the result into a data share. |
| scratch_load_lds_sbyte | scratch_load_lds_sbyte | SCRATCH | Load 8 bits of untyped data from the scratch aperture, sign extend to 32 bits and store the result into a data share. |
| scratch_load_lds_sshort | scratch_load_lds_sshort | SCRATCH | Load 16 bits of untyped data from the scratch aperture, sign extend to 32 bits and store the result into a data share. |
| scratch_load_lds_ubyte | scratch_load_lds_ubyte | SCRATCH | Load 8 bits of untyped data from the scratch aperture, zero extend to 32 bits and store the result into a data share. |
| scratch_load_lds_ushort | scratch_load_lds_ushort | SCRATCH | Load 16 bits of untyped data from the scratch aperture, zero extend to 32 bits and store the result into a data share. |
| scratch_load_sbyte | scratch_load_sbyte | SCRATCH | Load 8 bits of signed data from the scratch aperture, sign extend to 32 bits and store the result into a vector register. |
| scratch_load_sbyte_d16 | scratch_load_sbyte_d16 | SCRATCH | Load 8 bits of signed data from the scratch aperture, sign extend to 16 bits and store the result into the low 16 bits of a 32-bit vector register. |
| scratch_load_sbyte_d16_hi | scratch_load_sbyte_d16_hi | SCRATCH | Load 8 bits of signed data from the scratch aperture, sign extend to 16 bits and store the result into the high 16 bits of a 32-bit vector register. |
| scratch_load_short_d16 | scratch_load_short_d16 | SCRATCH | Load 16 bits of unsigned data from the scratch aperture and store the result into the low 16 bits of a 32-bit vector register. |
| scratch_load_short_d16_hi | scratch_load_short_d16_hi | SCRATCH | Load 16 bits of unsigned data from the scratch aperture and store the result into the high 16 bits of a 32-bit vector register. |
| scratch_load_sshort | scratch_load_sshort | SCRATCH | Load 16 bits of signed data from the scratch aperture, sign extend to 32 bits and store the result into a vector register. |
| scratch_load_ubyte | scratch_load_ubyte | SCRATCH | Load 8 bits of unsigned data from the scratch aperture, zero extend to 32 bits and store the result into a vector register. |
| scratch_load_ubyte_d16 | scratch_load_ubyte_d16 | SCRATCH | Load 8 bits of unsigned data from the scratch aperture, zero extend to 16 bits and store the result into the low 16 bits of a 32-bit vector register. |
| scratch_load_ubyte_d16_hi | scratch_load_ubyte_d16_hi | SCRATCH | Load 8 bits of unsigned data from the scratch aperture, zero extend to 16 bits and store the result into the high 16 bits of a 32-bit vector register. |
| scratch_load_ushort | scratch_load_ushort | SCRATCH | Load 16 bits of unsigned data from the scratch aperture, zero extend to 32 bits and store the result into a vector register. |
| scratch_store_block | scratch_store_block | SCRATCH | Store a block of data to the scratch aperture. |
| scratch_store_byte | scratch_store_byte | SCRATCH | Store 8 bits of data from a vector register into the scratch aperture. |
| scratch_store_byte_d16_hi | scratch_store_byte_d16_hi | SCRATCH | Store 8 bits of data from the high 16 bits of a 32-bit vector register into the scratch aperture. |
| scratch_store_dword | scratch_store_dword | SCRATCH | Store 32 bits of data from vector input registers into the scratch aperture. |
| scratch_store_dwordx2 | scratch_store_dwordx2 | SCRATCH | Store 64 bits of data from vector input registers into the scratch aperture. |
| scratch_store_dwordx3 | scratch_store_dwordx3 | SCRATCH | Store 96 bits of data from vector input registers into the scratch aperture. |
| scratch_store_dwordx4 | scratch_store_dwordx4 | SCRATCH | Store 128 bits of data from vector input registers into the scratch aperture. |
| scratch_store_short | scratch_store_short | SCRATCH | Store 16 bits of data from a vector register into the scratch aperture. |
| scratch_store_short_d16_hi | scratch_store_short_d16_hi | SCRATCH | Store 16 bits of data from the high 16 bits of a 32-bit vector register into the scratch aperture. |