Vector Arithmetic Instructions
558 AMDGPU instructions in this category - showing 100 per page, page 2 of 6 - click any row for encoding, pseudocode, and full documentation.
| Mnemonic | Syntax | Format | Summary |
|---|---|---|---|
| v_cvt_pk_bf8_f16 | v_cvt_pk_bf8_f16 | VOP1 | AMDGPU VOP1 vector instruction operating on f16 data. (Format and name extracted from LLVM's AMDGPU backend source - semantics not yet curated.) |
| v_cvt_pk_bf8_f32 | v_cvt_pk_bf8_f32 | VOP3 | Convert from two single-precision float inputs to a packed BF8 float value with round to nearest even semantics and store the result into 16 bits of… |
| v_cvt_pk_f16_bf8 | v_cvt_pk_f16_bf8 | VOP1 | AMDGPU VOP1 vector instruction operating on f16 data. (Format and name extracted from LLVM's AMDGPU backend source - semantics not yet curated.) |
| v_cvt_pk_f16_f32 | v_cvt_pk_f16_f32 | VOP3 | Convert from two single-precision float inputs to a packed half-precision value and store the result into a vector register. |
| v_cvt_pk_f16_fp8 | v_cvt_pk_f16_fp8 | VOP1 | AMDGPU VOP1 vector instruction operating on f16 data. (Format and name extracted from LLVM's AMDGPU backend source - semantics not yet curated.) |
| v_cvt_pk_f32_bf8 | v_cvt_pk_f32_bf8 | VOP1 | Convert from a packed 2-component BF8 float input to a packed single-precision float value and store the result into a vector register. |
| v_cvt_pk_f32_bf8_fake16 | v_cvt_pk_f32_bf8_fake16 | VOP1 | AMDGPU VOP1 vector instruction operating on f32 data. (Format and name extracted from LLVM's AMDGPU backend source - semantics not yet curated.) |
| v_cvt_pk_f32_bf8_t16 | v_cvt_pk_f32_bf8_t16 | VOP1 | AMDGPU VOP1 vector instruction operating on f32 data. (Format and name extracted from LLVM's AMDGPU backend source - semantics not yet curated.) |
| v_cvt_pk_f32_fp8 | v_cvt_pk_f32_fp8 | VOP1 | Convert from a packed 2-component FP8 float input to a packed single-precision float value and store the result into a vector register. |
| v_cvt_pk_f32_fp8_fake16 | v_cvt_pk_f32_fp8_fake16 | VOP1 | AMDGPU VOP1 vector instruction operating on f32 data. (Format and name extracted from LLVM's AMDGPU backend source - semantics not yet curated.) |
| v_cvt_pk_f32_fp8_t16 | v_cvt_pk_f32_fp8_t16 | VOP1 | AMDGPU VOP1 vector instruction operating on f32 data. (Format and name extracted from LLVM's AMDGPU backend source - semantics not yet curated.) |
| v_cvt_pk_fp8_f16 | v_cvt_pk_fp8_f16 | VOP1 | AMDGPU VOP1 vector instruction operating on f16 data. (Format and name extracted from LLVM's AMDGPU backend source - semantics not yet curated.) |
| v_cvt_pk_fp8_f32 | v_cvt_pk_fp8_f32 | VOP3 | Convert from two single-precision float inputs to a packed FP8 float value with round to nearest even semantics and store the result into 16 bits of… |
| v_cvt_pk_fp8_f32_gfx1250 | v_cvt_pk_fp8_f32_gfx1250 | VOP3 | AMDGPU VOP3 vector instruction operating on f32 data. (Format and name extracted from LLVM's AMDGPU backend source - semantics not yet curated.) |
| v_cvt_pk_i16_f32 | v_cvt_pk_i16_f32 | VOP3 | Convert two single-precision float inputs into a packed signed 16-bit integer value and store the result into a vector register. |
| v_cvt_pk_i16_i32 | v_cvt_pk_i16_i32 | VOP2 | Convert from two signed 32-bit integer inputs to a packed signed 16-bit integer value and store the result into a vector register. |
| v_cvt_pk_norm_i16_f16 | v_cvt_pk_norm_i16_f16 | VOP3 | Convert from two half-precision float inputs to a packed signed normalized short and store the result into a vector register. |
| v_cvt_pk_norm_i16_f32 | v_cvt_pk_norm_i16_f32 | VOP3 | Convert from two single-precision float inputs to a packed signed normalized short and store the result into a vector register. |
| v_cvt_pk_norm_u16_f16 | v_cvt_pk_norm_u16_f16 | VOP3 | Convert from two half-precision float inputs to a packed unsigned normalized short and store the result into a vector register. |
| v_cvt_pk_norm_u16_f32 | v_cvt_pk_norm_u16_f32 | VOP3 | Convert from two single-precision float inputs to a packed unsigned normalized short and store the result into a vector register. |
| v_cvt_pk_u16_f32 | v_cvt_pk_u16_f32 | VOP3 | Convert two single-precision float inputs into a packed unsigned 16-bit integer value and store the result into a vector register. |
| v_cvt_pk_u16_u32 | v_cvt_pk_u16_u32 | VOP2 | Convert from two unsigned 32-bit integer inputs to a packed unsigned 16-bit integer value and store the result into a vector register. |
| v_cvt_pk_u8_f32 | v_cvt_pk_u8_f32 | VOP3 | Convert a single-precision float value from the first input to an unsigned 8-bit integer value and pack the result into one byte of the third input… |
| v_cvt_pkaccum_u8_f32 | v_cvt_pkaccum_u8_f32 | VOP2 | Convert a single-precision float value in the first input to an unsigned 8-bit integer value and store the result into one byte of the destination… |
| v_cvt_pknorm_i16_f16 | v_cvt_pknorm_i16_f16 | VOP3 | Convert from two half-precision float inputs to a packed signed normalized short and store the result into a vector register. |
| v_cvt_pknorm_i16_f32 | v_cvt_pknorm_i16_f32 | VOP2 | Convert from two single-precision float inputs to a packed signed normalized short and store the result into a vector register. |
| v_cvt_pknorm_u16_f16 | v_cvt_pknorm_u16_f16 | VOP3 | Convert from two half-precision float inputs to a packed unsigned normalized short and store the result into a vector register. |
| v_cvt_pknorm_u16_f32 | v_cvt_pknorm_u16_f32 | VOP2 | Convert from two single-precision float inputs to a packed unsigned normalized short and store the result into a vector register. |
| v_cvt_pkrtz_f16_f32 | v_cvt_pkrtz_f16_f32 | VOP2 | Convert two single-precision float inputs to a packed half-precision float value using round toward zero semantics (ignore the current rounding… |
| v_cvt_rpi_i32_f32 | v_cvt_rpi_i32_f32 | VOP1 | Convert from a single-precision float input to a signed 32-bit integer value using round to nearest integer semantics (ignore the default rounding… |
| v_cvt_scale_pk16_bf16_bf6 | v_cvt_scale_pk16_bf16_bf6 | VOP3 | AMDGPU VOP3 vector instruction. (Format and name extracted from LLVM's AMDGPU backend source - semantics not yet curated.) |
| v_cvt_scale_pk16_bf16_fp6 | v_cvt_scale_pk16_bf16_fp6 | VOP3 | AMDGPU VOP3 vector instruction. (Format and name extracted from LLVM's AMDGPU backend source - semantics not yet curated.) |
| v_cvt_scale_pk16_f16_bf6 | v_cvt_scale_pk16_f16_bf6 | VOP3 | AMDGPU VOP3 vector instruction operating on f16 data. (Format and name extracted from LLVM's AMDGPU backend source - semantics not yet curated.) |
| v_cvt_scale_pk16_f16_fp6 | v_cvt_scale_pk16_f16_fp6 | VOP3 | AMDGPU VOP3 vector instruction operating on f16 data. (Format and name extracted from LLVM's AMDGPU backend source - semantics not yet curated.) |
| v_cvt_scale_pk16_f32_bf6 | v_cvt_scale_pk16_f32_bf6 | VOP3 | AMDGPU VOP3 vector instruction operating on f32 data. (Format and name extracted from LLVM's AMDGPU backend source - semantics not yet curated.) |
| v_cvt_scale_pk16_f32_fp6 | v_cvt_scale_pk16_f32_fp6 | VOP3 | AMDGPU VOP3 vector instruction operating on f32 data. (Format and name extracted from LLVM's AMDGPU backend source - semantics not yet curated.) |
| v_cvt_scale_pk8_bf16_bf8 | v_cvt_scale_pk8_bf16_bf8 | VOP3 | AMDGPU VOP3 vector instruction. (Format and name extracted from LLVM's AMDGPU backend source - semantics not yet curated.) |
| v_cvt_scale_pk8_bf16_fp4 | v_cvt_scale_pk8_bf16_fp4 | VOP3 | AMDGPU VOP3 vector instruction. (Format and name extracted from LLVM's AMDGPU backend source - semantics not yet curated.) |
| v_cvt_scale_pk8_bf16_fp8 | v_cvt_scale_pk8_bf16_fp8 | VOP3 | AMDGPU VOP3 vector instruction. (Format and name extracted from LLVM's AMDGPU backend source - semantics not yet curated.) |
| v_cvt_scale_pk8_f16_bf8 | v_cvt_scale_pk8_f16_bf8 | VOP3 | AMDGPU VOP3 vector instruction operating on f16 data. (Format and name extracted from LLVM's AMDGPU backend source - semantics not yet curated.) |
| v_cvt_scale_pk8_f16_fp4 | v_cvt_scale_pk8_f16_fp4 | VOP3 | AMDGPU VOP3 vector instruction operating on f16 data. (Format and name extracted from LLVM's AMDGPU backend source - semantics not yet curated.) |
| v_cvt_scale_pk8_f16_fp8 | v_cvt_scale_pk8_f16_fp8 | VOP3 | AMDGPU VOP3 vector instruction operating on f16 data. (Format and name extracted from LLVM's AMDGPU backend source - semantics not yet curated.) |
| v_cvt_scale_pk8_f32_bf8 | v_cvt_scale_pk8_f32_bf8 | VOP3 | AMDGPU VOP3 vector instruction operating on f32 data. (Format and name extracted from LLVM's AMDGPU backend source - semantics not yet curated.) |
| v_cvt_scale_pk8_f32_fp4 | v_cvt_scale_pk8_f32_fp4 | VOP3 | AMDGPU VOP3 vector instruction operating on f32 data. (Format and name extracted from LLVM's AMDGPU backend source - semantics not yet curated.) |
| v_cvt_scale_pk8_f32_fp8 | v_cvt_scale_pk8_f32_fp8 | VOP3 | AMDGPU VOP3 vector instruction operating on f32 data. (Format and name extracted from LLVM's AMDGPU backend source - semantics not yet curated.) |
| v_cvt_scalef32_2xpk16_bf6_f32 | v_cvt_scalef32_2xpk16_bf6_f32 | VOP3 | Scale packed 16-component single-precision float vectors from two source inputs using the exponent provided by the third single-precision float… |
| v_cvt_scalef32_2xpk16_fp6_f32 | v_cvt_scalef32_2xpk16_fp6_f32 | VOP3 | Scale packed 16-component single-precision float vectors from two source inputs using the exponent provided by the third single-precision float… |
| v_cvt_scalef32_f16_bf8 | v_cvt_scalef32_f16_bf8 | VOP3 | Convert from a BF8 float input to a half-precision float value, then scale the value using the exponent provided by the second single-precision float… |
| v_cvt_scalef32_f16_fp8 | v_cvt_scalef32_f16_fp8 | VOP3 | Convert from an FP8 float input to a half-precision float value, then scale the value using the exponent provided by the second single-precision… |
| v_cvt_scalef32_f32_bf8 | v_cvt_scalef32_f32_bf8 | VOP3 | Convert from a BF8 float input to a single-precision float value, then scale the value using the exponent provided by the second single-precision… |
| v_cvt_scalef32_f32_fp8 | v_cvt_scalef32_f32_fp8 | VOP3 | Convert from an FP8 float input to a single-precision float value, then scale the value using the exponent provided by the second single-precision… |
| v_cvt_scalef32_pk16_bf6_bf16 | v_cvt_scalef32_pk16_bf6_bf16 | VOP3 | AMDGPU VOP3 vector instruction. (Format and name extracted from LLVM's AMDGPU backend source - semantics not yet curated.) |
| v_cvt_scalef32_pk16_bf6_f16 | v_cvt_scalef32_pk16_bf6_f16 | VOP3 | AMDGPU VOP3 vector instruction operating on f16 data. (Format and name extracted from LLVM's AMDGPU backend source - semantics not yet curated.) |
| v_cvt_scalef32_pk16_bf6_f32 | v_cvt_scalef32_pk16_bf6_f32 | VOP3 | AMDGPU VOP3 vector instruction operating on f32 data. (Format and name extracted from LLVM's AMDGPU backend source - semantics not yet curated.) |
| v_cvt_scalef32_pk16_fp6_bf16 | v_cvt_scalef32_pk16_fp6_bf16 | VOP3 | AMDGPU VOP3 vector instruction. (Format and name extracted from LLVM's AMDGPU backend source - semantics not yet curated.) |
| v_cvt_scalef32_pk16_fp6_f16 | v_cvt_scalef32_pk16_fp6_f16 | VOP3 | AMDGPU VOP3 vector instruction operating on f16 data. (Format and name extracted from LLVM's AMDGPU backend source - semantics not yet curated.) |
| v_cvt_scalef32_pk16_fp6_f32 | v_cvt_scalef32_pk16_fp6_f32 | VOP3 | AMDGPU VOP3 vector instruction operating on f32 data. (Format and name extracted from LLVM's AMDGPU backend source - semantics not yet curated.) |
| v_cvt_scalef32_pk32_bf16_bf6 | v_cvt_scalef32_pk32_bf16_bf6 | VOP3 | Convert from a packed 32-component BF6 float input to a packed BF16 float value, then scale the packed values using the exponent provided by the… |
| v_cvt_scalef32_pk32_bf16_fp6 | v_cvt_scalef32_pk32_bf16_fp6 | VOP3 | Convert from a packed 32-component FP6 float input to a packed BF16 float value, then scale the packed values using the exponent provided by the… |
| v_cvt_scalef32_pk32_bf6_bf16 | v_cvt_scalef32_pk32_bf6_bf16 | VOP3 | Scale a packed 32-component BF16 float input using the exponent provided by the second single-precision float input, then convert the values to a… |
| v_cvt_scalef32_pk32_bf6_f16 | v_cvt_scalef32_pk32_bf6_f16 | VOP3 | Scale a packed 32-component half-precision float input using the exponent provided by the second single-precision float input, then convert the… |
| v_cvt_scalef32_pk32_bf6_f32 | v_cvt_scalef32_pk32_bf6_f32 | VOP3 | AMDGPU VOP3 vector instruction operating on f32 data. (Format and name extracted from LLVM's AMDGPU backend source - semantics not yet curated.) |
| v_cvt_scalef32_pk32_f16_bf6 | v_cvt_scalef32_pk32_f16_bf6 | VOP3 | Convert from a packed 32-component BF6 float input to a packed half-precision float value, then scale the packed values using the exponent provided… |
| v_cvt_scalef32_pk32_f16_fp6 | v_cvt_scalef32_pk32_f16_fp6 | VOP3 | Convert from a packed 32-component FP6 float input to a packed half-precision float value, then scale the packed values using the exponent provided… |
| v_cvt_scalef32_pk32_f32_bf6 | v_cvt_scalef32_pk32_f32_bf6 | VOP3 | Convert from a packed 32-component BF6 float input to a packed single-precision float value, then scale the packed values using the exponent provided… |
| v_cvt_scalef32_pk32_f32_fp6 | v_cvt_scalef32_pk32_f32_fp6 | VOP3 | Convert from a packed 32-component FP6 float input to a packed single-precision float value, then scale the packed values using the exponent provided… |
| v_cvt_scalef32_pk32_fp6_bf16 | v_cvt_scalef32_pk32_fp6_bf16 | VOP3 | Scale a packed 32-component BF16 float input using the exponent provided by the second single-precision float input, then convert the values to a… |
| v_cvt_scalef32_pk32_fp6_f16 | v_cvt_scalef32_pk32_fp6_f16 | VOP3 | Scale a packed 32-component half-precision float input using the exponent provided by the second single-precision float input, then convert the… |
| v_cvt_scalef32_pk32_fp6_f32 | v_cvt_scalef32_pk32_fp6_f32 | VOP3 | AMDGPU VOP3 vector instruction operating on f32 data. (Format and name extracted from LLVM's AMDGPU backend source - semantics not yet curated.) |
| v_cvt_scalef32_pk8_bf8_bf16 | v_cvt_scalef32_pk8_bf8_bf16 | VOP3 | AMDGPU VOP3 vector instruction. (Format and name extracted from LLVM's AMDGPU backend source - semantics not yet curated.) |
| v_cvt_scalef32_pk8_bf8_f16 | v_cvt_scalef32_pk8_bf8_f16 | VOP3 | AMDGPU VOP3 vector instruction operating on f16 data. (Format and name extracted from LLVM's AMDGPU backend source - semantics not yet curated.) |
| v_cvt_scalef32_pk8_bf8_f32 | v_cvt_scalef32_pk8_bf8_f32 | VOP3 | AMDGPU VOP3 vector instruction operating on f32 data. (Format and name extracted from LLVM's AMDGPU backend source - semantics not yet curated.) |
| v_cvt_scalef32_pk8_fp4_bf16 | v_cvt_scalef32_pk8_fp4_bf16 | VOP3 | AMDGPU VOP3 vector instruction. (Format and name extracted from LLVM's AMDGPU backend source - semantics not yet curated.) |
| v_cvt_scalef32_pk8_fp4_f16 | v_cvt_scalef32_pk8_fp4_f16 | VOP3 | AMDGPU VOP3 vector instruction operating on f16 data. (Format and name extracted from LLVM's AMDGPU backend source - semantics not yet curated.) |
| v_cvt_scalef32_pk8_fp4_f32 | v_cvt_scalef32_pk8_fp4_f32 | VOP3 | AMDGPU VOP3 vector instruction operating on f32 data. (Format and name extracted from LLVM's AMDGPU backend source - semantics not yet curated.) |
| v_cvt_scalef32_pk8_fp8_bf16 | v_cvt_scalef32_pk8_fp8_bf16 | VOP3 | AMDGPU VOP3 vector instruction. (Format and name extracted from LLVM's AMDGPU backend source - semantics not yet curated.) |
| v_cvt_scalef32_pk8_fp8_f16 | v_cvt_scalef32_pk8_fp8_f16 | VOP3 | AMDGPU VOP3 vector instruction operating on f16 data. (Format and name extracted from LLVM's AMDGPU backend source - semantics not yet curated.) |
| v_cvt_scalef32_pk8_fp8_f32 | v_cvt_scalef32_pk8_fp8_f32 | VOP3 | AMDGPU VOP3 vector instruction operating on f32 data. (Format and name extracted from LLVM's AMDGPU backend source - semantics not yet curated.) |
| v_cvt_scalef32_pk_bf16_bf8 | v_cvt_scalef32_pk_bf16_bf8 | VOP3 | Convert from a packed 2-component BF8 float input to a packed BF16 float value, then scale the packed values using the exponent provided by the… |
| v_cvt_scalef32_pk_bf16_fp4 | v_cvt_scalef32_pk_bf16_fp4 | VOP3 | Convert from a packed 2-component FP4 float input to a packed BF16 float value, then scale the packed values using the exponent provided by the… |
| v_cvt_scalef32_pk_bf16_fp8 | v_cvt_scalef32_pk_bf16_fp8 | VOP3 | Convert from a packed 2-component FP8 float input to a packed BF16 float value, then scale the packed values using the exponent provided by the… |
| v_cvt_scalef32_pk_bf8_bf16 | v_cvt_scalef32_pk_bf8_bf16 | VOP3 | Scale a packed 2-component BF16 float input using the exponent provided by the second single-precision float input, then convert the values to a… |
| v_cvt_scalef32_pk_bf8_f16 | v_cvt_scalef32_pk_bf8_f16 | VOP3 | Scale a packed 2-component half-precision float input using the exponent provided by the second single-precision float input, then convert the values… |
| v_cvt_scalef32_pk_bf8_f32 | v_cvt_scalef32_pk_bf8_f32 | VOP3 | Scale two single-precision float inputs using the exponent provided by the third single-precision float input, then convert the values to a packed… |
| v_cvt_scalef32_pk_f16_bf8 | v_cvt_scalef32_pk_f16_bf8 | VOP3 | Convert from a packed 2-component BF8 float input to a packed half-precision float value, then scale the packed values using the exponent provided by… |
| v_cvt_scalef32_pk_f16_fp4 | v_cvt_scalef32_pk_f16_fp4 | VOP3 | Convert from a packed 2-component FP4 float input to a packed half-precision float value, then scale the packed values using the exponent provided by… |
| v_cvt_scalef32_pk_f16_fp8 | v_cvt_scalef32_pk_f16_fp8 | VOP3 | Convert from a packed 2-component FP8 float input to a packed half-precision float value, then scale the packed values using the exponent provided by… |
| v_cvt_scalef32_pk_f32_bf8 | v_cvt_scalef32_pk_f32_bf8 | VOP3 | Convert from a packed 2-component BF8 float input to a packed single-precision float value, then scale the packed values using the exponent provided… |
| v_cvt_scalef32_pk_f32_fp4 | v_cvt_scalef32_pk_f32_fp4 | VOP3 | Convert from a packed 2-component FP4 float input to a packed single-precision float value, then scale the packed values using the exponent provided… |
| v_cvt_scalef32_pk_f32_fp8 | v_cvt_scalef32_pk_f32_fp8 | VOP3 | Convert from a packed 2-component FP8 float input to a packed single-precision float value, then scale the packed values using the exponent provided… |
| v_cvt_scalef32_pk_fp4_bf16 | v_cvt_scalef32_pk_fp4_bf16 | VOP3 | Scale a packed 2-component BF16 float input using the exponent provided by the second single-precision float input, then convert the values to a… |
| v_cvt_scalef32_pk_fp4_f16 | v_cvt_scalef32_pk_fp4_f16 | VOP3 | Scale a packed 2-component half-precision float input using the exponent provided by the second single-precision float input, then convert the values… |
| v_cvt_scalef32_pk_fp4_f32 | v_cvt_scalef32_pk_fp4_f32 | VOP3 | Scale two single-precision float inputs using the exponent provided by the third single-precision float input, then convert the values to a packed… |
| v_cvt_scalef32_pk_fp8_bf16 | v_cvt_scalef32_pk_fp8_bf16 | VOP3 | Scale a packed 2-component BF16 float input using the exponent provided by the second single-precision float input, then convert the values to a… |
| v_cvt_scalef32_pk_fp8_f16 | v_cvt_scalef32_pk_fp8_f16 | VOP3 | Scale a packed 2-component half-precision float input using the exponent provided by the second single-precision float input, then convert the values… |
| v_cvt_scalef32_pk_fp8_f32 | v_cvt_scalef32_pk_fp8_f32 | VOP3 | Scale two single-precision float inputs using the exponent provided by the third single-precision float input, then convert the values to a packed… |
| v_cvt_scalef32_sr_bf8_bf16 | v_cvt_scalef32_sr_bf8_bf16 | VOP3 | Scale a BF16 float input using the exponent provided by the third single-precision float input, then convert the values to a BF8 float value with… |
| v_cvt_scalef32_sr_bf8_f16 | v_cvt_scalef32_sr_bf8_f16 | VOP3 | Scale a half-precision float input using the exponent provided by the third single-precision float input, then convert the values to a BF8 float… |
| v_cvt_scalef32_sr_bf8_f32 | v_cvt_scalef32_sr_bf8_f32 | VOP3 | Scale a single-precision float input using the exponent provided by the third single-precision float input, then convert the values to a BF8 float… |
| v_cvt_scalef32_sr_fp8_bf16 | v_cvt_scalef32_sr_fp8_bf16 | VOP3 | Scale a BF16 float input using the exponent provided by the third single-precision float input, then convert the values to an FP8 float value with… |