brintos

brintos / llvm-project-archived public Read only

0
0
Text · 126.4 KiB · be4e0de Raw
1877 lines · plain
1// NOTE: Assertions have been autogenerated by utils/update_mc_test_checks.py UTC_ARGS: --unique --version 52// RUN: not llvm-mc -triple=amdgcn -mcpu=tahiti -show-encoding %s | FileCheck %s --check-prefix=SICI3// RUN: not llvm-mc -triple=amdgcn -mcpu=bonaire -show-encoding %s | FileCheck %s --check-prefixes=SICI,CI4// RUN: not llvm-mc -triple=amdgcn -mcpu=tonga -show-encoding %s | FileCheck %s --check-prefixes=GFX8PLUS,GFX895// RUN: not llvm-mc -triple=amdgcn -mcpu=gfx900 -show-encoding %s | FileCheck %s --check-prefixes=GFX8PLUS,GFX89,GFX96// RUN: not llvm-mc -triple=amdgcn -mcpu=gfx1100 -show-encoding %s | FileCheck %s --check-prefixes=GFX8PLUS,GFX117// RUN: not llvm-mc -triple=amdgcn -mcpu=gfx1200 -show-encoding %s | FileCheck %s --check-prefixes=GFX8PLUS,GFX12XX,GFX128// RUN: not llvm-mc -triple=amdgcn -mcpu=gfx1250 -mattr=+real-true16 -show-encoding %s | FileCheck %s --check-prefixes=GFX8PLUS,GFX12XX,GFX1250,GFX1250-ASM9// RUN: not llvm-mc -triple=amdgcn -mcpu=gfx1250 -mattr=+real-true16 -show-encoding %s | %extract-encodings | llvm-mc -triple=amdgcn -mcpu=gfx1250 -mattr=+real-true16 -disassemble -show-encoding | FileCheck %s --check-prefixes=GFX8PLUS,GFX12XX,GFX1250,GFX1250-DIS10 11// RUN: not llvm-mc -triple=amdgcn -mcpu=tahiti %s -filetype=null 2>&1 | FileCheck %s --check-prefixes=NOGCN,NOSICI,NOSI --implicit-check-not=error:12// RUN: not llvm-mc -triple=amdgcn -mcpu=bonaire %s -filetype=null 2>&1 | FileCheck %s --check-prefixes=NOGCN,NOSICI,NOCI --implicit-check-not=error:13// RUN: not llvm-mc -triple=amdgcn -mcpu=tonga %s -filetype=null 2>&1 | FileCheck %s --check-prefixes=NOGCN,NOGFX8PLUS,NOGFX89,NOVI --implicit-check-not=error:14// RUN: not llvm-mc -triple=amdgcn -mcpu=gfx900 %s -filetype=null 2>&1 | FileCheck %s --check-prefixes=NOGCN,NOGFX8PLUS,NOGFX89,NOGFX9 --implicit-check-not=error:15// RUN: not llvm-mc -triple=amdgcn -mcpu=gfx1100 %s -filetype=null 2>&1 | FileCheck %s --check-prefixes=NOGCN,NOGFX8PLUS,NOGFX11 --implicit-check-not=error:16// RUN: not llvm-mc -triple=amdgcn -mcpu=gfx1200 %s -filetype=null 2>&1 | FileCheck %s --check-prefixes=NOGCN,NOGFX8PLUS,NOGFX12 --implicit-check-not=error:17// RUN: not llvm-mc -triple=amdgcn -mcpu=gfx1250 %s -mattr=+real-true16 -filetype=null 2>&1 | FileCheck %s --check-prefixes=NOGCN,NOGFX8PLUS,NOGFX1250 --implicit-check-not=error:18 19//---------------------------------------------------------------------------//20// fp literal, expected fp operand21//---------------------------------------------------------------------------//22 23v_fract_f64 v[0:1], 0.524// GFX11: v_fract_f64_e32 v[0:1], 0.5             ; encoding: [0xf0,0x7c,0x00,0x7e]25// GFX12XX: v_fract_f64_e32 v[0:1], 0.5             ; encoding: [0xf0,0x7c,0x00,0x7e]26// GFX89: v_fract_f64_e32 v[0:1], 0.5             ; encoding: [0xf0,0x64,0x00,0x7e]27// SICI: v_fract_f64_e32 v[0:1], 0.5             ; encoding: [0xf0,0x7c,0x00,0x7e]28 29v_sqrt_f64 v[0:1], -4.030// GFX11: v_sqrt_f64_e32 v[0:1], -4.0             ; encoding: [0xf7,0x68,0x00,0x7e]31// GFX12XX: v_sqrt_f64_e32 v[0:1], -4.0             ; encoding: [0xf7,0x68,0x00,0x7e]32// GFX89: v_sqrt_f64_e32 v[0:1], -4.0             ; encoding: [0xf7,0x50,0x00,0x7e]33// SICI: v_sqrt_f64_e32 v[0:1], -4.0             ; encoding: [0xf7,0x68,0x00,0x7e]34 35v_log_clamp_f32 v1, 0.536// NOGFX8PLUS: :[[@LINE-1]]:1: error: instruction not supported on this GPU37// SICI: v_log_clamp_f32_e32 v1, 0.5             ; encoding: [0xf0,0x4c,0x02,0x7e]38 39v_trunc_f32 v0, 0.540// GFX11: v_trunc_f32_e32 v0, 0.5                 ; encoding: [0xf0,0x42,0x00,0x7e]41// GFX12XX: v_trunc_f32_e32 v0, 0.5                 ; encoding: [0xf0,0x42,0x00,0x7e]42// GFX89: v_trunc_f32_e32 v0, 0.5                 ; encoding: [0xf0,0x38,0x00,0x7e]43// SICI: v_trunc_f32_e32 v0, 0.5                 ; encoding: [0xf0,0x42,0x00,0x7e]44 45v_fract_f64 v[0:1], -1.046// GFX11: v_fract_f64_e32 v[0:1], -1.0            ; encoding: [0xf3,0x7c,0x00,0x7e]47// GFX12XX: v_fract_f64_e32 v[0:1], -1.0            ; encoding: [0xf3,0x7c,0x00,0x7e]48// GFX89: v_fract_f64_e32 v[0:1], -1.0            ; encoding: [0xf3,0x64,0x00,0x7e]49// SICI: v_fract_f64_e32 v[0:1], -1.0            ; encoding: [0xf3,0x7c,0x00,0x7e]50 51v_trunc_f32 v0, -1.052// GFX11: v_trunc_f32_e32 v0, -1.0                ; encoding: [0xf3,0x42,0x00,0x7e]53// GFX12XX: v_trunc_f32_e32 v0, -1.0                ; encoding: [0xf3,0x42,0x00,0x7e]54// GFX89: v_trunc_f32_e32 v0, -1.0                ; encoding: [0xf3,0x38,0x00,0x7e]55// SICI: v_trunc_f32_e32 v0, -1.0                ; encoding: [0xf3,0x42,0x00,0x7e]56 57v_fract_f64 v[0:1], 4.058// GFX11: v_fract_f64_e32 v[0:1], 4.0             ; encoding: [0xf6,0x7c,0x00,0x7e]59// GFX12XX: v_fract_f64_e32 v[0:1], 4.0             ; encoding: [0xf6,0x7c,0x00,0x7e]60// GFX89: v_fract_f64_e32 v[0:1], 4.0             ; encoding: [0xf6,0x64,0x00,0x7e]61// SICI: v_fract_f64_e32 v[0:1], 4.0             ; encoding: [0xf6,0x7c,0x00,0x7e]62 63v_trunc_f32 v0, 4.064// GFX11: v_trunc_f32_e32 v0, 4.0                 ; encoding: [0xf6,0x42,0x00,0x7e]65// GFX12XX: v_trunc_f32_e32 v0, 4.0                 ; encoding: [0xf6,0x42,0x00,0x7e]66// GFX89: v_trunc_f32_e32 v0, 4.0                 ; encoding: [0xf6,0x38,0x00,0x7e]67// SICI: v_trunc_f32_e32 v0, 4.0                 ; encoding: [0xf6,0x42,0x00,0x7e]68 69v_fract_f64 v[0:1], 0.070// GFX11: v_fract_f64_e32 v[0:1], 0               ; encoding: [0x80,0x7c,0x00,0x7e]71// GFX12XX: v_fract_f64_e32 v[0:1], 0               ; encoding: [0x80,0x7c,0x00,0x7e]72// GFX89: v_fract_f64_e32 v[0:1], 0               ; encoding: [0x80,0x64,0x00,0x7e]73// SICI: v_fract_f64_e32 v[0:1], 0               ; encoding: [0x80,0x7c,0x00,0x7e]74 75v_trunc_f32 v0, 0.076// GFX11: v_trunc_f32_e32 v0, 0                   ; encoding: [0x80,0x42,0x00,0x7e]77// GFX12XX: v_trunc_f32_e32 v0, 0                   ; encoding: [0x80,0x42,0x00,0x7e]78// GFX89: v_trunc_f32_e32 v0, 0                   ; encoding: [0x80,0x38,0x00,0x7e]79// SICI: v_trunc_f32_e32 v0, 0                   ; encoding: [0x80,0x42,0x00,0x7e]80 81v_fract_f64 v[0:1], 1.582// GFX11: v_fract_f64_e32 v[0:1], 0x3ff80000      ; encoding: [0xff,0x7c,0x00,0x7e,0x00,0x00,0xf8,0x3f]83// GFX12XX: v_fract_f64_e32 v[0:1], 0x3ff80000      ; encoding: [0xff,0x7c,0x00,0x7e,0x00,0x00,0xf8,0x3f]84// GFX89: v_fract_f64_e32 v[0:1], 0x3ff80000      ; encoding: [0xff,0x64,0x00,0x7e,0x00,0x00,0xf8,0x3f]85// SICI: v_fract_f64_e32 v[0:1], 0x3ff80000      ; encoding: [0xff,0x7c,0x00,0x7e,0x00,0x00,0xf8,0x3f]86 87v_trunc_f32 v0, 1.588// GFX11: v_trunc_f32_e32 v0, 0x3fc00000          ; encoding: [0xff,0x42,0x00,0x7e,0x00,0x00,0xc0,0x3f]89// GFX12XX: v_trunc_f32_e32 v0, 0x3fc00000          ; encoding: [0xff,0x42,0x00,0x7e,0x00,0x00,0xc0,0x3f]90// GFX89: v_trunc_f32_e32 v0, 0x3fc00000          ; encoding: [0xff,0x38,0x00,0x7e,0x00,0x00,0xc0,0x3f]91// SICI: v_trunc_f32_e32 v0, 0x3fc00000          ; encoding: [0xff,0x42,0x00,0x7e,0x00,0x00,0xc0,0x3f]92 93v_fract_f64 v[0:1], -3.141594// GFX11: v_fract_f64_e32 v[0:1], 0xc00921ca      ; encoding: [0xff,0x7c,0x00,0x7e,0xca,0x21,0x09,0xc0]95// GFX12: v_fract_f64_e32 v[0:1], 0xc00921ca      ; encoding: [0xff,0x7c,0x00,0x7e,0xca,0x21,0x09,0xc0]96// GFX1250: v_fract_f64_e32 v[0:1], 0xc00921cac083126f ; encoding: [0xfe,0x7c,0x00,0x7e,0x6f,0x12,0x83,0xc0,0xca,0x21,0x09,0xc0]97// GFX89: v_fract_f64_e32 v[0:1], 0xc00921ca      ; encoding: [0xff,0x64,0x00,0x7e,0xca,0x21,0x09,0xc0]98// NOGFX11: :[[@LINE-5]]:1: warning: Can't encode literal as exact 64-bit floating-point operand. Low 32-bits will be set to zero99// NOGFX12: :[[@LINE-6]]:1: warning: Can't encode literal as exact 64-bit floating-point operand. Low 32-bits will be set to zero100// NOGFX89: :[[@LINE-7]]:1: warning: Can't encode literal as exact 64-bit floating-point operand. Low 32-bits will be set to zero101// NOSICI: :[[@LINE-8]]:1: warning: Can't encode literal as exact 64-bit floating-point operand. Low 32-bits will be set to zero102// SICI: v_fract_f64_e32 v[0:1], 0xc00921ca      ; encoding: [0xff,0x7c,0x00,0x7e,0xca,0x21,0x09,0xc0]103// NOSICIVI: :[[@LINE-3]]:1: warning: Can't encode literal as exact 64-bit floating-point operand. Low 32-bits will be set to zero104 105v_trunc_f32 v0, -3.1415106// GFX11: v_trunc_f32_e32 v0, 0xc0490e56          ; encoding: [0xff,0x42,0x00,0x7e,0x56,0x0e,0x49,0xc0]107// GFX12XX: v_trunc_f32_e32 v0, 0xc0490e56          ; encoding: [0xff,0x42,0x00,0x7e,0x56,0x0e,0x49,0xc0]108// GFX89: v_trunc_f32_e32 v0, 0xc0490e56          ; encoding: [0xff,0x38,0x00,0x7e,0x56,0x0e,0x49,0xc0]109// SICI: v_trunc_f32_e32 v0, 0xc0490e56          ; encoding: [0xff,0x42,0x00,0x7e,0x56,0x0e,0x49,0xc0]110 111v_fract_f64 v[0:1], 100000000000000000000000.0112// GFX11: v_fract_f64_e32 v[0:1], 0x44b52d02      ; encoding: [0xff,0x7c,0x00,0x7e,0x02,0x2d,0xb5,0x44]113// GFX12: v_fract_f64_e32 v[0:1], 0x44b52d02      ; encoding: [0xff,0x7c,0x00,0x7e,0x02,0x2d,0xb5,0x44]114// GFX1250: v_fract_f64_e32 v[0:1], 0x44b52d02c7e14af6 ; encoding: [0xfe,0x7c,0x00,0x7e,0xf6,0x4a,0xe1,0xc7,0x02,0x2d,0xb5,0x44]115// GFX89: v_fract_f64_e32 v[0:1], 0x44b52d02      ; encoding: [0xff,0x64,0x00,0x7e,0x02,0x2d,0xb5,0x44]116// NOGFX11: :[[@LINE-5]]:1: warning: Can't encode literal as exact 64-bit floating-point operand. Low 32-bits will be set to zero117// NOGFX12: :[[@LINE-6]]:1: warning: Can't encode literal as exact 64-bit floating-point operand. Low 32-bits will be set to zero118// NOGFX89: :[[@LINE-7]]:1: warning: Can't encode literal as exact 64-bit floating-point operand. Low 32-bits will be set to zero119// NOSICI: :[[@LINE-8]]:1: warning: Can't encode literal as exact 64-bit floating-point operand. Low 32-bits will be set to zero120// SICI: v_fract_f64_e32 v[0:1], 0x44b52d02      ; encoding: [0xff,0x7c,0x00,0x7e,0x02,0x2d,0xb5,0x44]121// NOSICIVI: :[[@LINE-3]]:1: warning: Can't encode literal as exact 64-bit floating-point operand. Low 32-bits will be set to zero122 123v_trunc_f32 v0, 100000000000000000000000.0124// GFX11: v_trunc_f32_e32 v0, 0x65a96816          ; encoding: [0xff,0x42,0x00,0x7e,0x16,0x68,0xa9,0x65]125// GFX12XX: v_trunc_f32_e32 v0, 0x65a96816          ; encoding: [0xff,0x42,0x00,0x7e,0x16,0x68,0xa9,0x65]126// GFX89: v_trunc_f32_e32 v0, 0x65a96816          ; encoding: [0xff,0x38,0x00,0x7e,0x16,0x68,0xa9,0x65]127// SICI: v_trunc_f32_e32 v0, 0x65a96816          ; encoding: [0xff,0x42,0x00,0x7e,0x16,0x68,0xa9,0x65]128 129v_fract_f64 v[0:1], 10000000.0130// GFX11: v_fract_f64_e32 v[0:1], 0x416312d0      ; encoding: [0xff,0x7c,0x00,0x7e,0xd0,0x12,0x63,0x41]131// GFX12XX: v_fract_f64_e32 v[0:1], 0x416312d0      ; encoding: [0xff,0x7c,0x00,0x7e,0xd0,0x12,0x63,0x41]132// GFX89: v_fract_f64_e32 v[0:1], 0x416312d0      ; encoding: [0xff,0x64,0x00,0x7e,0xd0,0x12,0x63,0x41]133// SICI: v_fract_f64_e32 v[0:1], 0x416312d0      ; encoding: [0xff,0x7c,0x00,0x7e,0xd0,0x12,0x63,0x41]134 135v_trunc_f32 v0, 10000000.0136// GFX11: v_trunc_f32_e32 v0, 0x4b189680          ; encoding: [0xff,0x42,0x00,0x7e,0x80,0x96,0x18,0x4b]137// GFX12XX: v_trunc_f32_e32 v0, 0x4b189680          ; encoding: [0xff,0x42,0x00,0x7e,0x80,0x96,0x18,0x4b]138// GFX89: v_trunc_f32_e32 v0, 0x4b189680          ; encoding: [0xff,0x38,0x00,0x7e,0x80,0x96,0x18,0x4b]139// SICI: v_trunc_f32_e32 v0, 0x4b189680          ; encoding: [0xff,0x42,0x00,0x7e,0x80,0x96,0x18,0x4b]140 141v_fract_f64 v[0:1], 3.402823e+38142// GFX11: v_fract_f64_e32 v[0:1], 0x47efffff      ; encoding: [0xff,0x7c,0x00,0x7e,0xff,0xff,0xef,0x47]143// GFX12: v_fract_f64_e32 v[0:1], 0x47efffff      ; encoding: [0xff,0x7c,0x00,0x7e,0xff,0xff,0xef,0x47]144// GFX1250: v_fract_f64_e32 v[0:1], 0x47efffff966ad924 ; encoding: [0xfe,0x7c,0x00,0x7e,0x24,0xd9,0x6a,0x96,0xff,0xff,0xef,0x47]145// GFX89: v_fract_f64_e32 v[0:1], 0x47efffff      ; encoding: [0xff,0x64,0x00,0x7e,0xff,0xff,0xef,0x47]146// NOGFX11: :[[@LINE-5]]:1: warning: Can't encode literal as exact 64-bit floating-point operand. Low 32-bits will be set to zero147// NOGFX12: :[[@LINE-6]]:1: warning: Can't encode literal as exact 64-bit floating-point operand. Low 32-bits will be set to zero148// NOGFX89: :[[@LINE-7]]:1: warning: Can't encode literal as exact 64-bit floating-point operand. Low 32-bits will be set to zero149// NOSICI: :[[@LINE-8]]:1: warning: Can't encode literal as exact 64-bit floating-point operand. Low 32-bits will be set to zero150// SICI: v_fract_f64_e32 v[0:1], 0x47efffff      ; encoding: [0xff,0x7c,0x00,0x7e,0xff,0xff,0xef,0x47]151// NOSICIVI: :[[@LINE-3]]:1: warning: Can't encode literal as exact 64-bit floating-point operand. Low 32-bits will be set to zero152 153v_trunc_f32 v0, 3.402823e+38154// GFX11: v_trunc_f32_e32 v0, 0x7f7ffffd          ; encoding: [0xff,0x42,0x00,0x7e,0xfd,0xff,0x7f,0x7f]155// GFX12XX: v_trunc_f32_e32 v0, 0x7f7ffffd          ; encoding: [0xff,0x42,0x00,0x7e,0xfd,0xff,0x7f,0x7f]156// GFX89: v_trunc_f32_e32 v0, 0x7f7ffffd          ; encoding: [0xff,0x38,0x00,0x7e,0xfd,0xff,0x7f,0x7f]157// SICI: v_trunc_f32_e32 v0, 0x7f7ffffd          ; encoding: [0xff,0x42,0x00,0x7e,0xfd,0xff,0x7f,0x7f]158 159v_fract_f64 v[0:1], 2.3509886e-38160// GFX11: v_fract_f64_e32 v[0:1], 0x381fffff      ; encoding: [0xff,0x7c,0x00,0x7e,0xff,0xff,0x1f,0x38]161// GFX12: v_fract_f64_e32 v[0:1], 0x381fffff      ; encoding: [0xff,0x7c,0x00,0x7e,0xff,0xff,0x1f,0x38]162// GFX1250: v_fract_f64_e32 v[0:1], 0x381fffffe8c9d9fb ; encoding: [0xfe,0x7c,0x00,0x7e,0xfb,0xd9,0xc9,0xe8,0xff,0xff,0x1f,0x38]163// GFX89: v_fract_f64_e32 v[0:1], 0x381fffff      ; encoding: [0xff,0x64,0x00,0x7e,0xff,0xff,0x1f,0x38]164// NOGFX11: :[[@LINE-5]]:1: warning: Can't encode literal as exact 64-bit floating-point operand. Low 32-bits will be set to zero165// NOGFX12: :[[@LINE-6]]:1: warning: Can't encode literal as exact 64-bit floating-point operand. Low 32-bits will be set to zero166// NOGFX89: :[[@LINE-7]]:1: warning: Can't encode literal as exact 64-bit floating-point operand. Low 32-bits will be set to zero167// NOSICI: :[[@LINE-8]]:1: warning: Can't encode literal as exact 64-bit floating-point operand. Low 32-bits will be set to zero168// SICI: v_fract_f64_e32 v[0:1], 0x381fffff      ; encoding: [0xff,0x7c,0x00,0x7e,0xff,0xff,0x1f,0x38]169// NOSICIVI: :[[@LINE-3]]:1: warning: Can't encode literal as exact 64-bit floating-point operand. Low 32-bits will be set to zero170 171v_trunc_f32 v0, 2.3509886e-38172// GFX11: v_trunc_f32_e32 v0, 0xffffff            ; encoding: [0xff,0x42,0x00,0x7e,0xff,0xff,0xff,0x00]173// GFX12XX: v_trunc_f32_e32 v0, 0xffffff            ; encoding: [0xff,0x42,0x00,0x7e,0xff,0xff,0xff,0x00]174// GFX89: v_trunc_f32_e32 v0, 0xffffff            ; encoding: [0xff,0x38,0x00,0x7e,0xff,0xff,0xff,0x00]175// SICI: v_trunc_f32_e32 v0, 0xffffff            ; encoding: [0xff,0x42,0x00,0x7e,0xff,0xff,0xff,0x00]176 177v_fract_f64 v[0:1], 2.3509886e-70178// GFX11: v_fract_f64_e32 v[0:1], 0x3179f623      ; encoding: [0xff,0x7c,0x00,0x7e,0x23,0xf6,0x79,0x31]179// GFX12: v_fract_f64_e32 v[0:1], 0x3179f623      ; encoding: [0xff,0x7c,0x00,0x7e,0x23,0xf6,0x79,0x31]180// GFX1250: v_fract_f64_e32 v[0:1], 0x3179f623c2d3cf3c ; encoding: [0xfe,0x7c,0x00,0x7e,0x3c,0xcf,0xd3,0xc2,0x23,0xf6,0x79,0x31]181// GFX89: v_fract_f64_e32 v[0:1], 0x3179f623      ; encoding: [0xff,0x64,0x00,0x7e,0x23,0xf6,0x79,0x31]182// NOGFX11: :[[@LINE-5]]:1: warning: Can't encode literal as exact 64-bit floating-point operand. Low 32-bits will be set to zero183// NOGFX12: :[[@LINE-6]]:1: warning: Can't encode literal as exact 64-bit floating-point operand. Low 32-bits will be set to zero184// NOGFX89: :[[@LINE-7]]:1: warning: Can't encode literal as exact 64-bit floating-point operand. Low 32-bits will be set to zero185// NOSICI: :[[@LINE-8]]:1: warning: Can't encode literal as exact 64-bit floating-point operand. Low 32-bits will be set to zero186// SICI: v_fract_f64_e32 v[0:1], 0x3179f623      ; encoding: [0xff,0x7c,0x00,0x7e,0x23,0xf6,0x79,0x31]187// NOSICIVI: :[[@LINE-3]]:1: warning: Can't encode literal as exact 64-bit floating-point operand. Low 32-bits will be set to zero188 189v_trunc_f32 v0, 2.3509886e-70190// NOGCN: :[[@LINE-1]]:17: error: invalid operand for instruction191 192v_fract_f64_e32 v[0:1], 1.0193// GFX11: v_fract_f64_e32 v[0:1], 1.0             ; encoding: [0xf2,0x7c,0x00,0x7e]194// GFX12XX: v_fract_f64_e32 v[0:1], 1.0             ; encoding: [0xf2,0x7c,0x00,0x7e]195// GFX89: v_fract_f64_e32 v[0:1], 1.0             ; encoding: [0xf2,0x64,0x00,0x7e]196// SICI: v_fract_f64_e32 v[0:1], 1.0             ; encoding: [0xf2,0x7c,0x00,0x7e]197 198v_fract_f64_e32 v[0:1], lit(1.0)199// GFX11: v_fract_f64_e32 v[0:1], lit(0x3ff00000) ; encoding: [0xff,0x7c,0x00,0x7e,0x00,0x00,0xf0,0x3f]200// GFX12: v_fract_f64_e32 v[0:1], lit(0x3ff00000) ; encoding: [0xff,0x7c,0x00,0x7e,0x00,0x00,0xf0,0x3f]201// GFX1250-ASM: v_fract_f64_e32 v[0:1], lit(0x3ff00000) ; encoding: [0xfe,0x7c,0x00,0x7e,0x00,0x00,0xf0,0x3f,0x00,0x00,0x00,0x00]202// GFX1250-DIS: v_fract_f64_e32 v[0:1], lit64(0x3ff00000) ; encoding: [0xfe,0x7c,0x00,0x7e,0x00,0x00,0xf0,0x3f,0x00,0x00,0x00,0x00]203// GFX89: v_fract_f64_e32 v[0:1], lit(0x3ff00000) ; encoding: [0xff,0x64,0x00,0x7e,0x00,0x00,0xf0,0x3f]204// SICI: v_fract_f64_e32 v[0:1], lit(0x3ff00000) ; encoding: [0xff,0x7c,0x00,0x7e,0x00,0x00,0xf0,0x3f]205 206v_wmma_i32_16x16x16_iu8 v[8:15], v[0:3], v[4:7], 1.0207// GFX11: v_wmma_i32_16x16x16_iu8 v[8:15], v[0:3], v[4:7], 1.0 ; encoding: [0x08,0x40,0x44,0xcc,0x00,0x09,0xca,0x1b]208// NOGFX12: :[[@LINE-2]]:1: error: operands are not valid for this GPU or mode209// NOGFX1250: :[[@LINE-3]]:1: error: operands are not valid for this GPU or mode210// NOGFX89: :[[@LINE-4]]:1: error: instruction not supported on this GPU211// NOSICI: :[[@LINE-5]]:1: error: instruction not supported on this GPU212 213v_wmma_i32_16x16x16_iu8 v[8:15], v[0:3], v[4:7], lit(1.0)214// NOGFX11: :[[@LINE-1]]:54: error: invalid operand for instruction215// NOGFX12: :[[@LINE-2]]:54: error: invalid operand for instruction216// NOGFX1250: :[[@LINE-3]]:54: error: invalid operand for instruction217// NOGFX89: :[[@LINE-4]]:1: error: instruction not supported on this GPU218// NOSICI: :[[@LINE-5]]:1: error: instruction not supported on this GPU219 220v_cos_f16_e32 v5.l, 1.0221// GFX11: v_cos_f16_e32 v5.l, 1.0                 ; encoding: [0xf2,0xc2,0x0a,0x7e]222// GFX1250: v_cos_f16_e32 v5.l, 1.0                 ; encoding: [0xf2,0xc2,0x0a,0x7e]223// NOGFX12: :[[@LINE-3]]:1: error: operands are not valid for this GPU or mode224// NOGFX89: :[[@LINE-4]]:1: error: operands are not valid for this GPU or mode225// NOSICI: :[[@LINE-5]]:1: error: instruction not supported on this GPU226 227v_cos_f16_e32 v5.l, lit(1.0)228// GFX11: v_cos_f16_e32 v5.l, lit(0x3c00)         ; encoding: [0xff,0xc2,0x0a,0x7e,0x00,0x3c,0x00,0x00]229// GFX1250: v_cos_f16_e32 v5.l, lit(0x3c00)         ; encoding: [0xff,0xc2,0x0a,0x7e,0x00,0x3c,0x00,0x00]230// NOGFX12: :[[@LINE-3]]:1: error: operands are not valid for this GPU or mode231// NOGFX89: :[[@LINE-4]]:1: error: operands are not valid for this GPU or mode232// NOSICI: :[[@LINE-5]]:1: error: instruction not supported on this GPU233 234v_tanh_bf16 v5.l, 1.0235// GFX1250: v_tanh_bf16_e32 v5.l, 1.0               ; encoding: [0xf2,0x94,0x0a,0x7e]236// NOGFX11: :[[@LINE-2]]:1: error: instruction not supported on this GPU237// NOGFX12: :[[@LINE-3]]:1: error: instruction not supported on this GPU238// NOGFX89: :[[@LINE-4]]:1: error: instruction not supported on this GPU239// NOSICI: :[[@LINE-5]]:1: error: instruction not supported on this GPU240 241v_tanh_bf16 v5.l, lit(1.0)242// GFX1250: v_tanh_bf16_e32 v5.l, lit(0x3f80)       ; encoding: [0xff,0x94,0x0a,0x7e,0x80,0x3f,0x00,0x00]243// NOGFX11: :[[@LINE-2]]:1: error: instruction not supported on this GPU244// NOGFX12: :[[@LINE-3]]:1: error: instruction not supported on this GPU245// NOGFX89: :[[@LINE-4]]:1: error: instruction not supported on this GPU246// NOSICI: :[[@LINE-5]]:1: error: instruction not supported on this GPU247 248v_trunc_f32_e32 v0, 1.0249// GFX11: v_trunc_f32_e32 v0, 1.0                 ; encoding: [0xf2,0x42,0x00,0x7e]250// GFX12XX: v_trunc_f32_e32 v0, 1.0                 ; encoding: [0xf2,0x42,0x00,0x7e]251// GFX89: v_trunc_f32_e32 v0, 1.0                 ; encoding: [0xf2,0x38,0x00,0x7e]252// SICI: v_trunc_f32_e32 v0, 1.0                 ; encoding: [0xf2,0x42,0x00,0x7e]253 254v_trunc_f32_e32 v0, lit(1.0)255// GFX11: v_trunc_f32_e32 v0, lit(0x3f800000)     ; encoding: [0xff,0x42,0x00,0x7e,0x00,0x00,0x80,0x3f]256// GFX12XX: v_trunc_f32_e32 v0, lit(0x3f800000)     ; encoding: [0xff,0x42,0x00,0x7e,0x00,0x00,0x80,0x3f]257// GFX89: v_trunc_f32_e32 v0, lit(0x3f800000)     ; encoding: [0xff,0x38,0x00,0x7e,0x00,0x00,0x80,0x3f]258// SICI: v_trunc_f32_e32 v0, lit(0x3f800000)     ; encoding: [0xff,0x42,0x00,0x7e,0x00,0x00,0x80,0x3f]259 260v_dot2_bf16_bf16 v5.l, v1, v2, 1.0261// GFX11: v_dot2_bf16_bf16 v5.l, v1, v2, 1.0      ; encoding: [0x05,0x00,0x67,0xd6,0x01,0x05,0xca,0x03]262// NOGFX12: :[[@LINE-2]]:1: error: operands are not valid for this GPU or mode263// NOGFX1250: :[[@LINE-3]]:1: error: instruction not supported on this GPU264// NOGFX89: :[[@LINE-4]]:1: error: instruction not supported on this GPU265// NOSICI: :[[@LINE-5]]:1: error: instruction not supported on this GPU266 267v_dot2_bf16_bf16 v5.l, v1, v2, lit(1.0)268// GFX11: v_dot2_bf16_bf16 v5.l, v1, v2, lit(0x3f80) ; encoding: [0x05,0x00,0x67,0xd6,0x01,0x05,0xfe,0x03,0x80,0x3f,0x00,0x00]269// NOGFX12: :[[@LINE-2]]:1: error: operands are not valid for this GPU or mode270// NOGFX1250: :[[@LINE-3]]:1: error: instruction not supported on this GPU271// NOGFX89: :[[@LINE-4]]:1: error: instruction not supported on this GPU272// NOSICI: :[[@LINE-5]]:1: error: instruction not supported on this GPU273 274v_dot2_f32_f16 v5, v1, 1.0, v2275// GFX11: v_dot2_f32_f16 v5, v1, 1.0, v2          ; encoding: [0x05,0x40,0x13,0xcc,0x01,0xe5,0x09,0x1c]276// GFX12: v_dot2_f32_f16 v5, v1, 1.0, v2          ; encoding: [0x05,0x40,0x13,0xcc,0x01,0xe5,0x09,0x1c]277// NOGFX1250: :[[@LINE-3]]:1: error: instruction not supported on this GPU278// NOGFX89: :[[@LINE-4]]:1: error: instruction not supported on this GPU279// NOSICI: :[[@LINE-5]]:1: error: instruction not supported on this GPU280 281v_dot2_f32_f16 v5, v1, lit(1.0), v2282// GFX11: v_dot2_f32_f16 v5, v1, lit(0x3c00), v2  ; encoding: [0x05,0x40,0x13,0xcc,0x01,0xff,0x09,0x1c,0x00,0x3c,0x00,0x00]283// GFX12: v_dot2_f32_f16 v5, v1, lit(0x3c00), v2  ; encoding: [0x05,0x40,0x13,0xcc,0x01,0xff,0x09,0x1c,0x00,0x3c,0x00,0x00]284// NOGFX1250: :[[@LINE-3]]:1: error: instruction not supported on this GPU285// NOGFX89: :[[@LINE-4]]:1: error: instruction not supported on this GPU286// NOSICI: :[[@LINE-5]]:1: error: instruction not supported on this GPU287 288v_cvt_pk_fp8_f16 v1.l, 1.0289// GFX1250: v_cvt_pk_fp8_f16 v1.l, 0x3c00           ; encoding: [0x01,0x00,0x72,0xd7,0xff,0x00,0x00,0x00,0x00,0x3c,0x00,0x00]290// NOGFX11: :[[@LINE-2]]:1: error: instruction not supported on this GPU291// NOGFX12: :[[@LINE-3]]:1: error: instruction not supported on this GPU292// NOGFX89: :[[@LINE-4]]:1: error: instruction not supported on this GPU293// NOSICI: :[[@LINE-5]]:1: error: instruction not supported on this GPU294 295v_cvt_pk_fp8_f16 v1.l, lit(1.0)296// GFX1250-ASM: v_cvt_pk_fp8_f16 v1.l, lit(0x3c00)      ; encoding: [0x01,0x00,0x72,0xd7,0xff,0x00,0x00,0x00,0x00,0x3c,0x00,0x00]297// GFX1250-DIS: v_cvt_pk_fp8_f16 v1.l, 0x3c00           ; encoding: [0x01,0x00,0x72,0xd7,0xff,0x00,0x00,0x00,0x00,0x3c,0x00,0x00]298// NOGFX11: :[[@LINE-3]]:1: error: instruction not supported on this GPU299// NOGFX12: :[[@LINE-4]]:1: error: instruction not supported on this GPU300// NOGFX89: :[[@LINE-5]]:1: error: instruction not supported on this GPU301// NOSICI: :[[@LINE-6]]:1: error: instruction not supported on this GPU302 303//---------------------------------------------------------------------------//304// fp literal, expected int operand305//---------------------------------------------------------------------------//306 307s_mov_b64_e32 s[0:1], 0.5308// GFX8PLUS: s_mov_b64 s[0:1], 0.5                   ; encoding: [0xf0,0x01,0x80,0xbe]309// SICI: s_mov_b64 s[0:1], 0.5                   ; encoding: [0xf0,0x04,0x80,0xbe]310 311s_mov_b64 s[0:1], lit(0.5)312// NOGCN: :[[@LINE-1]]:23: error: invalid operand for instruction313 314v_and_b32_e32 v0, 0.5, v1315// GFX11: v_and_b32_e32 v0, 0.5, v1               ; encoding: [0xf0,0x02,0x00,0x36]316// GFX12XX: v_and_b32_e32 v0, 0.5, v1               ; encoding: [0xf0,0x02,0x00,0x36]317// GFX89: v_and_b32_e32 v0, 0.5, v1               ; encoding: [0xf0,0x02,0x00,0x26]318// SICI: v_and_b32_e32 v0, 0.5, v1               ; encoding: [0xf0,0x02,0x00,0x36]319 320v_and_b32_e64 v0, 0.5, v1321// GFX11: v_and_b32_e64 v0, 0.5, v1               ; encoding: [0x00,0x00,0x1b,0xd5,0xf0,0x02,0x02,0x00]322// GFX12XX: v_and_b32_e64 v0, 0.5, v1               ; encoding: [0x00,0x00,0x1b,0xd5,0xf0,0x02,0x02,0x00]323// GFX89: v_and_b32_e64 v0, 0.5, v1               ; encoding: [0x00,0x00,0x13,0xd1,0xf0,0x02,0x02,0x00]324// SICI: v_and_b32_e64 v0, 0.5, v1               ; encoding: [0x00,0x00,0x36,0xd2,0xf0,0x02,0x02,0x00]325 326s_mov_b64_e32 s[0:1], -1.0327// GFX8PLUS: s_mov_b64 s[0:1], -1.0                  ; encoding: [0xf3,0x01,0x80,0xbe]328// SICI: s_mov_b64 s[0:1], -1.0                  ; encoding: [0xf3,0x04,0x80,0xbe]329 330v_and_b32_e32 v0, -1.0, v1331// GFX11: v_and_b32_e32 v0, -1.0, v1              ; encoding: [0xf3,0x02,0x00,0x36]332// GFX12XX: v_and_b32_e32 v0, -1.0, v1              ; encoding: [0xf3,0x02,0x00,0x36]333// GFX89: v_and_b32_e32 v0, -1.0, v1              ; encoding: [0xf3,0x02,0x00,0x26]334// SICI: v_and_b32_e32 v0, -1.0, v1              ; encoding: [0xf3,0x02,0x00,0x36]335 336v_and_b32_e64 v0, -1.0, v1337// GFX11: v_and_b32_e64 v0, -1.0, v1              ; encoding: [0x00,0x00,0x1b,0xd5,0xf3,0x02,0x02,0x00]338// GFX12XX: v_and_b32_e64 v0, -1.0, v1              ; encoding: [0x00,0x00,0x1b,0xd5,0xf3,0x02,0x02,0x00]339// GFX89: v_and_b32_e64 v0, -1.0, v1              ; encoding: [0x00,0x00,0x13,0xd1,0xf3,0x02,0x02,0x00]340// SICI: v_and_b32_e64 v0, -1.0, v1              ; encoding: [0x00,0x00,0x36,0xd2,0xf3,0x02,0x02,0x00]341 342s_mov_b64_e32 s[0:1], 4.0343// GFX8PLUS: s_mov_b64 s[0:1], 4.0                   ; encoding: [0xf6,0x01,0x80,0xbe]344// SICI: s_mov_b64 s[0:1], 4.0                   ; encoding: [0xf6,0x04,0x80,0xbe]345 346v_and_b32_e32 v0, 4.0, v1347// GFX11: v_and_b32_e32 v0, 4.0, v1               ; encoding: [0xf6,0x02,0x00,0x36]348// GFX12XX: v_and_b32_e32 v0, 4.0, v1               ; encoding: [0xf6,0x02,0x00,0x36]349// GFX89: v_and_b32_e32 v0, 4.0, v1               ; encoding: [0xf6,0x02,0x00,0x26]350// SICI: v_and_b32_e32 v0, 4.0, v1               ; encoding: [0xf6,0x02,0x00,0x36]351 352v_and_b32_e64 v0, 4.0, v1353// GFX11: v_and_b32_e64 v0, 4.0, v1               ; encoding: [0x00,0x00,0x1b,0xd5,0xf6,0x02,0x02,0x00]354// GFX12XX: v_and_b32_e64 v0, 4.0, v1               ; encoding: [0x00,0x00,0x1b,0xd5,0xf6,0x02,0x02,0x00]355// GFX89: v_and_b32_e64 v0, 4.0, v1               ; encoding: [0x00,0x00,0x13,0xd1,0xf6,0x02,0x02,0x00]356// SICI: v_and_b32_e64 v0, 4.0, v1               ; encoding: [0x00,0x00,0x36,0xd2,0xf6,0x02,0x02,0x00]357 358s_mov_b64_e32 s[0:1], 0.0359// GFX8PLUS: s_mov_b64 s[0:1], 0                     ; encoding: [0x80,0x01,0x80,0xbe]360// SICI: s_mov_b64 s[0:1], 0                     ; encoding: [0x80,0x04,0x80,0xbe]361 362v_and_b32_e32 v0, 0.0, v1363// GFX11: v_and_b32_e32 v0, 0, v1                 ; encoding: [0x80,0x02,0x00,0x36]364// GFX12XX: v_and_b32_e32 v0, 0, v1                 ; encoding: [0x80,0x02,0x00,0x36]365// GFX89: v_and_b32_e32 v0, 0, v1                 ; encoding: [0x80,0x02,0x00,0x26]366// SICI: v_and_b32_e32 v0, 0, v1                 ; encoding: [0x80,0x02,0x00,0x36]367 368v_and_b32_e64 v0, 0.0, v1369// GFX11: v_and_b32_e64 v0, 0, v1                 ; encoding: [0x00,0x00,0x1b,0xd5,0x80,0x02,0x02,0x00]370// GFX12XX: v_and_b32_e64 v0, 0, v1                 ; encoding: [0x00,0x00,0x1b,0xd5,0x80,0x02,0x02,0x00]371// GFX89: v_and_b32_e64 v0, 0, v1                 ; encoding: [0x00,0x00,0x13,0xd1,0x80,0x02,0x02,0x00]372// SICI: v_and_b32_e64 v0, 0, v1                 ; encoding: [0x00,0x00,0x36,0xd2,0x80,0x02,0x02,0x00]373 374s_mov_b64_e32 s[0:1], 1.5375// NOGCN: :[[@LINE-1]]:23: error: invalid operand for instruction376 377v_and_b32_e32 v0, 1.5, v1378// GFX11: v_and_b32_e32 v0, 0x3fc00000, v1        ; encoding: [0xff,0x02,0x00,0x36,0x00,0x00,0xc0,0x3f]379// GFX12XX: v_and_b32_e32 v0, 0x3fc00000, v1        ; encoding: [0xff,0x02,0x00,0x36,0x00,0x00,0xc0,0x3f]380// GFX89: v_and_b32_e32 v0, 0x3fc00000, v1        ; encoding: [0xff,0x02,0x00,0x26,0x00,0x00,0xc0,0x3f]381// SICI: v_and_b32_e32 v0, 0x3fc00000, v1        ; encoding: [0xff,0x02,0x00,0x36,0x00,0x00,0xc0,0x3f]382 383s_mov_b64_e32 s[0:1], -3.1415384// NOGCN: :[[@LINE-1]]:23: error: invalid operand for instruction385 386v_and_b32_e32 v0, -3.1415, v1387// GFX11: v_and_b32_e32 v0, 0xc0490e56, v1        ; encoding: [0xff,0x02,0x00,0x36,0x56,0x0e,0x49,0xc0]388// GFX12XX: v_and_b32_e32 v0, 0xc0490e56, v1        ; encoding: [0xff,0x02,0x00,0x36,0x56,0x0e,0x49,0xc0]389// GFX89: v_and_b32_e32 v0, 0xc0490e56, v1        ; encoding: [0xff,0x02,0x00,0x26,0x56,0x0e,0x49,0xc0]390// SICI: v_and_b32_e32 v0, 0xc0490e56, v1        ; encoding: [0xff,0x02,0x00,0x36,0x56,0x0e,0x49,0xc0]391 392s_mov_b64_e32 s[0:1], 100000000000000000000000.0393// NOGCN: :[[@LINE-1]]:23: error: invalid operand for instruction394 395v_and_b32_e32 v0, 100000000000000000000000.0, v1396// GFX11: v_and_b32_e32 v0, 0x65a96816, v1        ; encoding: [0xff,0x02,0x00,0x36,0x16,0x68,0xa9,0x65]397// GFX12XX: v_and_b32_e32 v0, 0x65a96816, v1        ; encoding: [0xff,0x02,0x00,0x36,0x16,0x68,0xa9,0x65]398// GFX89: v_and_b32_e32 v0, 0x65a96816, v1        ; encoding: [0xff,0x02,0x00,0x26,0x16,0x68,0xa9,0x65]399// SICI: v_and_b32_e32 v0, 0x65a96816, v1        ; encoding: [0xff,0x02,0x00,0x36,0x16,0x68,0xa9,0x65]400 401s_mov_b64_e32 s[0:1], 10000000.0402// NOGCN: :[[@LINE-1]]:23: error: invalid operand for instruction403 404v_and_b32_e32 v0, 10000000.0, v1405// GFX11: v_and_b32_e32 v0, 0x4b189680, v1        ; encoding: [0xff,0x02,0x00,0x36,0x80,0x96,0x18,0x4b]406// GFX12XX: v_and_b32_e32 v0, 0x4b189680, v1        ; encoding: [0xff,0x02,0x00,0x36,0x80,0x96,0x18,0x4b]407// GFX89: v_and_b32_e32 v0, 0x4b189680, v1        ; encoding: [0xff,0x02,0x00,0x26,0x80,0x96,0x18,0x4b]408// SICI: v_and_b32_e32 v0, 0x4b189680, v1        ; encoding: [0xff,0x02,0x00,0x36,0x80,0x96,0x18,0x4b]409 410s_mov_b64_e32 s[0:1], 3.402823e+38411// NOGCN: :[[@LINE-1]]:23: error: invalid operand for instruction412 413v_and_b32_e32 v0, 3.402823e+38, v1414// GFX11: v_and_b32_e32 v0, 0x7f7ffffd, v1        ; encoding: [0xff,0x02,0x00,0x36,0xfd,0xff,0x7f,0x7f]415// GFX12XX: v_and_b32_e32 v0, 0x7f7ffffd, v1        ; encoding: [0xff,0x02,0x00,0x36,0xfd,0xff,0x7f,0x7f]416// GFX89: v_and_b32_e32 v0, 0x7f7ffffd, v1        ; encoding: [0xff,0x02,0x00,0x26,0xfd,0xff,0x7f,0x7f]417// SICI: v_and_b32_e32 v0, 0x7f7ffffd, v1        ; encoding: [0xff,0x02,0x00,0x36,0xfd,0xff,0x7f,0x7f]418 419s_mov_b64_e32 s[0:1], 2.3509886e-38420// NOGCN: :[[@LINE-1]]:23: error: invalid operand for instruction421 422v_and_b32_e32 v0, 2.3509886e-38, v1423// GFX11: v_and_b32_e32 v0, 0xffffff, v1          ; encoding: [0xff,0x02,0x00,0x36,0xff,0xff,0xff,0x00]424// GFX12XX: v_and_b32_e32 v0, 0xffffff, v1          ; encoding: [0xff,0x02,0x00,0x36,0xff,0xff,0xff,0x00]425// GFX89: v_and_b32_e32 v0, 0xffffff, v1          ; encoding: [0xff,0x02,0x00,0x26,0xff,0xff,0xff,0x00]426// SICI: v_and_b32_e32 v0, 0xffffff, v1          ; encoding: [0xff,0x02,0x00,0x36,0xff,0xff,0xff,0x00]427 428s_mov_b64_e32 s[0:1], 2.3509886e-70429// NOGCN: :[[@LINE-1]]:23: error: invalid operand for instruction430 431v_and_b32_e32 v0, 2.3509886e-70, v1432// NOGCN: :[[@LINE-1]]:19: error: invalid operand for instruction433 434v_not_b16 v5.l, 1.0435// GFX11: v_not_b16_e32 v5.l, 1.0                 ; encoding: [0xf2,0xd2,0x0a,0x7e]436// GFX1250-ASM: v_not_b16_e32 v5.l, 1.0                 ; encoding: [0xf2,0xd2,0x0a,0x7e]437// GFX1250-DIS: v_not_b16_e32 v5.l, 0x3c00              ; encoding: [0xff,0xd2,0x0a,0x7e,0x00,0x3c,0x00,0x00]438// NOGFX12: :[[@LINE-4]]:1: error: operands are not valid for this GPU or mode439// NOGFX89: :[[@LINE-5]]:1: error: instruction not supported on this GPU440// NOSICI: :[[@LINE-6]]:1: error: instruction not supported on this GPU441 442v_not_b16 v5.l, lit(1.0)443// GFX11: v_not_b16_e32 v5.l, lit(0x3f800000)     ; encoding: [0xff,0xd2,0x0a,0x7e,0x00,0x00,0x80,0x3f]444// GFX1250: v_not_b16_e32 v5.l, lit(0x3f800000)     ; encoding: [0xff,0xd2,0x0a,0x7e,0x00,0x00,0x80,0x3f]445// NOGFX12: :[[@LINE-3]]:1: error: operands are not valid for this GPU or mode446// NOGFX89: :[[@LINE-4]]:1: error: instruction not supported on this GPU447// NOSICI: :[[@LINE-5]]:1: error: instruction not supported on this GPU448 449v_and_b32_e32 v0, 1.0, v1450// GFX11: v_and_b32_e32 v0, 1.0, v1               ; encoding: [0xf2,0x02,0x00,0x36]451// GFX12XX: v_and_b32_e32 v0, 1.0, v1               ; encoding: [0xf2,0x02,0x00,0x36]452// GFX89: v_and_b32_e32 v0, 1.0, v1               ; encoding: [0xf2,0x02,0x00,0x26]453// SICI: v_and_b32_e32 v0, 1.0, v1               ; encoding: [0xf2,0x02,0x00,0x36]454 455v_and_b32_e32 v0, lit(1.0), v1456// GFX11: v_and_b32_e32 v0, lit(0x3f800000), v1   ; encoding: [0xff,0x02,0x00,0x36,0x00,0x00,0x80,0x3f]457// GFX12XX: v_and_b32_e32 v0, lit(0x3f800000), v1   ; encoding: [0xff,0x02,0x00,0x36,0x00,0x00,0x80,0x3f]458// GFX89: v_and_b32_e32 v0, lit(0x3f800000), v1   ; encoding: [0xff,0x02,0x00,0x26,0x00,0x00,0x80,0x3f]459// SICI: v_and_b32_e32 v0, lit(0x3f800000), v1   ; encoding: [0xff,0x02,0x00,0x36,0x00,0x00,0x80,0x3f]460 461v_pk_add_u16 v5, exec_lo, 1.0462// GFX11: v_pk_add_u16 v5, exec_lo, 1.0           ; encoding: [0x05,0x40,0x0a,0xcc,0x7e,0xe4,0x01,0x18]463// GFX12XX: v_pk_add_u16 v5, exec_lo, 1.0           ; encoding: [0x05,0x40,0x0a,0xcc,0x7e,0xe4,0x01,0x18]464// GFX9: v_pk_add_u16 v5, exec_lo, 1.0           ; encoding: [0x05,0x40,0x8a,0xd3,0x7e,0xe4,0x01,0x18]465// NOSICI: :[[@LINE-4]]:1: error: instruction not supported on this GPU466// NOVI: :[[@LINE-5]]:1: error: instruction not supported on this GPU467 468v_pk_add_u16 v5, exec_lo, lit(1.0)469// GFX11: v_pk_add_u16 v5, exec_lo, lit(0x3f800000) ; encoding: [0x05,0x40,0x0a,0xcc,0x7e,0xfe,0x01,0x18,0x00,0x00,0x80,0x3f]470// GFX12XX: v_pk_add_u16 v5, exec_lo, lit(0x3f800000) ; encoding: [0x05,0x40,0x0a,0xcc,0x7e,0xfe,0x01,0x18,0x00,0x00,0x80,0x3f]471// NOGFX9: :[[@LINE-3]]:31: error: invalid operand (violates constant bus restrictions)472// NOSICI: :[[@LINE-4]]:1: error: instruction not supported on this GPU473// NOVI: :[[@LINE-5]]:1: error: instruction not supported on this GPU474 475v_perm_pk16_b6_u4 v[2:4], v4, v[4:5], 1.0476// GFX1250: v_perm_pk16_b6_u4 v[2:4], v4, v[4:5], 1.0 ; encoding: [0x02,0x00,0x42,0xd6,0x04,0x09,0xca,0x03]477// NOGFX11: :[[@LINE-2]]:1: error: instruction not supported on this GPU478// NOGFX12: :[[@LINE-3]]:1: error: instruction not supported on this GPU479// NOGFX89: :[[@LINE-4]]:1: error: instruction not supported on this GPU480// NOSICI: :[[@LINE-5]]:1: error: instruction not supported on this GPU481 482v_perm_pk16_b6_u4 v[2:4], v4, v[4:5], lit(1.0)483// GFX1250: v_perm_pk16_b6_u4 v[2:4], v4, v[4:5], lit(0x3f800000) ; encoding: [0x02,0x00,0x42,0xd6,0x04,0x09,0xfe,0x03,0x00,0x00,0x80,0x3f]484// NOGFX11: :[[@LINE-2]]:1: error: instruction not supported on this GPU485// NOGFX12: :[[@LINE-3]]:1: error: instruction not supported on this GPU486// NOGFX89: :[[@LINE-4]]:1: error: instruction not supported on this GPU487// NOSICI: :[[@LINE-5]]:1: error: instruction not supported on this GPU488 489//---------------------------------------------------------------------------//490// int literal, expected fp operand491//---------------------------------------------------------------------------//492 493v_trunc_f32_e32 v0, 0494// GFX11: v_trunc_f32_e32 v0, 0                   ; encoding: [0x80,0x42,0x00,0x7e]495// GFX12XX: v_trunc_f32_e32 v0, 0                   ; encoding: [0x80,0x42,0x00,0x7e]496// GFX89: v_trunc_f32_e32 v0, 0                   ; encoding: [0x80,0x38,0x00,0x7e]497// SICI: v_trunc_f32_e32 v0, 0                   ; encoding: [0x80,0x42,0x00,0x7e]498 499v_fract_f64_e32 v[0:1], 1500// GFX11: v_fract_f64_e32 v[0:1], 1               ; encoding: [0x81,0x7c,0x00,0x7e]501// GFX12XX: v_fract_f64_e32 v[0:1], 1               ; encoding: [0x81,0x7c,0x00,0x7e]502// GFX89: v_fract_f64_e32 v[0:1], 1               ; encoding: [0x81,0x64,0x00,0x7e]503// SICI: v_fract_f64_e32 v[0:1], 1               ; encoding: [0x81,0x7c,0x00,0x7e]504 505v_fract_f64_e32 v[0:1], lit(1)506// GFX11: v_fract_f64_e32 v[0:1], lit(0x1)        ; encoding: [0xff,0x7c,0x00,0x7e,0x01,0x00,0x00,0x00]507// GFX12: v_fract_f64_e32 v[0:1], lit(0x1)        ; encoding: [0xff,0x7c,0x00,0x7e,0x01,0x00,0x00,0x00]508// GFX1250-ASM: v_fract_f64_e32 v[0:1], lit(0x1)        ; encoding: [0xfe,0x7c,0x00,0x7e,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00]509// GFX1250-DIS: v_fract_f64_e32 v[0:1], lit64(0x1)      ; encoding: [0xfe,0x7c,0x00,0x7e,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00]510// GFX89: v_fract_f64_e32 v[0:1], lit(0x1)        ; encoding: [0xff,0x64,0x00,0x7e,0x01,0x00,0x00,0x00]511// SICI: v_fract_f64_e32 v[0:1], lit(0x1)        ; encoding: [0xff,0x7c,0x00,0x7e,0x01,0x00,0x00,0x00]512 513v_trunc_f32_e64 v0, 0514// GFX11: v_trunc_f32_e64 v0, 0                   ; encoding: [0x00,0x00,0xa1,0xd5,0x80,0x00,0x00,0x00]515// GFX12XX: v_trunc_f32_e64 v0, 0                   ; encoding: [0x00,0x00,0xa1,0xd5,0x80,0x00,0x00,0x00]516// GFX89: v_trunc_f32_e64 v0, 0                   ; encoding: [0x00,0x00,0x5c,0xd1,0x80,0x00,0x00,0x00]517// SICI: v_trunc_f32_e64 v0, 0                   ; encoding: [0x00,0x00,0x42,0xd3,0x80,0x00,0x00,0x00]518 519v_fract_f64_e64 v[0:1], 0520// GFX11: v_fract_f64_e64 v[0:1], 0               ; encoding: [0x00,0x00,0xbe,0xd5,0x80,0x00,0x00,0x00]521// GFX12XX: v_fract_f64_e64 v[0:1], 0               ; encoding: [0x00,0x00,0xbe,0xd5,0x80,0x00,0x00,0x00]522// GFX89: v_fract_f64_e64 v[0:1], 0               ; encoding: [0x00,0x00,0x72,0xd1,0x80,0x00,0x00,0x00]523// SICI: v_fract_f64_e64 v[0:1], 0               ; encoding: [0x00,0x00,0x7c,0xd3,0x80,0x00,0x00,0x00]524 525v_trunc_f32_e32 v0, -13526// GFX11: v_trunc_f32_e32 v0, -13                 ; encoding: [0xcd,0x42,0x00,0x7e]527// GFX12XX: v_trunc_f32_e32 v0, -13                 ; encoding: [0xcd,0x42,0x00,0x7e]528// GFX89: v_trunc_f32_e32 v0, -13                 ; encoding: [0xcd,0x38,0x00,0x7e]529// SICI: v_trunc_f32_e32 v0, -13                 ; encoding: [0xcd,0x42,0x00,0x7e]530 531v_fract_f64_e32 v[0:1], -13532// GFX11: v_fract_f64_e32 v[0:1], -13             ; encoding: [0xcd,0x7c,0x00,0x7e]533// GFX12XX: v_fract_f64_e32 v[0:1], -13             ; encoding: [0xcd,0x7c,0x00,0x7e]534// GFX89: v_fract_f64_e32 v[0:1], -13             ; encoding: [0xcd,0x64,0x00,0x7e]535// SICI: v_fract_f64_e32 v[0:1], -13             ; encoding: [0xcd,0x7c,0x00,0x7e]536 537v_trunc_f32_e64 v0, -13538// GFX11: v_trunc_f32_e64 v0, -13                 ; encoding: [0x00,0x00,0xa1,0xd5,0xcd,0x00,0x00,0x00]539// GFX12XX: v_trunc_f32_e64 v0, -13                 ; encoding: [0x00,0x00,0xa1,0xd5,0xcd,0x00,0x00,0x00]540// GFX89: v_trunc_f32_e64 v0, -13                 ; encoding: [0x00,0x00,0x5c,0xd1,0xcd,0x00,0x00,0x00]541// SICI: v_trunc_f32_e64 v0, -13                 ; encoding: [0x00,0x00,0x42,0xd3,0xcd,0x00,0x00,0x00]542 543v_fract_f64_e64 v[0:1], -13544// GFX11: v_fract_f64_e64 v[0:1], -13             ; encoding: [0x00,0x00,0xbe,0xd5,0xcd,0x00,0x00,0x00]545// GFX12XX: v_fract_f64_e64 v[0:1], -13             ; encoding: [0x00,0x00,0xbe,0xd5,0xcd,0x00,0x00,0x00]546// GFX89: v_fract_f64_e64 v[0:1], -13             ; encoding: [0x00,0x00,0x72,0xd1,0xcd,0x00,0x00,0x00]547// SICI: v_fract_f64_e64 v[0:1], -13             ; encoding: [0x00,0x00,0x7c,0xd3,0xcd,0x00,0x00,0x00]548 549v_trunc_f32_e32 v0, 35550// GFX11: v_trunc_f32_e32 v0, 35                  ; encoding: [0xa3,0x42,0x00,0x7e]551// GFX12XX: v_trunc_f32_e32 v0, 35                  ; encoding: [0xa3,0x42,0x00,0x7e]552// GFX89: v_trunc_f32_e32 v0, 35                  ; encoding: [0xa3,0x38,0x00,0x7e]553// SICI: v_trunc_f32_e32 v0, 35                  ; encoding: [0xa3,0x42,0x00,0x7e]554 555v_fract_f64_e32 v[0:1], 35556// GFX11: v_fract_f64_e32 v[0:1], 35              ; encoding: [0xa3,0x7c,0x00,0x7e]557// GFX12XX: v_fract_f64_e32 v[0:1], 35              ; encoding: [0xa3,0x7c,0x00,0x7e]558// GFX89: v_fract_f64_e32 v[0:1], 35              ; encoding: [0xa3,0x64,0x00,0x7e]559// SICI: v_fract_f64_e32 v[0:1], 35              ; encoding: [0xa3,0x7c,0x00,0x7e]560 561v_trunc_f32_e64 v0, 35562// GFX11: v_trunc_f32_e64 v0, 35                  ; encoding: [0x00,0x00,0xa1,0xd5,0xa3,0x00,0x00,0x00]563// GFX12XX: v_trunc_f32_e64 v0, 35                  ; encoding: [0x00,0x00,0xa1,0xd5,0xa3,0x00,0x00,0x00]564// GFX89: v_trunc_f32_e64 v0, 35                  ; encoding: [0x00,0x00,0x5c,0xd1,0xa3,0x00,0x00,0x00]565// SICI: v_trunc_f32_e64 v0, 35                  ; encoding: [0x00,0x00,0x42,0xd3,0xa3,0x00,0x00,0x00]566 567v_fract_f64_e64 v[0:1], 35568// GFX11: v_fract_f64_e64 v[0:1], 35              ; encoding: [0x00,0x00,0xbe,0xd5,0xa3,0x00,0x00,0x00]569// GFX12XX: v_fract_f64_e64 v[0:1], 35              ; encoding: [0x00,0x00,0xbe,0xd5,0xa3,0x00,0x00,0x00]570// GFX89: v_fract_f64_e64 v[0:1], 35              ; encoding: [0x00,0x00,0x72,0xd1,0xa3,0x00,0x00,0x00]571// SICI: v_fract_f64_e64 v[0:1], 35              ; encoding: [0x00,0x00,0x7c,0xd3,0xa3,0x00,0x00,0x00]572 573v_trunc_f32_e32 v0, 1234574// GFX11: v_trunc_f32_e32 v0, 0x4d2               ; encoding: [0xff,0x42,0x00,0x7e,0xd2,0x04,0x00,0x00]575// GFX12XX: v_trunc_f32_e32 v0, 0x4d2               ; encoding: [0xff,0x42,0x00,0x7e,0xd2,0x04,0x00,0x00]576// GFX89: v_trunc_f32_e32 v0, 0x4d2               ; encoding: [0xff,0x38,0x00,0x7e,0xd2,0x04,0x00,0x00]577// SICI: v_trunc_f32_e32 v0, 0x4d2               ; encoding: [0xff,0x42,0x00,0x7e,0xd2,0x04,0x00,0x00]578 579v_fract_f64_e32 v[0:1], 1234580// GFX11: v_fract_f64_e32 v[0:1], 0x4d2           ; encoding: [0xff,0x7c,0x00,0x7e,0xd2,0x04,0x00,0x00]581// GFX12XX: v_fract_f64_e32 v[0:1], 0x4d2           ; encoding: [0xff,0x7c,0x00,0x7e,0xd2,0x04,0x00,0x00]582// GFX89: v_fract_f64_e32 v[0:1], 0x4d2           ; encoding: [0xff,0x64,0x00,0x7e,0xd2,0x04,0x00,0x00]583// SICI: v_fract_f64_e32 v[0:1], 0x4d2           ; encoding: [0xff,0x7c,0x00,0x7e,0xd2,0x04,0x00,0x00]584 585v_trunc_f32_e64 v0, 1234586// GFX11: v_trunc_f32_e64 v0, 0x4d2               ; encoding: [0x00,0x00,0xa1,0xd5,0xff,0x00,0x00,0x00,0xd2,0x04,0x00,0x00]587// GFX12XX: v_trunc_f32_e64 v0, 0x4d2               ; encoding: [0x00,0x00,0xa1,0xd5,0xff,0x00,0x00,0x00,0xd2,0x04,0x00,0x00]588// NOGFX89: :[[@LINE-3]]:21: error: literal operands are not supported589// NOSICI: :[[@LINE-4]]:21: error: literal operands are not supported590// NOSICIVI: :[[@LINE-1]]:21: error: literal operands are not supported591 592v_fract_f64_e64 v[0:1], 1234593// GFX11: v_fract_f64_e64 v[0:1], 0x4d2           ; encoding: [0x00,0x00,0xbe,0xd5,0xff,0x00,0x00,0x00,0xd2,0x04,0x00,0x00]594// GFX12XX: v_fract_f64_e64 v[0:1], 0x4d2           ; encoding: [0x00,0x00,0xbe,0xd5,0xff,0x00,0x00,0x00,0xd2,0x04,0x00,0x00]595// NOGFX89: :[[@LINE-3]]:25: error: literal operands are not supported596// NOSICI: :[[@LINE-4]]:25: error: literal operands are not supported597// NOSICIVI: :[[@LINE-1]]:25: error: literal operands are not supported598 599v_trunc_f32_e32 v0, -54321600// GFX11: v_trunc_f32_e32 v0, 0xffff2bcf          ; encoding: [0xff,0x42,0x00,0x7e,0xcf,0x2b,0xff,0xff]601// GFX12XX: v_trunc_f32_e32 v0, 0xffff2bcf          ; encoding: [0xff,0x42,0x00,0x7e,0xcf,0x2b,0xff,0xff]602// GFX89: v_trunc_f32_e32 v0, 0xffff2bcf          ; encoding: [0xff,0x38,0x00,0x7e,0xcf,0x2b,0xff,0xff]603// SICI: v_trunc_f32_e32 v0, 0xffff2bcf          ; encoding: [0xff,0x42,0x00,0x7e,0xcf,0x2b,0xff,0xff]604 605v_fract_f64_e32 v[0:1], -54321606// GFX11: v_fract_f64_e32 v[0:1], 0xffff2bcf      ; encoding: [0xff,0x7c,0x00,0x7e,0xcf,0x2b,0xff,0xff]607// GFX12XX: v_fract_f64_e32 v[0:1], 0xffff2bcf      ; encoding: [0xff,0x7c,0x00,0x7e,0xcf,0x2b,0xff,0xff]608// GFX89: v_fract_f64_e32 v[0:1], 0xffff2bcf      ; encoding: [0xff,0x64,0x00,0x7e,0xcf,0x2b,0xff,0xff]609// SICI: v_fract_f64_e32 v[0:1], 0xffff2bcf      ; encoding: [0xff,0x7c,0x00,0x7e,0xcf,0x2b,0xff,0xff]610 611v_trunc_f32_e32 v0, 0xdeadbeef612// GFX11: v_trunc_f32_e32 v0, 0xdeadbeef          ; encoding: [0xff,0x42,0x00,0x7e,0xef,0xbe,0xad,0xde]613// GFX12XX: v_trunc_f32_e32 v0, 0xdeadbeef          ; encoding: [0xff,0x42,0x00,0x7e,0xef,0xbe,0xad,0xde]614// GFX89: v_trunc_f32_e32 v0, 0xdeadbeef          ; encoding: [0xff,0x38,0x00,0x7e,0xef,0xbe,0xad,0xde]615// SICI: v_trunc_f32_e32 v0, 0xdeadbeef          ; encoding: [0xff,0x42,0x00,0x7e,0xef,0xbe,0xad,0xde]616 617v_fract_f64_e32 v[0:1], 0xdeadbeef618// GFX11: v_fract_f64_e32 v[0:1], 0xdeadbeef      ; encoding: [0xff,0x7c,0x00,0x7e,0xef,0xbe,0xad,0xde]619// GFX12XX: v_fract_f64_e32 v[0:1], 0xdeadbeef      ; encoding: [0xff,0x7c,0x00,0x7e,0xef,0xbe,0xad,0xde]620// GFX89: v_fract_f64_e32 v[0:1], 0xdeadbeef      ; encoding: [0xff,0x64,0x00,0x7e,0xef,0xbe,0xad,0xde]621// SICI: v_fract_f64_e32 v[0:1], 0xdeadbeef      ; encoding: [0xff,0x7c,0x00,0x7e,0xef,0xbe,0xad,0xde]622 623v_trunc_f32_e32 v0, 0xffffffff624// GFX11: v_trunc_f32_e32 v0, -1                  ; encoding: [0xc1,0x42,0x00,0x7e]625// GFX12XX: v_trunc_f32_e32 v0, -1                  ; encoding: [0xc1,0x42,0x00,0x7e]626// GFX89: v_trunc_f32_e32 v0, -1                  ; encoding: [0xc1,0x38,0x00,0x7e]627// SICI: v_trunc_f32_e32 v0, -1                  ; encoding: [0xc1,0x42,0x00,0x7e]628 629v_fract_f64_e32 v[0:1], 0xffffffff630// GFX11: v_fract_f64_e32 v[0:1], 0xffffffff      ; encoding: [0xff,0x7c,0x00,0x7e,0xff,0xff,0xff,0xff]631// GFX12XX: v_fract_f64_e32 v[0:1], 0xffffffff      ; encoding: [0xff,0x7c,0x00,0x7e,0xff,0xff,0xff,0xff]632// GFX89: v_fract_f64_e32 v[0:1], 0xffffffff      ; encoding: [0xff,0x64,0x00,0x7e,0xff,0xff,0xff,0xff]633// SICI: v_fract_f64_e32 v[0:1], 0xffffffff      ; encoding: [0xff,0x7c,0x00,0x7e,0xff,0xff,0xff,0xff]634 635v_trunc_f32_e32 v0, 0x123456789abcdef0636// NOGCN: :[[@LINE-1]]:21: error: invalid operand for instruction637 638v_fract_f64_e32 v[0:1], 0x123456789abcdef0639// GFX1250: v_fract_f64_e32 v[0:1], 0x123456789abcdef0 ; encoding: [0xfe,0x7c,0x00,0x7e,0xf0,0xde,0xbc,0x9a,0x78,0x56,0x34,0x12]640// NOGFX11: :[[@LINE-2]]:25: error: invalid operand for instruction641// NOGFX12: :[[@LINE-3]]:25: error: invalid operand for instruction642// NOGFX89: :[[@LINE-4]]:25: error: invalid operand for instruction643// NOSICI: :[[@LINE-5]]:25: error: invalid operand for instruction644// NOSICIVI: :[[@LINE-1]]:25: error: invalid operand for instruction645 646v_trunc_f32_e32 v0, 0xffffffffffffffff647// GFX11: v_trunc_f32_e32 v0, -1                  ; encoding: [0xc1,0x42,0x00,0x7e]648// GFX12XX: v_trunc_f32_e32 v0, -1                  ; encoding: [0xc1,0x42,0x00,0x7e]649// GFX89: v_trunc_f32_e32 v0, -1                  ; encoding: [0xc1,0x38,0x00,0x7e]650// SICI: v_trunc_f32_e32 v0, -1                  ; encoding: [0xc1,0x42,0x00,0x7e]651 652v_fract_f64_e32 v[0:1], 0xffffffffffffffff653// GFX11: v_fract_f64_e32 v[0:1], -1              ; encoding: [0xc1,0x7c,0x00,0x7e]654// GFX12XX: v_fract_f64_e32 v[0:1], -1              ; encoding: [0xc1,0x7c,0x00,0x7e]655// GFX89: v_fract_f64_e32 v[0:1], -1              ; encoding: [0xc1,0x64,0x00,0x7e]656// SICI: v_fract_f64_e32 v[0:1], -1              ; encoding: [0xc1,0x7c,0x00,0x7e]657 658v_wmma_i32_16x16x16_iu8 v[8:15], v[0:3], v[4:7], 1659// GFX11: v_wmma_i32_16x16x16_iu8 v[8:15], v[0:3], v[4:7], 1 ; encoding: [0x08,0x40,0x44,0xcc,0x00,0x09,0x06,0x1a]660// NOGFX12: :[[@LINE-2]]:1: error: operands are not valid for this GPU or mode661// NOGFX1250: :[[@LINE-3]]:1: error: operands are not valid for this GPU or mode662// NOGFX89: :[[@LINE-4]]:1: error: instruction not supported on this GPU663// NOSICI: :[[@LINE-5]]:1: error: instruction not supported on this GPU664 665v_wmma_i32_16x16x16_iu8 v[8:15], v[0:3], v[4:7], lit(1)666// NOGFX11: :[[@LINE-1]]:54: error: invalid operand for instruction667// NOGFX12: :[[@LINE-2]]:54: error: invalid operand for instruction668// NOGFX1250: :[[@LINE-3]]:54: error: invalid operand for instruction669// NOGFX89: :[[@LINE-4]]:1: error: instruction not supported on this GPU670// NOSICI: :[[@LINE-5]]:1: error: instruction not supported on this GPU671 672v_cos_f16_e32 v5.l, 1673// GFX11: v_cos_f16_e32 v5.l, 1                   ; encoding: [0x81,0xc2,0x0a,0x7e]674// GFX1250: v_cos_f16_e32 v5.l, 1                   ; encoding: [0x81,0xc2,0x0a,0x7e]675// NOGFX12: :[[@LINE-3]]:1: error: operands are not valid for this GPU or mode676// NOGFX89: :[[@LINE-4]]:1: error: operands are not valid for this GPU or mode677// NOSICI: :[[@LINE-5]]:1: error: instruction not supported on this GPU678 679v_cos_f16_e32 v5.l, lit(1)680// GFX11: v_cos_f16_e32 v5.l, lit(0x1)            ; encoding: [0xff,0xc2,0x0a,0x7e,0x01,0x00,0x00,0x00]681// GFX1250: v_cos_f16_e32 v5.l, lit(0x1)            ; encoding: [0xff,0xc2,0x0a,0x7e,0x01,0x00,0x00,0x00]682// NOGFX12: :[[@LINE-3]]:1: error: operands are not valid for this GPU or mode683// NOGFX89: :[[@LINE-4]]:1: error: operands are not valid for this GPU or mode684// NOSICI: :[[@LINE-5]]:1: error: instruction not supported on this GPU685 686v_tanh_bf16 v5.l, 1687// GFX1250: v_tanh_bf16_e32 v5.l, 1                 ; encoding: [0x81,0x94,0x0a,0x7e]688// NOGFX11: :[[@LINE-2]]:1: error: instruction not supported on this GPU689// NOGFX12: :[[@LINE-3]]:1: error: instruction not supported on this GPU690// NOGFX89: :[[@LINE-4]]:1: error: instruction not supported on this GPU691// NOSICI: :[[@LINE-5]]:1: error: instruction not supported on this GPU692 693v_tanh_bf16 v5.l, lit(1)694// GFX1250: v_tanh_bf16_e32 v5.l, lit(0x1)          ; encoding: [0xff,0x94,0x0a,0x7e,0x01,0x00,0x00,0x00]695// NOGFX11: :[[@LINE-2]]:1: error: instruction not supported on this GPU696// NOGFX12: :[[@LINE-3]]:1: error: instruction not supported on this GPU697// NOGFX89: :[[@LINE-4]]:1: error: instruction not supported on this GPU698// NOSICI: :[[@LINE-5]]:1: error: instruction not supported on this GPU699 700v_trunc_f32_e32 v0, 1701// GFX11: v_trunc_f32_e32 v0, 1                   ; encoding: [0x81,0x42,0x00,0x7e]702// GFX12XX: v_trunc_f32_e32 v0, 1                   ; encoding: [0x81,0x42,0x00,0x7e]703// GFX89: v_trunc_f32_e32 v0, 1                   ; encoding: [0x81,0x38,0x00,0x7e]704// SICI: v_trunc_f32_e32 v0, 1                   ; encoding: [0x81,0x42,0x00,0x7e]705 706v_trunc_f32_e32 v0, lit(1)707// GFX11: v_trunc_f32_e32 v0, lit(0x1)            ; encoding: [0xff,0x42,0x00,0x7e,0x01,0x00,0x00,0x00]708// GFX12XX: v_trunc_f32_e32 v0, lit(0x1)            ; encoding: [0xff,0x42,0x00,0x7e,0x01,0x00,0x00,0x00]709// GFX89: v_trunc_f32_e32 v0, lit(0x1)            ; encoding: [0xff,0x38,0x00,0x7e,0x01,0x00,0x00,0x00]710// SICI: v_trunc_f32_e32 v0, lit(0x1)            ; encoding: [0xff,0x42,0x00,0x7e,0x01,0x00,0x00,0x00]711 712v_dot2_bf16_bf16 v5.l, v1, v2, 1713// GFX11: v_dot2_bf16_bf16 v5.l, v1, v2, 1        ; encoding: [0x05,0x00,0x67,0xd6,0x01,0x05,0x06,0x02]714// NOGFX12: :[[@LINE-2]]:1: error: operands are not valid for this GPU or mode715// NOGFX1250: :[[@LINE-3]]:1: error: instruction not supported on this GPU716// NOGFX89: :[[@LINE-4]]:1: error: instruction not supported on this GPU717// NOSICI: :[[@LINE-5]]:1: error: instruction not supported on this GPU718 719v_dot2_bf16_bf16 v5.l, v1, v2, lit(1)720// GFX11: v_dot2_bf16_bf16 v5.l, v1, v2, lit(0x1) ; encoding: [0x05,0x00,0x67,0xd6,0x01,0x05,0xfe,0x03,0x01,0x00,0x00,0x00]721// NOGFX12: :[[@LINE-2]]:1: error: operands are not valid for this GPU or mode722// NOGFX1250: :[[@LINE-3]]:1: error: instruction not supported on this GPU723// NOGFX89: :[[@LINE-4]]:1: error: instruction not supported on this GPU724// NOSICI: :[[@LINE-5]]:1: error: instruction not supported on this GPU725 726v_dot2_f32_f16 v5, v1, 1, v2727// GFX11: v_dot2_f32_f16 v5, v1, 1, v2            ; encoding: [0x05,0x40,0x13,0xcc,0x01,0x03,0x09,0x1c]728// GFX12: v_dot2_f32_f16 v5, v1, 1, v2            ; encoding: [0x05,0x40,0x13,0xcc,0x01,0x03,0x09,0x1c]729// NOGFX1250: :[[@LINE-3]]:1: error: instruction not supported on this GPU730// NOGFX89: :[[@LINE-4]]:1: error: instruction not supported on this GPU731// NOSICI: :[[@LINE-5]]:1: error: instruction not supported on this GPU732 733v_dot2_f32_f16 v5, v1, lit(1), v2734// GFX11: v_dot2_f32_f16 v5, v1, lit(0x1), v2     ; encoding: [0x05,0x40,0x13,0xcc,0x01,0xff,0x09,0x1c,0x01,0x00,0x00,0x00]735// GFX12: v_dot2_f32_f16 v5, v1, lit(0x1), v2     ; encoding: [0x05,0x40,0x13,0xcc,0x01,0xff,0x09,0x1c,0x01,0x00,0x00,0x00]736// NOGFX1250: :[[@LINE-3]]:1: error: instruction not supported on this GPU737// NOGFX89: :[[@LINE-4]]:1: error: instruction not supported on this GPU738// NOSICI: :[[@LINE-5]]:1: error: instruction not supported on this GPU739 740v_cvt_pk_fp8_f16 v1.l, 1741// GFX1250: v_cvt_pk_fp8_f16 v1.l, 1                ; encoding: [0x01,0x00,0x72,0xd7,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00]742// NOGFX11: :[[@LINE-2]]:1: error: instruction not supported on this GPU743// NOGFX12: :[[@LINE-3]]:1: error: instruction not supported on this GPU744// NOGFX89: :[[@LINE-4]]:1: error: instruction not supported on this GPU745// NOSICI: :[[@LINE-5]]:1: error: instruction not supported on this GPU746 747v_cvt_pk_fp8_f16 v1.l, lit(1)748// GFX1250-ASM: v_cvt_pk_fp8_f16 v1.l, lit(0x1)         ; encoding: [0x01,0x00,0x72,0xd7,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00]749// GFX1250-DIS: v_cvt_pk_fp8_f16 v1.l, 1                ; encoding: [0x01,0x00,0x72,0xd7,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00]750// NOGFX11: :[[@LINE-3]]:1: error: instruction not supported on this GPU751// NOGFX12: :[[@LINE-4]]:1: error: instruction not supported on this GPU752// NOGFX89: :[[@LINE-5]]:1: error: instruction not supported on this GPU753// NOSICI: :[[@LINE-6]]:1: error: instruction not supported on this GPU754 755//---------------------------------------------------------------------------//756// int literal, expected int operand757//---------------------------------------------------------------------------//758 759s_mov_b64_e32 s[0:1], 0760// GFX8PLUS: s_mov_b64 s[0:1], 0                     ; encoding: [0x80,0x01,0x80,0xbe]761// SICI: s_mov_b64 s[0:1], 0                     ; encoding: [0x80,0x04,0x80,0xbe]762 763v_and_b32_e32 v0, 0, v1764// GFX11: v_and_b32_e32 v0, 0, v1                 ; encoding: [0x80,0x02,0x00,0x36]765// GFX12XX: v_and_b32_e32 v0, 0, v1                 ; encoding: [0x80,0x02,0x00,0x36]766// GFX89: v_and_b32_e32 v0, 0, v1                 ; encoding: [0x80,0x02,0x00,0x26]767// SICI: v_and_b32_e32 v0, 0, v1                 ; encoding: [0x80,0x02,0x00,0x36]768 769v_and_b32_e64 v0, 0, v1770// GFX11: v_and_b32_e64 v0, 0, v1                 ; encoding: [0x00,0x00,0x1b,0xd5,0x80,0x02,0x02,0x00]771// GFX12XX: v_and_b32_e64 v0, 0, v1                 ; encoding: [0x00,0x00,0x1b,0xd5,0x80,0x02,0x02,0x00]772// GFX89: v_and_b32_e64 v0, 0, v1                 ; encoding: [0x00,0x00,0x13,0xd1,0x80,0x02,0x02,0x00]773// SICI: v_and_b32_e64 v0, 0, v1                 ; encoding: [0x00,0x00,0x36,0xd2,0x80,0x02,0x02,0x00]774 775s_mov_b64_e32 s[0:1], -13776// GFX8PLUS: s_mov_b64 s[0:1], -13                   ; encoding: [0xcd,0x01,0x80,0xbe]777// SICI: s_mov_b64 s[0:1], -13                   ; encoding: [0xcd,0x04,0x80,0xbe]778 779v_and_b32_e32 v0, -13, v1780// GFX11: v_and_b32_e32 v0, -13, v1               ; encoding: [0xcd,0x02,0x00,0x36]781// GFX12XX: v_and_b32_e32 v0, -13, v1               ; encoding: [0xcd,0x02,0x00,0x36]782// GFX89: v_and_b32_e32 v0, -13, v1               ; encoding: [0xcd,0x02,0x00,0x26]783// SICI: v_and_b32_e32 v0, -13, v1               ; encoding: [0xcd,0x02,0x00,0x36]784 785v_and_b32_e64 v0, -13, v1786// GFX11: v_and_b32_e64 v0, -13, v1               ; encoding: [0x00,0x00,0x1b,0xd5,0xcd,0x02,0x02,0x00]787// GFX12XX: v_and_b32_e64 v0, -13, v1               ; encoding: [0x00,0x00,0x1b,0xd5,0xcd,0x02,0x02,0x00]788// GFX89: v_and_b32_e64 v0, -13, v1               ; encoding: [0x00,0x00,0x13,0xd1,0xcd,0x02,0x02,0x00]789// SICI: v_and_b32_e64 v0, -13, v1               ; encoding: [0x00,0x00,0x36,0xd2,0xcd,0x02,0x02,0x00]790 791s_mov_b64_e32 s[0:1], 35792// GFX8PLUS: s_mov_b64 s[0:1], 35                    ; encoding: [0xa3,0x01,0x80,0xbe]793// SICI: s_mov_b64 s[0:1], 35                    ; encoding: [0xa3,0x04,0x80,0xbe]794 795v_and_b32_e32 v0, 35, v1796// GFX11: v_and_b32_e32 v0, 35, v1                ; encoding: [0xa3,0x02,0x00,0x36]797// GFX12XX: v_and_b32_e32 v0, 35, v1                ; encoding: [0xa3,0x02,0x00,0x36]798// GFX89: v_and_b32_e32 v0, 35, v1                ; encoding: [0xa3,0x02,0x00,0x26]799// SICI: v_and_b32_e32 v0, 35, v1                ; encoding: [0xa3,0x02,0x00,0x36]800 801v_and_b32_e64 v0, 35, v1802// GFX11: v_and_b32_e64 v0, 35, v1                ; encoding: [0x00,0x00,0x1b,0xd5,0xa3,0x02,0x02,0x00]803// GFX12XX: v_and_b32_e64 v0, 35, v1                ; encoding: [0x00,0x00,0x1b,0xd5,0xa3,0x02,0x02,0x00]804// GFX89: v_and_b32_e64 v0, 35, v1                ; encoding: [0x00,0x00,0x13,0xd1,0xa3,0x02,0x02,0x00]805// SICI: v_and_b32_e64 v0, 35, v1                ; encoding: [0x00,0x00,0x36,0xd2,0xa3,0x02,0x02,0x00]806 807s_mov_b64_e32 s[0:1], 1234808// GFX8PLUS: s_mov_b64 s[0:1], 0x4d2                 ; encoding: [0xff,0x01,0x80,0xbe,0xd2,0x04,0x00,0x00]809// SICI: s_mov_b64 s[0:1], 0x4d2                 ; encoding: [0xff,0x04,0x80,0xbe,0xd2,0x04,0x00,0x00]810 811v_and_b32_e32 v0, 1234, v1812// GFX11: v_and_b32_e32 v0, 0x4d2, v1             ; encoding: [0xff,0x02,0x00,0x36,0xd2,0x04,0x00,0x00]813// GFX12XX: v_and_b32_e32 v0, 0x4d2, v1             ; encoding: [0xff,0x02,0x00,0x36,0xd2,0x04,0x00,0x00]814// GFX89: v_and_b32_e32 v0, 0x4d2, v1             ; encoding: [0xff,0x02,0x00,0x26,0xd2,0x04,0x00,0x00]815// SICI: v_and_b32_e32 v0, 0x4d2, v1             ; encoding: [0xff,0x02,0x00,0x36,0xd2,0x04,0x00,0x00]816 817v_and_b32_e64 v0, 1234, v1818// GFX11: v_and_b32_e64 v0, 0x4d2, v1             ; encoding: [0x00,0x00,0x1b,0xd5,0xff,0x02,0x02,0x00,0xd2,0x04,0x00,0x00]819// GFX12XX: v_and_b32_e64 v0, 0x4d2, v1             ; encoding: [0x00,0x00,0x1b,0xd5,0xff,0x02,0x02,0x00,0xd2,0x04,0x00,0x00]820// NOGFX89: :[[@LINE-3]]:19: error: literal operands are not supported821// NOSICI: :[[@LINE-4]]:19: error: literal operands are not supported822// NOSICIVI: :[[@LINE-1]]:19: error: literal operands are not supported823 824s_mov_b64_e32 s[0:1], -54321825// GFX11: s_mov_b64 s[0:1], 0xffff2bcf            ; encoding: [0xff,0x01,0x80,0xbe,0xcf,0x2b,0xff,0xff]826// GFX12: s_mov_b64 s[0:1], 0xffff2bcf            ; encoding: [0xff,0x01,0x80,0xbe,0xcf,0x2b,0xff,0xff]827// GFX1250: s_mov_b64 s[0:1], 0xffffffffffff2bcf    ; encoding: [0xfe,0x01,0x80,0xbe,0xcf,0x2b,0xff,0xff,0xff,0xff,0xff,0xff]828// GFX89: s_mov_b64 s[0:1], 0xffff2bcf            ; encoding: [0xff,0x01,0x80,0xbe,0xcf,0x2b,0xff,0xff]829// SICI: s_mov_b64 s[0:1], 0xffff2bcf            ; encoding: [0xff,0x04,0x80,0xbe,0xcf,0x2b,0xff,0xff]830 831v_and_b32_e32 v0, -54321, v1832// GFX11: v_and_b32_e32 v0, 0xffff2bcf, v1        ; encoding: [0xff,0x02,0x00,0x36,0xcf,0x2b,0xff,0xff]833// GFX12XX: v_and_b32_e32 v0, 0xffff2bcf, v1        ; encoding: [0xff,0x02,0x00,0x36,0xcf,0x2b,0xff,0xff]834// GFX89: v_and_b32_e32 v0, 0xffff2bcf, v1        ; encoding: [0xff,0x02,0x00,0x26,0xcf,0x2b,0xff,0xff]835// SICI: v_and_b32_e32 v0, 0xffff2bcf, v1        ; encoding: [0xff,0x02,0x00,0x36,0xcf,0x2b,0xff,0xff]836 837s_mov_b64_e32 s[0:1], 0xdeadbeef838// GFX11: s_mov_b64 s[0:1], 0xdeadbeef            ; encoding: [0xff,0x01,0x80,0xbe,0xef,0xbe,0xad,0xde]839// GFX12: s_mov_b64 s[0:1], 0xdeadbeef            ; encoding: [0xff,0x01,0x80,0xbe,0xef,0xbe,0xad,0xde]840// GFX1250-ASM: s_mov_b64 s[0:1], 0xdeadbeef            ; encoding: [0xfe,0x01,0x80,0xbe,0xef,0xbe,0xad,0xde,0x00,0x00,0x00,0x00]841// GFX1250-DIS: s_mov_b64 s[0:1], lit64(0xdeadbeef)     ; encoding: [0xfe,0x01,0x80,0xbe,0xef,0xbe,0xad,0xde,0x00,0x00,0x00,0x00]842// GFX89: s_mov_b64 s[0:1], 0xdeadbeef            ; encoding: [0xff,0x01,0x80,0xbe,0xef,0xbe,0xad,0xde]843// SICI: s_mov_b64 s[0:1], 0xdeadbeef            ; encoding: [0xff,0x04,0x80,0xbe,0xef,0xbe,0xad,0xde]844 845v_and_b32_e32 v0, 0xdeadbeef, v1846// GFX11: v_and_b32_e32 v0, 0xdeadbeef, v1        ; encoding: [0xff,0x02,0x00,0x36,0xef,0xbe,0xad,0xde]847// GFX12XX: v_and_b32_e32 v0, 0xdeadbeef, v1        ; encoding: [0xff,0x02,0x00,0x36,0xef,0xbe,0xad,0xde]848// GFX89: v_and_b32_e32 v0, 0xdeadbeef, v1        ; encoding: [0xff,0x02,0x00,0x26,0xef,0xbe,0xad,0xde]849// SICI: v_and_b32_e32 v0, 0xdeadbeef, v1        ; encoding: [0xff,0x02,0x00,0x36,0xef,0xbe,0xad,0xde]850 851s_mov_b64_e32 s[0:1], 0xffffffff852// GFX11: s_mov_b64 s[0:1], 0xffffffff            ; encoding: [0xff,0x01,0x80,0xbe,0xff,0xff,0xff,0xff]853// GFX12: s_mov_b64 s[0:1], 0xffffffff            ; encoding: [0xff,0x01,0x80,0xbe,0xff,0xff,0xff,0xff]854// GFX1250-ASM: s_mov_b64 s[0:1], 0xffffffff            ; encoding: [0xfe,0x01,0x80,0xbe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00]855// GFX1250-DIS: s_mov_b64 s[0:1], lit64(0xffffffff)     ; encoding: [0xfe,0x01,0x80,0xbe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00]856// GFX89: s_mov_b64 s[0:1], 0xffffffff            ; encoding: [0xff,0x01,0x80,0xbe,0xff,0xff,0xff,0xff]857// SICI: s_mov_b64 s[0:1], 0xffffffff            ; encoding: [0xff,0x04,0x80,0xbe,0xff,0xff,0xff,0xff]858 859v_and_b32_e32 v0, 0xffffffff, v1860// GFX11: v_and_b32_e32 v0, -1, v1                ; encoding: [0xc1,0x02,0x00,0x36]861// GFX12XX: v_and_b32_e32 v0, -1, v1                ; encoding: [0xc1,0x02,0x00,0x36]862// GFX89: v_and_b32_e32 v0, -1, v1                ; encoding: [0xc1,0x02,0x00,0x26]863// SICI: v_and_b32_e32 v0, -1, v1                ; encoding: [0xc1,0x02,0x00,0x36]864 865s_mov_b64_e32 s[0:1], 0x123456789abcdef0866// GFX1250: s_mov_b64 s[0:1], 0x123456789abcdef0    ; encoding: [0xfe,0x01,0x80,0xbe,0xf0,0xde,0xbc,0x9a,0x78,0x56,0x34,0x12]867// NOGFX11: :[[@LINE-2]]:23: error: invalid operand for instruction868// NOGFX12: :[[@LINE-3]]:23: error: invalid operand for instruction869// NOGFX89: :[[@LINE-4]]:23: error: invalid operand for instruction870// NOSICI: :[[@LINE-5]]:23: error: invalid operand for instruction871// NOSICIVI: :[[@LINE-1]]:23: error: invalid operand for instruction872 873v_and_b32_e32 v0, 0x123456789abcdef0, v1874// NOGCN: :[[@LINE-1]]:19: error: invalid operand for instruction875 876s_mov_b64_e32 s[0:1], 0xffffffffffffffff877// GFX8PLUS: s_mov_b64 s[0:1], -1                    ; encoding: [0xc1,0x01,0x80,0xbe]878// SICI: s_mov_b64 s[0:1], -1                    ; encoding: [0xc1,0x04,0x80,0xbe]879 880v_and_b32_e32 v0, 0xffffffffffffffff, v1881// GFX11: v_and_b32_e32 v0, -1, v1                ; encoding: [0xc1,0x02,0x00,0x36]882// GFX12XX: v_and_b32_e32 v0, -1, v1                ; encoding: [0xc1,0x02,0x00,0x36]883// GFX89: v_and_b32_e32 v0, -1, v1                ; encoding: [0xc1,0x02,0x00,0x26]884// SICI: v_and_b32_e32 v0, -1, v1                ; encoding: [0xc1,0x02,0x00,0x36]885 886v_not_b16 v5.l, 1887// GFX11: v_not_b16_e32 v5.l, 1                   ; encoding: [0x81,0xd2,0x0a,0x7e]888// GFX1250: v_not_b16_e32 v5.l, 1                   ; encoding: [0x81,0xd2,0x0a,0x7e]889// NOGFX12: :[[@LINE-3]]:1: error: operands are not valid for this GPU or mode890// NOGFX89: :[[@LINE-4]]:1: error: instruction not supported on this GPU891// NOSICI: :[[@LINE-5]]:1: error: instruction not supported on this GPU892 893v_not_b16 v5.l, lit(1)894// GFX11: v_not_b16_e32 v5.l, lit(0x1)            ; encoding: [0xff,0xd2,0x0a,0x7e,0x01,0x00,0x00,0x00]895// GFX1250: v_not_b16_e32 v5.l, lit(0x1)            ; encoding: [0xff,0xd2,0x0a,0x7e,0x01,0x00,0x00,0x00]896// NOGFX12: :[[@LINE-3]]:1: error: operands are not valid for this GPU or mode897// NOGFX89: :[[@LINE-4]]:1: error: instruction not supported on this GPU898// NOSICI: :[[@LINE-5]]:1: error: instruction not supported on this GPU899 900s_mov_b64 s[0:1], 1901// GFX8PLUS: s_mov_b64 s[0:1], 1                     ; encoding: [0x81,0x01,0x80,0xbe]902// SICI: s_mov_b64 s[0:1], 1                     ; encoding: [0x81,0x04,0x80,0xbe]903 904s_mov_b64 s[0:1], lit(1)905// GFX11: s_mov_b64 s[0:1], lit(0x1)              ; encoding: [0xff,0x01,0x80,0xbe,0x01,0x00,0x00,0x00]906// GFX12: s_mov_b64 s[0:1], lit(0x1)              ; encoding: [0xff,0x01,0x80,0xbe,0x01,0x00,0x00,0x00]907// GFX1250-ASM: s_mov_b64 s[0:1], lit(0x1)              ; encoding: [0xfe,0x01,0x80,0xbe,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00]908// GFX1250-DIS: s_mov_b64 s[0:1], lit64(0x1)            ; encoding: [0xfe,0x01,0x80,0xbe,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00]909// GFX89: s_mov_b64 s[0:1], lit(0x1)              ; encoding: [0xff,0x01,0x80,0xbe,0x01,0x00,0x00,0x00]910// SICI: s_mov_b64 s[0:1], lit(0x1)              ; encoding: [0xff,0x04,0x80,0xbe,0x01,0x00,0x00,0x00]911 912v_and_b32_e32 v0, 1, v1913// GFX11: v_and_b32_e32 v0, 1, v1                 ; encoding: [0x81,0x02,0x00,0x36]914// GFX12XX: v_and_b32_e32 v0, 1, v1                 ; encoding: [0x81,0x02,0x00,0x36]915// GFX89: v_and_b32_e32 v0, 1, v1                 ; encoding: [0x81,0x02,0x00,0x26]916// SICI: v_and_b32_e32 v0, 1, v1                 ; encoding: [0x81,0x02,0x00,0x36]917 918v_and_b32_e32 v0, lit(1), v1919// GFX11: v_and_b32_e32 v0, lit(0x1), v1          ; encoding: [0xff,0x02,0x00,0x36,0x01,0x00,0x00,0x00]920// GFX12XX: v_and_b32_e32 v0, lit(0x1), v1          ; encoding: [0xff,0x02,0x00,0x36,0x01,0x00,0x00,0x00]921// GFX89: v_and_b32_e32 v0, lit(0x1), v1          ; encoding: [0xff,0x02,0x00,0x26,0x01,0x00,0x00,0x00]922// SICI: v_and_b32_e32 v0, lit(0x1), v1          ; encoding: [0xff,0x02,0x00,0x36,0x01,0x00,0x00,0x00]923 924v_pk_add_u16 v5, exec_lo, 1925// GFX11: v_pk_add_u16 v5, exec_lo, 1             ; encoding: [0x05,0x40,0x0a,0xcc,0x7e,0x02,0x01,0x18]926// GFX12XX: v_pk_add_u16 v5, exec_lo, 1             ; encoding: [0x05,0x40,0x0a,0xcc,0x7e,0x02,0x01,0x18]927// GFX9: v_pk_add_u16 v5, exec_lo, 1             ; encoding: [0x05,0x40,0x8a,0xd3,0x7e,0x02,0x01,0x18]928// NOSICI: :[[@LINE-4]]:1: error: instruction not supported on this GPU929// NOVI: :[[@LINE-5]]:1: error: instruction not supported on this GPU930 931v_pk_add_u16 v5, exec_lo, lit(1)932// GFX11: v_pk_add_u16 v5, exec_lo, lit(0x1)      ; encoding: [0x05,0x40,0x0a,0xcc,0x7e,0xfe,0x01,0x18,0x01,0x00,0x00,0x00]933// GFX12XX: v_pk_add_u16 v5, exec_lo, lit(0x1)      ; encoding: [0x05,0x40,0x0a,0xcc,0x7e,0xfe,0x01,0x18,0x01,0x00,0x00,0x00]934// NOGFX9: :[[@LINE-3]]:31: error: invalid operand (violates constant bus restrictions)935// NOSICI: :[[@LINE-4]]:1: error: instruction not supported on this GPU936// NOVI: :[[@LINE-5]]:1: error: instruction not supported on this GPU937 938v_perm_pk16_b6_u4 v[2:4], v4, v[4:5], 1939// GFX1250: v_perm_pk16_b6_u4 v[2:4], v4, v[4:5], 1 ; encoding: [0x02,0x00,0x42,0xd6,0x04,0x09,0x06,0x02]940// NOGFX11: :[[@LINE-2]]:1: error: instruction not supported on this GPU941// NOGFX12: :[[@LINE-3]]:1: error: instruction not supported on this GPU942// NOGFX89: :[[@LINE-4]]:1: error: instruction not supported on this GPU943// NOSICI: :[[@LINE-5]]:1: error: instruction not supported on this GPU944 945v_perm_pk16_b6_u4 v[2:4], v4, v[4:5], lit(1)946// GFX1250: v_perm_pk16_b6_u4 v[2:4], v4, v[4:5], lit(0x1) ; encoding: [0x02,0x00,0x42,0xd6,0x04,0x09,0xfe,0x03,0x01,0x00,0x00,0x00]947// NOGFX11: :[[@LINE-2]]:1: error: instruction not supported on this GPU948// NOGFX12: :[[@LINE-3]]:1: error: instruction not supported on this GPU949// NOGFX89: :[[@LINE-4]]:1: error: instruction not supported on this GPU950// NOSICI: :[[@LINE-5]]:1: error: instruction not supported on this GPU951 952//---------------------------------------------------------------------------//953// 1/(2*PI)954//---------------------------------------------------------------------------//955 956v_trunc_f32_e32 v0, 0x3fc45f306dc9c882957// NOGCN: :[[@LINE-1]]:21: error: invalid operand for instruction958 959v_fract_f64_e32 v[0:1], 0x3fc45f306dc9c882960// GFX11: v_fract_f64_e32 v[0:1], 0.15915494309189532 ; encoding: [0xf8,0x7c,0x00,0x7e]961// GFX12XX: v_fract_f64_e32 v[0:1], 0.15915494309189532 ; encoding: [0xf8,0x7c,0x00,0x7e]962// GFX89: v_fract_f64_e32 v[0:1], 0.15915494309189532 ; encoding: [0xf8,0x64,0x00,0x7e]963// NOSICI: :[[@LINE-4]]:25: error: invalid operand for instruction964// NOSICIVI: :[[@LINE-2]]:25: error: invalid operand for instruction965 966v_trunc_f32_e32 v0, 0x3e22f983967// GFX11: v_trunc_f32_e32 v0, 0.15915494          ; encoding: [0xf8,0x42,0x00,0x7e]968// GFX12XX: v_trunc_f32_e32 v0, 0.15915494          ; encoding: [0xf8,0x42,0x00,0x7e]969// GFX89: v_trunc_f32_e32 v0, 0.15915494          ; encoding: [0xf8,0x38,0x00,0x7e]970// SICI: v_trunc_f32_e32 v0, 0x3e22f983          ; encoding: [0xff,0x42,0x00,0x7e,0x83,0xf9,0x22,0x3e]971 972v_fract_f64_e32 v[0:1], 0x3e22f983973// GFX11: v_fract_f64_e32 v[0:1], 0x3e22f983      ; encoding: [0xff,0x7c,0x00,0x7e,0x83,0xf9,0x22,0x3e]974// GFX12XX: v_fract_f64_e32 v[0:1], 0x3e22f983      ; encoding: [0xff,0x7c,0x00,0x7e,0x83,0xf9,0x22,0x3e]975// GFX89: v_fract_f64_e32 v[0:1], 0x3e22f983      ; encoding: [0xff,0x64,0x00,0x7e,0x83,0xf9,0x22,0x3e]976// SICI: v_fract_f64_e32 v[0:1], 0x3e22f983      ; encoding: [0xff,0x7c,0x00,0x7e,0x83,0xf9,0x22,0x3e]977 978v_trunc_f32_e64 v0, 0x3fc45f306dc9c882979// NOGCN: :[[@LINE-1]]:21: error: invalid operand for instruction980 981v_fract_f64_e64 v[0:1], 0x3fc45f306dc9c882982// GFX11: v_fract_f64_e64 v[0:1], 0.15915494309189532 ; encoding: [0x00,0x00,0xbe,0xd5,0xf8,0x00,0x00,0x00]983// GFX12XX: v_fract_f64_e64 v[0:1], 0.15915494309189532 ; encoding: [0x00,0x00,0xbe,0xd5,0xf8,0x00,0x00,0x00]984// GFX89: v_fract_f64_e64 v[0:1], 0.15915494309189532 ; encoding: [0x00,0x00,0x72,0xd1,0xf8,0x00,0x00,0x00]985// NOSICI: :[[@LINE-4]]:25: error: invalid operand for instruction986// NOSICIVI: :[[@LINE-2]]:25: error: invalid operand for instruction987 988v_trunc_f32_e64 v0, 0x3e22f983989// GFX11: v_trunc_f32_e64 v0, 0.15915494          ; encoding: [0x00,0x00,0xa1,0xd5,0xf8,0x00,0x00,0x00]990// GFX12XX: v_trunc_f32_e64 v0, 0.15915494          ; encoding: [0x00,0x00,0xa1,0xd5,0xf8,0x00,0x00,0x00]991// GFX89: v_trunc_f32_e64 v0, 0.15915494          ; encoding: [0x00,0x00,0x5c,0xd1,0xf8,0x00,0x00,0x00]992// NOSICI: :[[@LINE-4]]:21: error: literal operands are not supported993// NOSICIVI: :[[@LINE-2]]:21: error: literal operands are not supported994 995v_fract_f64_e64 v[0:1], 0x3e22f983996// GFX11: v_fract_f64_e64 v[0:1], 0x3e22f983      ; encoding: [0x00,0x00,0xbe,0xd5,0xff,0x00,0x00,0x00,0x83,0xf9,0x22,0x3e]997// GFX12XX: v_fract_f64_e64 v[0:1], 0x3e22f983      ; encoding: [0x00,0x00,0xbe,0xd5,0xff,0x00,0x00,0x00,0x83,0xf9,0x22,0x3e]998// NOGFX89: :[[@LINE-3]]:25: error: literal operands are not supported999// NOSICI: :[[@LINE-4]]:25: error: literal operands are not supported1000// NOSICIVI: :[[@LINE-1]]:25: error: literal operands are not supported1001 1002s_mov_b64_e32 s[0:1], 0.1591549430918953178526464853351003// GFX8PLUS: s_mov_b64 s[0:1], 0.15915494309189532   ; encoding: [0xf8,0x01,0x80,0xbe]1004// NOSICI: :[[@LINE-2]]:23: error: invalid operand for instruction1005// NOSICIVI: :[[@LINE-2]]:23: error: invalid operand for instruction1006 1007v_and_b32_e32 v0, 0.159154943091895317852646485335, v11008// GFX11: v_and_b32_e32 v0, 0.15915494, v1        ; encoding: [0xf8,0x02,0x00,0x36]1009// GFX12XX: v_and_b32_e32 v0, 0.15915494, v1        ; encoding: [0xf8,0x02,0x00,0x36]1010// GFX89: v_and_b32_e32 v0, 0.15915494, v1        ; encoding: [0xf8,0x02,0x00,0x26]1011// SICI: v_and_b32_e32 v0, 0x3e22f983, v1        ; encoding: [0xff,0x02,0x00,0x36,0x83,0xf9,0x22,0x3e]1012 1013v_and_b32_e64 v0, 0.159154943091895317852646485335, v11014// GFX11: v_and_b32_e64 v0, 0.15915494, v1        ; encoding: [0x00,0x00,0x1b,0xd5,0xf8,0x02,0x02,0x00]1015// GFX12XX: v_and_b32_e64 v0, 0.15915494, v1        ; encoding: [0x00,0x00,0x1b,0xd5,0xf8,0x02,0x02,0x00]1016// GFX89: v_and_b32_e64 v0, 0.15915494, v1        ; encoding: [0x00,0x00,0x13,0xd1,0xf8,0x02,0x02,0x00]1017// NOSICI: :[[@LINE-4]]:19: error: literal operands are not supported1018// NOSICIVI: :[[@LINE-2]]:19: error: literal operands are not supported1019 1020v_fract_f64 v[0:1], 0.1591549430918953178526464853351021// GFX11: v_fract_f64_e32 v[0:1], 0.15915494309189532 ; encoding: [0xf8,0x7c,0x00,0x7e]1022// GFX12XX: v_fract_f64_e32 v[0:1], 0.15915494309189532 ; encoding: [0xf8,0x7c,0x00,0x7e]1023// GFX89: v_fract_f64_e32 v[0:1], 0.15915494309189532 ; encoding: [0xf8,0x64,0x00,0x7e]1024// NOSICI: :[[@LINE-4]]:1: warning: Can't encode literal as exact 64-bit floating-point operand. Low 32-bits will be set to zero1025// SICI: v_fract_f64_e32 v[0:1], 0x3fc45f30      ; encoding: [0xff,0x7c,0x00,0x7e,0x30,0x5f,0xc4,0x3f]1026// NOSICIVI: :[[@LINE-3]]:1: warning: Can't encode literal as exact 64-bit floating-point operand. Low 32-bits will be set to zero1027 1028v_trunc_f32 v0, 0.1591549430918953178526464853351029// GFX11: v_trunc_f32_e32 v0, 0.15915494          ; encoding: [0xf8,0x42,0x00,0x7e]1030// GFX12XX: v_trunc_f32_e32 v0, 0.15915494          ; encoding: [0xf8,0x42,0x00,0x7e]1031// GFX89: v_trunc_f32_e32 v0, 0.15915494          ; encoding: [0xf8,0x38,0x00,0x7e]1032// SICI: v_trunc_f32_e32 v0, 0x3e22f983          ; encoding: [0xff,0x42,0x00,0x7e,0x83,0xf9,0x22,0x3e]1033 1034v_trunc_f32 v0, lit(0.159154943091895317852646485335)1035// GFX11: v_trunc_f32_e32 v0, lit(0x3e22f983)     ; encoding: [0xff,0x42,0x00,0x7e,0x83,0xf9,0x22,0x3e]1036// GFX12XX: v_trunc_f32_e32 v0, lit(0x3e22f983)     ; encoding: [0xff,0x42,0x00,0x7e,0x83,0xf9,0x22,0x3e]1037// GFX89: v_trunc_f32_e32 v0, lit(0x3e22f983)     ; encoding: [0xff,0x38,0x00,0x7e,0x83,0xf9,0x22,0x3e]1038// SICI: v_trunc_f32_e32 v0, lit(0x3e22f983)     ; encoding: [0xff,0x42,0x00,0x7e,0x83,0xf9,0x22,0x3e]1039 1040//---------------------------------------------------------------------------//1041// integer literal truncation checks1042//---------------------------------------------------------------------------//1043 1044s_mov_b32 s0, 0x101ffffffff1045// NOGCN: :[[@LINE-1]]:15: error: invalid operand for instruction1046 1047s_mov_b32 s0, 0x10000000011048// NOGCN: :[[@LINE-1]]:15: error: invalid operand for instruction1049 1050s_mov_b32 s0, 0x1000000fff1051// NOGCN: :[[@LINE-1]]:15: error: invalid operand for instruction1052 1053v_trunc_f32 v0, 0x1fffffffff01054// NOGCN: :[[@LINE-1]]:17: error: invalid operand for instruction1055 1056v_trunc_f32 v0, 0x1000000011057// NOGCN: :[[@LINE-1]]:17: error: invalid operand for instruction1058 1059v_trunc_f32 v0, 0x1fffffff0001060// NOGCN: :[[@LINE-1]]:17: error: invalid operand for instruction1061 1062s_mov_b64 s[0:1], 0x101ffffffff1063// GFX1250: s_mov_b64 s[0:1], 0x101ffffffff         ; encoding: [0xfe,0x01,0x80,0xbe,0xff,0xff,0xff,0xff,0x01,0x01,0x00,0x00]1064// NOGFX11: :[[@LINE-2]]:19: error: invalid operand for instruction1065// NOGFX12: :[[@LINE-3]]:19: error: invalid operand for instruction1066// NOGFX89: :[[@LINE-4]]:19: error: invalid operand for instruction1067// NOSICI: :[[@LINE-5]]:19: error: invalid operand for instruction1068// NOSICIVI: :[[@LINE-1]]:19: error: invalid operand for instruction1069 1070s_mov_b64 s[0:1], 0x10000000011071// GFX1250: s_mov_b64 s[0:1], 0x1000000001          ; encoding: [0xfe,0x01,0x80,0xbe,0x01,0x00,0x00,0x00,0x10,0x00,0x00,0x00]1072// NOGFX11: :[[@LINE-2]]:19: error: invalid operand for instruction1073// NOGFX12: :[[@LINE-3]]:19: error: invalid operand for instruction1074// NOGFX89: :[[@LINE-4]]:19: error: invalid operand for instruction1075// NOSICI: :[[@LINE-5]]:19: error: invalid operand for instruction1076// NOSICIVI: :[[@LINE-1]]:19: error: invalid operand for instruction1077 1078s_mov_b64 s[0:1], 0x1000000fff1079// GFX1250: s_mov_b64 s[0:1], 0x1000000fff          ; encoding: [0xfe,0x01,0x80,0xbe,0xff,0x0f,0x00,0x00,0x10,0x00,0x00,0x00]1080// NOGFX11: :[[@LINE-2]]:19: error: invalid operand for instruction1081// NOGFX12: :[[@LINE-3]]:19: error: invalid operand for instruction1082// NOGFX89: :[[@LINE-4]]:19: error: invalid operand for instruction1083// NOSICI: :[[@LINE-5]]:19: error: invalid operand for instruction1084// NOSICIVI: :[[@LINE-1]]:19: error: invalid operand for instruction1085 1086v_trunc_f64 v[0:1], 0x1fffffffff01087// GFX1250: v_trunc_f64_e32 v[0:1], 0x1fffffffff0   ; encoding: [0xfe,0x2e,0x00,0x7e,0xf0,0xff,0xff,0xff,0xff,0x01,0x00,0x00]1088// NOCI: :[[@LINE-2]]:21: error: invalid operand for instruction1089// NOGFX11: :[[@LINE-3]]:21: error: invalid operand for instruction1090// NOGFX12: :[[@LINE-4]]:21: error: invalid operand for instruction1091// NOGFX89: :[[@LINE-5]]:21: error: invalid operand for instruction1092// NOSI: :[[@LINE-6]]:1: error: instruction not supported on this GPU1093// NOCIVI: :[[@LINE-4]]:21: error: invalid operand for instruction1094 1095v_trunc_f64 v[0:1], 0x1000000011096// GFX1250: v_trunc_f64_e32 v[0:1], 0x100000001     ; encoding: [0xfe,0x2e,0x00,0x7e,0x01,0x00,0x00,0x00,0x01,0x00,0x00,0x00]1097// NOCI: :[[@LINE-2]]:21: error: invalid operand for instruction1098// NOGFX11: :[[@LINE-3]]:21: error: invalid operand for instruction1099// NOGFX12: :[[@LINE-4]]:21: error: invalid operand for instruction1100// NOGFX89: :[[@LINE-5]]:21: error: invalid operand for instruction1101// NOSI: :[[@LINE-6]]:1: error: instruction not supported on this GPU1102// NOCIVI: :[[@LINE-4]]:21: error: invalid operand for instruction1103 1104v_trunc_f64 v[0:1], 0x1fffffff0001105// GFX1250: v_trunc_f64_e32 v[0:1], 0x1fffffff000   ; encoding: [0xfe,0x2e,0x00,0x7e,0x00,0xf0,0xff,0xff,0xff,0x01,0x00,0x00]1106// NOCI: :[[@LINE-2]]:21: error: invalid operand for instruction1107// NOGFX11: :[[@LINE-3]]:21: error: invalid operand for instruction1108// NOGFX12: :[[@LINE-4]]:21: error: invalid operand for instruction1109// NOGFX89: :[[@LINE-5]]:21: error: invalid operand for instruction1110// NOSI: :[[@LINE-6]]:1: error: instruction not supported on this GPU1111// NOCIVI: :[[@LINE-4]]:21: error: invalid operand for instruction1112 1113//---------------------------------------------------------------------------//1114// named inline values: scc, vccz, execz1115//---------------------------------------------------------------------------//1116 1117buffer_atomic_add v0, off, s[0:3], scc offset:40951118// GFX11: buffer_atomic_add_u32 v0, off, s[0:3], src_scc offset:4095 ; encoding: [0xff,0x0f,0xd4,0xe0,0x00,0x00,0x00,0xfd]1119// GFX12: buffer_atomic_add_u32 v0, off, s[0:3], src_scc offset:4095 ; encoding: [0x7d,0x40,0x0d,0xc4,0x00,0x00,0x80,0x00,0x00,0xff,0x0f,0x00]1120// GFX1250-ASM: buffer_atomic_add_u32 v0, off, s[0:3], src_scc offset:4095 ; encoding: [0x7d,0x40,0x0d,0xc4,0x00,0x00,0x80,0x00,0x00,0xff,0x0f,0x00]1121// GFX1250-DIS: buffer_atomic_add_u32 v0, off, s[0:3], m0 offset:4095 ; encoding: [0x7d,0x40,0x0d,0xc4,0x00,0x00,0x80,0x00,0x00,0xff,0x0f,0x00]1122// GFX89: buffer_atomic_add v0, off, s[0:3], src_scc offset:4095 ; encoding: [0xff,0x0f,0x08,0xe1,0x00,0x00,0x00,0xfd]1123// SICI: buffer_atomic_add v0, off, s[0:3], src_scc offset:4095 ; encoding: [0xff,0x0f,0xc8,0xe0,0x00,0x00,0x00,0xfd]1124 1125s_add_i32 s0, vccz, s01126// GFX89: s_add_i32 s0, src_vccz, s0              ; encoding: [0xfb,0x00,0x00,0x81]1127// NOGFX11: :[[@LINE-2]]:15: error: src_vccz register not available on this GPU1128// NOGFX12: :[[@LINE-3]]:15: error: src_vccz register not available on this GPU1129// NOGFX1250: :[[@LINE-4]]:15: error: src_vccz register not available on this GPU1130// SICI: s_add_i32 s0, src_vccz, s0              ; encoding: [0xfb,0x00,0x00,0x81]1131 1132s_add_i32 s0, execz, s01133// GFX89: s_add_i32 s0, src_execz, s0             ; encoding: [0xfc,0x00,0x00,0x81]1134// NOGFX11: :[[@LINE-2]]:15: error: src_execz register not available on this GPU1135// NOGFX12: :[[@LINE-3]]:15: error: src_execz register not available on this GPU1136// NOGFX1250: :[[@LINE-4]]:15: error: src_execz register not available on this GPU1137// SICI: s_add_i32 s0, src_execz, s0             ; encoding: [0xfc,0x00,0x00,0x81]1138 1139s_add_i32 s0, scc, s01140// GFX11: s_add_i32 s0, src_scc, s0               ; encoding: [0xfd,0x00,0x00,0x81]1141// GFX12XX: s_add_co_i32 s0, src_scc, s0            ; encoding: [0xfd,0x00,0x00,0x81]1142// GFX89: s_add_i32 s0, src_scc, s0               ; encoding: [0xfd,0x00,0x00,0x81]1143// SICI: s_add_i32 s0, src_scc, s0               ; encoding: [0xfd,0x00,0x00,0x81]1144 1145s_and_b64 s[0:1], s[0:1], src_vccz1146// GFX89: s_and_b64 s[0:1], s[0:1], src_vccz      ; encoding: [0x00,0xfb,0x80,0x86]1147// NOGFX11: :[[@LINE-2]]:27: error: src_vccz register not available on this GPU1148// NOGFX12: :[[@LINE-3]]:27: error: src_vccz register not available on this GPU1149// NOGFX1250: :[[@LINE-4]]:27: error: src_vccz register not available on this GPU1150// SICI: s_and_b64 s[0:1], s[0:1], src_vccz      ; encoding: [0x00,0xfb,0x80,0x87]1151 1152s_and_b64 s[0:1], s[0:1], src_execz1153// GFX89: s_and_b64 s[0:1], s[0:1], src_execz     ; encoding: [0x00,0xfc,0x80,0x86]1154// NOGFX11: :[[@LINE-2]]:27: error: src_execz register not available on this GPU1155// NOGFX12: :[[@LINE-3]]:27: error: src_execz register not available on this GPU1156// NOGFX1250: :[[@LINE-4]]:27: error: src_execz register not available on this GPU1157// SICI: s_and_b64 s[0:1], s[0:1], src_execz     ; encoding: [0x00,0xfc,0x80,0x87]1158 1159s_and_b64 s[0:1], s[0:1], src_scc1160// GFX11: s_and_b64 s[0:1], s[0:1], src_scc       ; encoding: [0x00,0xfd,0x80,0x8b]1161// GFX12XX: s_and_b64 s[0:1], s[0:1], src_scc       ; encoding: [0x00,0xfd,0x80,0x8b]1162// GFX89: s_and_b64 s[0:1], s[0:1], src_scc       ; encoding: [0x00,0xfd,0x80,0x86]1163// SICI: s_and_b64 s[0:1], s[0:1], src_scc       ; encoding: [0x00,0xfd,0x80,0x87]1164 1165v_add_u16 v0, vccz, v01166// GFX89: v_add_u16_e32 v0, src_vccz, v0          ; encoding: [0xfb,0x00,0x00,0x4c]1167// NOGFX11: :[[@LINE-2]]:1: error: instruction not supported on this GPU1168// NOGFX12: :[[@LINE-3]]:1: error: instruction not supported on this GPU1169// NOGFX1250: :[[@LINE-4]]:1: error: instruction not supported on this GPU1170// NOSICI: :[[@LINE-5]]:1: error: instruction not supported on this GPU1171// NOSICIVI: :[[@LINE-2]]:1: error: instruction not supported on this GPU1172 1173v_add_u16_sdwa v0, scc, v0 dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:DWORD src1_sel:DWORD1174// GFX9: v_add_u16_sdwa v0, src_scc, v0 dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:DWORD src1_sel:DWORD ; encoding: [0xf9,0x00,0x00,0x4c,0xfd,0x06,0x86,0x06]1175// NOGFX11: :[[@LINE-2]]:1: error: instruction not supported on this GPU1176// NOGFX12: :[[@LINE-3]]:1: error: instruction not supported on this GPU1177// NOGFX1250: :[[@LINE-4]]:1: error: instruction not supported on this GPU1178// NOSICI: :[[@LINE-5]]:1: error: instruction not supported on this GPU1179// NOVI: :[[@LINE-6]]:20: error: invalid operand for instruction1180// NOSICIVI: :[[@LINE-1]]:1: error: instruction not supported on this GPU1181 1182v_add_u16_sdwa v0, v0, scc dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:DWORD src1_sel:DWORD1183// GFX9: v_add_u16_sdwa v0, v0, src_scc dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:DWORD src1_sel:DWORD ; encoding: [0xf9,0xfa,0x01,0x4c,0x00,0x06,0x06,0x86]1184// NOGFX11: :[[@LINE-2]]:1: error: instruction not supported on this GPU1185// NOGFX12: :[[@LINE-3]]:1: error: instruction not supported on this GPU1186// NOGFX1250: :[[@LINE-4]]:1: error: instruction not supported on this GPU1187// NOSICI: :[[@LINE-5]]:1: error: instruction not supported on this GPU1188// NOVI: :[[@LINE-6]]:24: error: invalid operand for instruction1189// NOSICIVI: :[[@LINE-1]]:1: error: instruction not supported on this GPU1190 1191v_add_u32 v0, execz, v01192// GFX9: v_add_u32_e32 v0, src_execz, v0         ; encoding: [0xfc,0x00,0x00,0x68]1193// NOGFX11: :[[@LINE-2]]:15: error: src_execz register not available on this GPU1194// NOGFX12: :[[@LINE-3]]:15: error: src_execz register not available on this GPU1195// NOGFX1250: :[[@LINE-4]]:15: error: src_execz register not available on this GPU1196// NOSICI: :[[@LINE-5]]:1: error: instruction not supported on this GPU1197// NOVI: :[[@LINE-6]]:1: error: operands are not valid for this GPU or mode1198// NOSICIVI: :[[@LINE-1]]:1: error: instruction not supported on this GPU1199 1200v_add_u32_e64 v0, scc, v01201// GFX11: v_add_nc_u32_e64 v0, src_scc, v0        ; encoding: [0x00,0x00,0x25,0xd5,0xfd,0x00,0x02,0x00]1202// GFX12XX: v_add_nc_u32_e64 v0, src_scc, v0        ; encoding: [0x00,0x00,0x25,0xd5,0xfd,0x00,0x02,0x00]1203// GFX9: v_add_u32_e64 v0, src_scc, v0           ; encoding: [0x00,0x00,0x34,0xd1,0xfd,0x00,0x02,0x00]1204// NOSICI: :[[@LINE-4]]:1: error: instruction not supported on this GPU1205// NOVI: :[[@LINE-5]]:1: error: operands are not valid for this GPU or mode1206// NOSICIVI: :[[@LINE-1]]:1: error: instruction not supported on this GPU1207 1208v_cmp_eq_i64 vcc, scc, v[0:1]1209// GFX89: v_cmp_eq_i64_e32 vcc, src_scc, v[0:1]   ; encoding: [0xfd,0x00,0xc4,0x7d]1210// NOGFX11: :[[@LINE-2]]:1: error: operands are not valid for this GPU or mode1211// NOGFX12: :[[@LINE-3]]:1: error: operands are not valid for this GPU or mode1212// NOGFX1250: :[[@LINE-4]]:1: error: operands are not valid for this GPU or mode1213// SICI: v_cmp_eq_i64_e32 vcc, src_scc, v[0:1]   ; encoding: [0xfd,0x00,0x44,0x7d]1214 1215v_max_f16 v0, execz, v01216// GFX89: v_max_f16_e32 v0, src_execz, v0         ; encoding: [0xfc,0x00,0x00,0x5a]1217// NOGFX11: :[[@LINE-2]]:15: error: src_execz register not available on this GPU1218// NOGFX12: :[[@LINE-3]]:15: error: src_execz register not available on this GPU1219// NOGFX1250: :[[@LINE-4]]:15: error: src_execz register not available on this GPU1220// NOSICI: :[[@LINE-5]]:1: error: instruction not supported on this GPU1221// NOSICIVI: :[[@LINE-2]]:1: error: instruction not supported on this GPU1222 1223v_max_f32 v0, vccz, v01224// GFX89: v_max_f32_e32 v0, src_vccz, v0          ; encoding: [0xfb,0x00,0x00,0x16]1225// NOGFX11: :[[@LINE-2]]:15: error: src_vccz register not available on this GPU1226// NOGFX12: :[[@LINE-3]]:15: error: src_vccz register not available on this GPU1227// NOGFX1250: :[[@LINE-4]]:15: error: src_vccz register not available on this GPU1228// SICI: v_max_f32_e32 v0, src_vccz, v0          ; encoding: [0xfb,0x00,0x00,0x20]1229 1230v_max_f64 v[0:1], scc, v[0:1]1231// GFX11: v_max_f64 v[0:1], src_scc, v[0:1]       ; encoding: [0x00,0x00,0x2a,0xd7,0xfd,0x00,0x02,0x00]1232// GFX12XX: v_max_num_f64_e32 v[0:1], src_scc, v[0:1] ; encoding: [0xfd,0x00,0x00,0x1c]1233// GFX89: v_max_f64 v[0:1], src_scc, v[0:1]       ; encoding: [0x00,0x00,0x83,0xd2,0xfd,0x00,0x02,0x00]1234// SICI: v_max_f64 v[0:1], src_scc, v[0:1]       ; encoding: [0x00,0x00,0xce,0xd2,0xfd,0x00,0x02,0x00]1235 1236v_pk_add_f16 v0, execz, v01237// GFX9: v_pk_add_f16 v0, src_execz, v0          ; encoding: [0x00,0x40,0x8f,0xd3,0xfc,0x00,0x02,0x18]1238// NOGFX11: :[[@LINE-2]]:18: error: src_execz register not available on this GPU1239// NOGFX12: :[[@LINE-3]]:18: error: src_execz register not available on this GPU1240// NOGFX1250: :[[@LINE-4]]:18: error: src_execz register not available on this GPU1241// NOSICI: :[[@LINE-5]]:1: error: instruction not supported on this GPU1242// NOVI: :[[@LINE-6]]:1: error: instruction not supported on this GPU1243// NOSICIVI: :[[@LINE-1]]:1: error: instruction not supported on this GPU1244 1245v_ceil_f16 v0, neg(vccz)1246// GFX89: v_ceil_f16_e64 v0, -src_vccz            ; encoding: [0x00,0x00,0x85,0xd1,0xfb,0x00,0x00,0x20]1247// NOGFX11: :[[@LINE-2]]:20: error: src_vccz register not available on this GPU1248// NOGFX12: :[[@LINE-3]]:20: error: src_vccz register not available on this GPU1249// NOGFX1250: :[[@LINE-4]]:20: error: src_vccz register not available on this GPU1250// NOSICI: :[[@LINE-5]]:1: error: instruction not supported on this GPU1251// NOSICIVI: :[[@LINE-2]]:1: error: instruction not supported on this GPU1252 1253v_ceil_f16 v0, abs(scc)1254// GFX11: v_ceil_f16_e64 v0, |src_scc|            ; encoding: [0x00,0x01,0xdc,0xd5,0xfd,0x00,0x00,0x00]1255// GFX12: v_ceil_f16_e64 v0, |src_scc|            ; encoding: [0x00,0x01,0xdc,0xd5,0xfd,0x00,0x00,0x00]1256// GFX1250-ASM: v_ceil_f16_e64 v0, |src_scc|            ; encoding: [0x00,0x01,0xdc,0xd5,0xfd,0x00,0x00,0x00]1257// GFX1250-DIS: v_ceil_f16_e64 v0.l, |src_scc|          ; encoding: [0x00,0x01,0xdc,0xd5,0xfd,0x00,0x00,0x00]1258// GFX89: v_ceil_f16_e64 v0, |src_scc|            ; encoding: [0x00,0x01,0x85,0xd1,0xfd,0x00,0x00,0x00]1259// NOSICI: :[[@LINE-6]]:1: error: instruction not supported on this GPU1260// NOSICIVI: :[[@LINE-2]]:1: error: instruction not supported on this GPU1261 1262v_ceil_f64 v[5:6], |execz|1263// CI: v_ceil_f64_e64 v[5:6], |src_execz|      ; encoding: [0x05,0x01,0x30,0xd3,0xfc,0x00,0x00,0x00]1264// GFX89: v_ceil_f64_e64 v[5:6], |src_execz|      ; encoding: [0x05,0x01,0x58,0xd1,0xfc,0x00,0x00,0x00]1265// NOGFX11: :[[@LINE-3]]:21: error: src_execz register not available on this GPU1266// NOGFX12: :[[@LINE-4]]:21: error: src_execz register not available on this GPU1267// NOGFX1250: :[[@LINE-5]]:21: error: src_execz register not available on this GPU1268// NOSI: :[[@LINE-6]]:1: error: instruction not supported on this GPU1269 1270v_ceil_f64 v[5:6], -vcc1271// CI: v_ceil_f64_e64 v[5:6], -vcc             ; encoding: [0x05,0x00,0x30,0xd3,0x6a,0x00,0x00,0x20]1272// GFX11: v_ceil_f64_e64 v[5:6], -vcc             ; encoding: [0x05,0x00,0x98,0xd5,0x6a,0x00,0x00,0x20]1273// GFX12: v_ceil_f64_e64 v[5:6], -vcc             ; encoding: [0x05,0x00,0x98,0xd5,0x6a,0x00,0x00,0x20]1274// GFX89: v_ceil_f64_e64 v[5:6], -vcc             ; encoding: [0x05,0x00,0x58,0xd1,0x6a,0x00,0x00,0x20]1275// NOGFX1250: :[[@LINE-5]]:12: error: invalid operand for instruction1276// NOSI: :[[@LINE-6]]:1: error: instruction not supported on this GPU1277 1278v_ceil_f32 v0, -vccz1279// GFX89: v_ceil_f32_e64 v0, -src_vccz            ; encoding: [0x00,0x00,0x5d,0xd1,0xfb,0x00,0x00,0x20]1280// NOGFX11: :[[@LINE-2]]:17: error: src_vccz register not available on this GPU1281// NOGFX12: :[[@LINE-3]]:17: error: src_vccz register not available on this GPU1282// NOGFX1250: :[[@LINE-4]]:17: error: src_vccz register not available on this GPU1283// SICI: v_ceil_f32_e64 v0, -src_vccz            ; encoding: [0x00,0x00,0x44,0xd3,0xfb,0x00,0x00,0x20]1284 1285v_ceil_f32 v0, |execz|1286// GFX89: v_ceil_f32_e64 v0, |src_execz|          ; encoding: [0x00,0x01,0x5d,0xd1,0xfc,0x00,0x00,0x00]1287// NOGFX11: :[[@LINE-2]]:17: error: src_execz register not available on this GPU1288// NOGFX12: :[[@LINE-3]]:17: error: src_execz register not available on this GPU1289// NOGFX1250: :[[@LINE-4]]:17: error: src_execz register not available on this GPU1290// SICI: v_ceil_f32_e64 v0, |src_execz|          ; encoding: [0x00,0x01,0x44,0xd3,0xfc,0x00,0x00,0x00]1291 1292v_ceil_f16_sdwa v5, |vccz| dst_sel:DWORD dst_unused:UNUSED_PRESERVE1293// GFX9: v_ceil_f16_sdwa v5, |src_vccz| dst_sel:DWORD dst_unused:UNUSED_PRESERVE src0_sel:DWORD ; encoding: [0xf9,0x8a,0x0a,0x7e,0xfb,0x16,0xa6,0x00]1294// NOGFX11: :[[@LINE-2]]:1: error: sdwa variant of this instruction is not supported1295// NOGFX12: :[[@LINE-3]]:1: error: sdwa variant of this instruction is not supported1296// NOGFX1250: :[[@LINE-4]]:1: error: sdwa variant of this instruction is not supported1297// NOSICI: :[[@LINE-5]]:1: error: instruction not supported on this GPU1298// NOVI: :[[@LINE-6]]:22: error: invalid operand for instruction1299// NOSICIVI: :[[@LINE-1]]:1: error: instruction not supported on this GPU1300 1301v_ceil_f16_sdwa v5, -scc dst_sel:DWORD dst_unused:UNUSED_PRESERVE1302// GFX9: v_ceil_f16_sdwa v5, -src_scc dst_sel:DWORD dst_unused:UNUSED_PRESERVE src0_sel:DWORD ; encoding: [0xf9,0x8a,0x0a,0x7e,0xfd,0x16,0x96,0x00]1303// NOGFX11: :[[@LINE-2]]:1: error: sdwa variant of this instruction is not supported1304// NOGFX12: :[[@LINE-3]]:1: error: sdwa variant of this instruction is not supported1305// NOGFX1250: :[[@LINE-4]]:1: error: sdwa variant of this instruction is not supported1306// NOSICI: :[[@LINE-5]]:1: error: instruction not supported on this GPU1307// NOVI: :[[@LINE-6]]:22: error: invalid operand for instruction1308// NOSICIVI: :[[@LINE-1]]:1: error: instruction not supported on this GPU1309 1310v_ceil_f32_sdwa v5, vccz dst_sel:DWORD src0_sel:DWORD1311// GFX9: v_ceil_f32_sdwa v5, src_vccz dst_sel:DWORD dst_unused:UNUSED_PRESERVE src0_sel:DWORD ; encoding: [0xf9,0x3a,0x0a,0x7e,0xfb,0x16,0x86,0x00]1312// NOGFX11: :[[@LINE-2]]:1: error: sdwa variant of this instruction is not supported1313// NOGFX12: :[[@LINE-3]]:1: error: sdwa variant of this instruction is not supported1314// NOGFX1250: :[[@LINE-4]]:1: error: sdwa variant of this instruction is not supported1315// NOSICI: :[[@LINE-5]]:1: error: sdwa variant of this instruction is not supported1316// NOVI: :[[@LINE-6]]:21: error: invalid operand for instruction1317// NOSICIVI: :[[@LINE-1]]:1: error: sdwa variant of this instruction is not supported1318 1319v_ceil_f32_sdwa v5, |execz| dst_sel:DWORD src0_sel:DWORD1320// GFX9: v_ceil_f32_sdwa v5, |src_execz| dst_sel:DWORD dst_unused:UNUSED_PRESERVE src0_sel:DWORD ; encoding: [0xf9,0x3a,0x0a,0x7e,0xfc,0x16,0xa6,0x00]1321// NOGFX11: :[[@LINE-2]]:1: error: sdwa variant of this instruction is not supported1322// NOGFX12: :[[@LINE-3]]:1: error: sdwa variant of this instruction is not supported1323// NOGFX1250: :[[@LINE-4]]:1: error: sdwa variant of this instruction is not supported1324// NOSICI: :[[@LINE-5]]:1: error: sdwa variant of this instruction is not supported1325// NOVI: :[[@LINE-6]]:22: error: invalid operand for instruction1326// NOSICIVI: :[[@LINE-1]]:1: error: sdwa variant of this instruction is not supported1327 1328//---------------------------------------------------------------------------//1329// named inline values: shared_base, shared_limit, private_base, etc1330//---------------------------------------------------------------------------//1331 1332buffer_atomic_add v0, off, s[0:3], src_shared_base offset:40951333// GFX11: buffer_atomic_add_u32 v0, off, s[0:3], src_shared_base offset:4095 ; encoding: [0xff,0x0f,0xd4,0xe0,0x00,0x00,0x00,0xeb]1334// GFX9: buffer_atomic_add v0, off, s[0:3], src_shared_base offset:4095 ; encoding: [0xff,0x0f,0x08,0xe1,0x00,0x00,0x00,0xeb]1335// NOGFX12: :[[@LINE-3]]:1: error: operands are not valid for this GPU or mode1336// NOGFX1250: :[[@LINE-4]]:1: error: operands are not valid for this GPU or mode1337// NOSICI: :[[@LINE-5]]:36: error: src_shared_base register not available on this GPU1338// NOVI: :[[@LINE-6]]:36: error: src_shared_base register not available on this GPU1339// NOSICIVI: :[[@LINE-1]]:36: error: src_shared_base register not available on this GPU1340 1341s_add_i32 s0, src_shared_base, s01342// GFX11: s_add_i32 s0, src_shared_base, s0       ; encoding: [0xeb,0x00,0x00,0x81]1343// GFX12XX: s_add_co_i32 s0, src_shared_base, s0    ; encoding: [0xeb,0x00,0x00,0x81]1344// GFX9: s_add_i32 s0, src_shared_base, s0       ; encoding: [0xeb,0x00,0x00,0x81]1345// NOSICI: :[[@LINE-4]]:15: error: src_shared_base register not available on this GPU1346// NOVI: :[[@LINE-5]]:15: error: src_shared_base register not available on this GPU1347// NOSICIVI: :[[@LINE-1]]:15: error: src_shared_base register not available on this GPU1348 1349s_add_i32 s0, src_shared_limit, s01350// GFX11: s_add_i32 s0, src_shared_limit, s0      ; encoding: [0xec,0x00,0x00,0x81]1351// GFX12XX: s_add_co_i32 s0, src_shared_limit, s0   ; encoding: [0xec,0x00,0x00,0x81]1352// GFX9: s_add_i32 s0, src_shared_limit, s0      ; encoding: [0xec,0x00,0x00,0x81]1353// NOSICI: :[[@LINE-4]]:15: error: src_shared_limit register not available on this GPU1354// NOVI: :[[@LINE-5]]:15: error: src_shared_limit register not available on this GPU1355// NOSICIVI: :[[@LINE-1]]:15: error: src_shared_limit register not available on this GPU1356 1357s_add_i32 s0, src_private_base, s01358// GFX11: s_add_i32 s0, src_private_base, s0      ; encoding: [0xed,0x00,0x00,0x81]1359// GFX12XX: s_add_co_i32 s0, src_private_base, s0   ; encoding: [0xed,0x00,0x00,0x81]1360// GFX9: s_add_i32 s0, src_private_base, s0      ; encoding: [0xed,0x00,0x00,0x81]1361// NOSICI: :[[@LINE-4]]:15: error: src_private_base register not available on this GPU1362// NOVI: :[[@LINE-5]]:15: error: src_private_base register not available on this GPU1363// NOSICIVI: :[[@LINE-1]]:15: error: src_private_base register not available on this GPU1364 1365s_add_i32 s0, src_private_limit, s01366// GFX11: s_add_i32 s0, src_private_limit, s0     ; encoding: [0xee,0x00,0x00,0x81]1367// GFX12XX: s_add_co_i32 s0, src_private_limit, s0  ; encoding: [0xee,0x00,0x00,0x81]1368// GFX9: s_add_i32 s0, src_private_limit, s0     ; encoding: [0xee,0x00,0x00,0x81]1369// NOSICI: :[[@LINE-4]]:15: error: src_private_limit register not available on this GPU1370// NOVI: :[[@LINE-5]]:15: error: src_private_limit register not available on this GPU1371// NOSICIVI: :[[@LINE-1]]:15: error: src_private_limit register not available on this GPU1372 1373s_add_i32 s0, src_pops_exiting_wave_id, s01374// GFX9: s_add_i32 s0, src_pops_exiting_wave_id, s0 ; encoding: [0xef,0x00,0x00,0x81]1375// NOGFX11: :[[@LINE-2]]:15: error: src_pops_exiting_wave_id register not available on this GPU1376// NOGFX12: :[[@LINE-3]]:15: error: src_pops_exiting_wave_id register not available on this GPU1377// NOGFX1250: :[[@LINE-4]]:15: error: src_pops_exiting_wave_id register not available on this GPU1378// NOSICI: :[[@LINE-5]]:15: error: src_pops_exiting_wave_id register not available on this GPU1379// NOVI: :[[@LINE-6]]:15: error: src_pops_exiting_wave_id register not available on this GPU1380// NOSICIVI: :[[@LINE-1]]:15: error: src_pops_exiting_wave_id register not available on this GPU1381 1382s_and_b64 s[0:1], s[0:1], src_shared_base1383// GFX11: s_and_b64 s[0:1], s[0:1], src_shared_base ; encoding: [0x00,0xeb,0x80,0x8b]1384// GFX12XX: s_and_b64 s[0:1], s[0:1], src_shared_base ; encoding: [0x00,0xeb,0x80,0x8b]1385// GFX9: s_and_b64 s[0:1], s[0:1], src_shared_base ; encoding: [0x00,0xeb,0x80,0x86]1386// NOSICI: :[[@LINE-4]]:27: error: src_shared_base register not available on this GPU1387// NOVI: :[[@LINE-5]]:27: error: src_shared_base register not available on this GPU1388// NOSICIVI: :[[@LINE-1]]:27: error: src_shared_base register not available on this GPU1389 1390s_and_b64 s[0:1], s[0:1], src_shared_limit1391// GFX11: s_and_b64 s[0:1], s[0:1], src_shared_limit ; encoding: [0x00,0xec,0x80,0x8b]1392// GFX12XX: s_and_b64 s[0:1], s[0:1], src_shared_limit ; encoding: [0x00,0xec,0x80,0x8b]1393// GFX9: s_and_b64 s[0:1], s[0:1], src_shared_limit ; encoding: [0x00,0xec,0x80,0x86]1394// NOSICI: :[[@LINE-4]]:27: error: src_shared_limit register not available on this GPU1395// NOVI: :[[@LINE-5]]:27: error: src_shared_limit register not available on this GPU1396// NOSICIVI: :[[@LINE-1]]:27: error: src_shared_limit register not available on this GPU1397 1398s_and_b64 s[0:1], s[0:1], src_private_base1399// GFX11: s_and_b64 s[0:1], s[0:1], src_private_base ; encoding: [0x00,0xed,0x80,0x8b]1400// GFX12XX: s_and_b64 s[0:1], s[0:1], src_private_base ; encoding: [0x00,0xed,0x80,0x8b]1401// GFX9: s_and_b64 s[0:1], s[0:1], src_private_base ; encoding: [0x00,0xed,0x80,0x86]1402// NOSICI: :[[@LINE-4]]:27: error: src_private_base register not available on this GPU1403// NOVI: :[[@LINE-5]]:27: error: src_private_base register not available on this GPU1404// NOSICIVI: :[[@LINE-1]]:27: error: src_private_base register not available on this GPU1405 1406s_and_b64 s[0:1], s[0:1], src_private_limit1407// GFX11: s_and_b64 s[0:1], s[0:1], src_private_limit ; encoding: [0x00,0xee,0x80,0x8b]1408// GFX12XX: s_and_b64 s[0:1], s[0:1], src_private_limit ; encoding: [0x00,0xee,0x80,0x8b]1409// GFX9: s_and_b64 s[0:1], s[0:1], src_private_limit ; encoding: [0x00,0xee,0x80,0x86]1410// NOSICI: :[[@LINE-4]]:27: error: src_private_limit register not available on this GPU1411// NOVI: :[[@LINE-5]]:27: error: src_private_limit register not available on this GPU1412// NOSICIVI: :[[@LINE-1]]:27: error: src_private_limit register not available on this GPU1413 1414s_and_b64 s[0:1], s[0:1], src_pops_exiting_wave_id1415// GFX9: s_and_b64 s[0:1], s[0:1], src_pops_exiting_wave_id ; encoding: [0x00,0xef,0x80,0x86]1416// NOGFX11: :[[@LINE-2]]:27: error: src_pops_exiting_wave_id register not available on this GPU1417// NOGFX12: :[[@LINE-3]]:27: error: src_pops_exiting_wave_id register not available on this GPU1418// NOGFX1250: :[[@LINE-4]]:27: error: src_pops_exiting_wave_id register not available on this GPU1419// NOSICI: :[[@LINE-5]]:27: error: src_pops_exiting_wave_id register not available on this GPU1420// NOVI: :[[@LINE-6]]:27: error: src_pops_exiting_wave_id register not available on this GPU1421// NOSICIVI: :[[@LINE-1]]:27: error: src_pops_exiting_wave_id register not available on this GPU1422 1423v_add_u16 v0, src_shared_base, v01424// GFX9: v_add_u16_e32 v0, src_shared_base, v0   ; encoding: [0xeb,0x00,0x00,0x4c]1425// NOGFX11: :[[@LINE-2]]:1: error: instruction not supported on this GPU1426// NOGFX12: :[[@LINE-3]]:1: error: instruction not supported on this GPU1427// NOGFX1250: :[[@LINE-4]]:1: error: instruction not supported on this GPU1428// NOSICI: :[[@LINE-5]]:1: error: instruction not supported on this GPU1429// NOVI: :[[@LINE-6]]:15: error: src_shared_base register not available on this GPU1430// NOSICIVI: :[[@LINE-1]]:1: error: instruction not supported on this GPU1431 1432v_add_u16_sdwa v0, src_shared_base, v0 dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:DWORD src1_sel:DWORD1433// GFX9: v_add_u16_sdwa v0, src_shared_base, v0 dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:DWORD src1_sel:DWORD ; encoding: [0xf9,0x00,0x00,0x4c,0xeb,0x06,0x86,0x06]1434// NOGFX11: :[[@LINE-2]]:1: error: instruction not supported on this GPU1435// NOGFX12: :[[@LINE-3]]:1: error: instruction not supported on this GPU1436// NOGFX1250: :[[@LINE-4]]:1: error: instruction not supported on this GPU1437// NOSICI: :[[@LINE-5]]:1: error: instruction not supported on this GPU1438// NOVI: :[[@LINE-6]]:20: error: src_shared_base register not available on this GPU1439// NOSICIVI: :[[@LINE-1]]:1: error: instruction not supported on this GPU1440 1441v_add_u16_sdwa v0, v0, src_shared_base dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:DWORD src1_sel:DWORD1442// GFX9: v_add_u16_sdwa v0, v0, src_shared_base dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:DWORD src1_sel:DWORD ; encoding: [0xf9,0xd6,0x01,0x4c,0x00,0x06,0x06,0x86]1443// NOGFX11: :[[@LINE-2]]:1: error: instruction not supported on this GPU1444// NOGFX12: :[[@LINE-3]]:1: error: instruction not supported on this GPU1445// NOGFX1250: :[[@LINE-4]]:1: error: instruction not supported on this GPU1446// NOSICI: :[[@LINE-5]]:1: error: instruction not supported on this GPU1447// NOVI: :[[@LINE-6]]:24: error: src_shared_base register not available on this GPU1448// NOSICIVI: :[[@LINE-1]]:1: error: instruction not supported on this GPU1449 1450v_add_u32 v0, src_shared_base, v01451// GFX11: v_add_nc_u32_e32 v0, src_shared_base, v0 ; encoding: [0xeb,0x00,0x00,0x4a]1452// GFX12XX: v_add_nc_u32_e32 v0, src_shared_base, v0 ; encoding: [0xeb,0x00,0x00,0x4a]1453// GFX9: v_add_u32_e32 v0, src_shared_base, v0   ; encoding: [0xeb,0x00,0x00,0x68]1454// NOSICI: :[[@LINE-4]]:1: error: instruction not supported on this GPU1455// NOVI: :[[@LINE-5]]:15: error: src_shared_base register not available on this GPU1456// NOSICIVI: :[[@LINE-1]]:1: error: instruction not supported on this GPU1457 1458v_add_u32_e64 v0, src_shared_base, v01459// GFX11: v_add_nc_u32_e64 v0, src_shared_base, v0 ; encoding: [0x00,0x00,0x25,0xd5,0xeb,0x00,0x02,0x00]1460// GFX12XX: v_add_nc_u32_e64 v0, src_shared_base, v0 ; encoding: [0x00,0x00,0x25,0xd5,0xeb,0x00,0x02,0x00]1461// GFX9: v_add_u32_e64 v0, src_shared_base, v0   ; encoding: [0x00,0x00,0x34,0xd1,0xeb,0x00,0x02,0x00]1462// NOSICI: :[[@LINE-4]]:1: error: instruction not supported on this GPU1463// NOVI: :[[@LINE-5]]:19: error: src_shared_base register not available on this GPU1464// NOSICIVI: :[[@LINE-1]]:1: error: instruction not supported on this GPU1465 1466v_cmp_eq_i64 vcc, src_shared_base, v[0:1]1467// GFX9: v_cmp_eq_i64_e32 vcc, src_shared_base, v[0:1] ; encoding: [0xeb,0x00,0xc4,0x7d]1468// NOGFX11: :[[@LINE-2]]:1: error: operands are not valid for this GPU or mode1469// NOGFX12: :[[@LINE-3]]:1: error: operands are not valid for this GPU or mode1470// NOGFX1250: :[[@LINE-4]]:1: error: operands are not valid for this GPU or mode1471// NOSICI: :[[@LINE-5]]:19: error: src_shared_base register not available on this GPU1472// NOVI: :[[@LINE-6]]:19: error: src_shared_base register not available on this GPU1473// NOSICIVI: :[[@LINE-1]]:19: error: src_shared_base register not available on this GPU1474 1475v_max_f16 v0, src_shared_base, v01476// GFX11: v_max_f16_e32 v0, src_shared_base, v0   ; encoding: [0xeb,0x00,0x00,0x72]1477// GFX12: v_max_num_f16_e32 v0, src_shared_base, v0 ; encoding: [0xeb,0x00,0x00,0x62]1478// GFX1250-ASM: v_max_num_f16_e32 v0, src_shared_base, v0 ; encoding: [0xeb,0x00,0x00,0x62]1479// GFX1250-DIS: v_max_num_f16_e32 v0.l, src_shared_base, v0.l ; encoding: [0xeb,0x00,0x00,0x62]1480// GFX9: v_max_f16_e32 v0, src_shared_base, v0   ; encoding: [0xeb,0x00,0x00,0x5a]1481// NOSICI: :[[@LINE-6]]:1: error: instruction not supported on this GPU1482// NOVI: :[[@LINE-7]]:15: error: src_shared_base register not available on this GPU1483// NOSICIVI: :[[@LINE-1]]:1: error: instruction not supported on this GPU1484 1485v_max_f32 v0, src_shared_base, v01486// GFX11: v_max_f32_e32 v0, src_shared_base, v0   ; encoding: [0xeb,0x00,0x00,0x20]1487// GFX12XX: v_max_num_f32_e32 v0, src_shared_base, v0 ; encoding: [0xeb,0x00,0x00,0x2c]1488// GFX9: v_max_f32_e32 v0, src_shared_base, v0   ; encoding: [0xeb,0x00,0x00,0x16]1489// NOSICI: :[[@LINE-4]]:15: error: src_shared_base register not available on this GPU1490// NOVI: :[[@LINE-5]]:15: error: src_shared_base register not available on this GPU1491// NOSICIVI: :[[@LINE-1]]:15: error: src_shared_base register not available on this GPU1492 1493v_max_f64 v[0:1], src_shared_base, v[0:1]1494// GFX11: v_max_f64 v[0:1], src_shared_base, v[0:1] ; encoding: [0x00,0x00,0x2a,0xd7,0xeb,0x00,0x02,0x00]1495// GFX12XX: v_max_num_f64_e32 v[0:1], src_shared_base, v[0:1] ; encoding: [0xeb,0x00,0x00,0x1c]1496// GFX9: v_max_f64 v[0:1], src_shared_base, v[0:1] ; encoding: [0x00,0x00,0x83,0xd2,0xeb,0x00,0x02,0x00]1497// NOSICI: :[[@LINE-4]]:19: error: src_shared_base register not available on this GPU1498// NOVI: :[[@LINE-5]]:19: error: src_shared_base register not available on this GPU1499// NOSICIVI: :[[@LINE-1]]:19: error: src_shared_base register not available on this GPU1500 1501v_pk_add_f16 v0, src_shared_base, v01502// GFX11: v_pk_add_f16 v0, src_shared_base, v0    ; encoding: [0x00,0x40,0x0f,0xcc,0xeb,0x00,0x02,0x18]1503// GFX12XX: v_pk_add_f16 v0, src_shared_base, v0    ; encoding: [0x00,0x40,0x0f,0xcc,0xeb,0x00,0x02,0x18]1504// GFX9: v_pk_add_f16 v0, src_shared_base, v0    ; encoding: [0x00,0x40,0x8f,0xd3,0xeb,0x00,0x02,0x18]1505// NOSICI: :[[@LINE-4]]:1: error: instruction not supported on this GPU1506// NOVI: :[[@LINE-5]]:1: error: instruction not supported on this GPU1507// NOSICIVI: :[[@LINE-1]]:1: error: instruction not supported on this GPU1508 1509v_ceil_f16 v0, neg(src_shared_base)1510// GFX11: v_ceil_f16_e64 v0, -src_shared_base     ; encoding: [0x00,0x00,0xdc,0xd5,0xeb,0x00,0x00,0x20]1511// GFX12: v_ceil_f16_e64 v0, -src_shared_base     ; encoding: [0x00,0x00,0xdc,0xd5,0xeb,0x00,0x00,0x20]1512// GFX1250-ASM: v_ceil_f16_e64 v0, -src_shared_base     ; encoding: [0x00,0x00,0xdc,0xd5,0xeb,0x00,0x00,0x20]1513// GFX1250-DIS: v_ceil_f16_e64 v0.l, -src_shared_base   ; encoding: [0x00,0x00,0xdc,0xd5,0xeb,0x00,0x00,0x20]1514// GFX9: v_ceil_f16_e64 v0, -src_shared_base     ; encoding: [0x00,0x00,0x85,0xd1,0xeb,0x00,0x00,0x20]1515// NOSICI: :[[@LINE-6]]:1: error: instruction not supported on this GPU1516// NOVI: :[[@LINE-7]]:20: error: src_shared_base register not available on this GPU1517// NOSICIVI: :[[@LINE-1]]:1: error: instruction not supported on this GPU1518 1519v_ceil_f16 v0, abs(src_shared_base)1520// GFX11: v_ceil_f16_e64 v0, |src_shared_base|    ; encoding: [0x00,0x01,0xdc,0xd5,0xeb,0x00,0x00,0x00]1521// GFX12: v_ceil_f16_e64 v0, |src_shared_base|    ; encoding: [0x00,0x01,0xdc,0xd5,0xeb,0x00,0x00,0x00]1522// GFX1250-ASM: v_ceil_f16_e64 v0, |src_shared_base|    ; encoding: [0x00,0x01,0xdc,0xd5,0xeb,0x00,0x00,0x00]1523// GFX1250-DIS: v_ceil_f16_e64 v0.l, |src_shared_base|  ; encoding: [0x00,0x01,0xdc,0xd5,0xeb,0x00,0x00,0x00]1524// GFX9: v_ceil_f16_e64 v0, |src_shared_base|    ; encoding: [0x00,0x01,0x85,0xd1,0xeb,0x00,0x00,0x00]1525// NOSICI: :[[@LINE-6]]:1: error: instruction not supported on this GPU1526// NOVI: :[[@LINE-7]]:20: error: src_shared_base register not available on this GPU1527// NOSICIVI: :[[@LINE-1]]:1: error: instruction not supported on this GPU1528 1529v_ceil_f64 v[5:6], |src_shared_base|1530// GFX11: v_ceil_f64_e64 v[5:6], |src_shared_base| ; encoding: [0x05,0x01,0x98,0xd5,0xeb,0x00,0x00,0x00]1531// GFX12: v_ceil_f64_e64 v[5:6], |src_shared_base| ; encoding: [0x05,0x01,0x98,0xd5,0xeb,0x00,0x00,0x00]1532// GFX9: v_ceil_f64_e64 v[5:6], |src_shared_base| ; encoding: [0x05,0x01,0x58,0xd1,0xeb,0x00,0x00,0x00]1533// NOCI: :[[@LINE-4]]:21: error: src_shared_base register not available on this GPU1534// NOGFX1250: :[[@LINE-5]]:12: error: invalid operand for instruction1535// NOSI: :[[@LINE-6]]:1: error: instruction not supported on this GPU1536// NOVI: :[[@LINE-7]]:21: error: src_shared_base register not available on this GPU1537// NOCIVI: :[[@LINE-5]]:21: error: src_shared_base register not available on this GPU1538 1539v_ceil_f64 v[5:6], -src_shared_base1540// GFX11: v_ceil_f64_e64 v[5:6], -src_shared_base ; encoding: [0x05,0x00,0x98,0xd5,0xeb,0x00,0x00,0x20]1541// GFX12: v_ceil_f64_e64 v[5:6], -src_shared_base ; encoding: [0x05,0x00,0x98,0xd5,0xeb,0x00,0x00,0x20]1542// GFX9: v_ceil_f64_e64 v[5:6], -src_shared_base ; encoding: [0x05,0x00,0x58,0xd1,0xeb,0x00,0x00,0x20]1543// NOCI: :[[@LINE-4]]:21: error: src_shared_base register not available on this GPU1544// NOGFX1250: :[[@LINE-5]]:12: error: invalid operand for instruction1545// NOSI: :[[@LINE-6]]:1: error: instruction not supported on this GPU1546// NOVI: :[[@LINE-7]]:21: error: src_shared_base register not available on this GPU1547// NOCIVI: :[[@LINE-5]]:21: error: src_shared_base register not available on this GPU1548 1549v_ceil_f32 v0, -src_shared_base1550// GFX11: v_ceil_f32_e64 v0, -src_shared_base     ; encoding: [0x00,0x00,0xa2,0xd5,0xeb,0x00,0x00,0x20]1551// GFX12XX: v_ceil_f32_e64 v0, -src_shared_base     ; encoding: [0x00,0x00,0xa2,0xd5,0xeb,0x00,0x00,0x20]1552// GFX9: v_ceil_f32_e64 v0, -src_shared_base     ; encoding: [0x00,0x00,0x5d,0xd1,0xeb,0x00,0x00,0x20]1553// NOSICI: :[[@LINE-4]]:17: error: src_shared_base register not available on this GPU1554// NOVI: :[[@LINE-5]]:17: error: src_shared_base register not available on this GPU1555// NOSICIVI: :[[@LINE-1]]:17: error: src_shared_base register not available on this GPU1556 1557v_ceil_f32 v0, |src_shared_base|1558// GFX11: v_ceil_f32_e64 v0, |src_shared_base|    ; encoding: [0x00,0x01,0xa2,0xd5,0xeb,0x00,0x00,0x00]1559// GFX12XX: v_ceil_f32_e64 v0, |src_shared_base|    ; encoding: [0x00,0x01,0xa2,0xd5,0xeb,0x00,0x00,0x00]1560// GFX9: v_ceil_f32_e64 v0, |src_shared_base|    ; encoding: [0x00,0x01,0x5d,0xd1,0xeb,0x00,0x00,0x00]1561// NOSICI: :[[@LINE-4]]:17: error: src_shared_base register not available on this GPU1562// NOVI: :[[@LINE-5]]:17: error: src_shared_base register not available on this GPU1563// NOSICIVI: :[[@LINE-1]]:17: error: src_shared_base register not available on this GPU1564 1565v_ceil_f16_sdwa v5, |src_shared_base| dst_sel:DWORD dst_unused:UNUSED_PRESERVE1566// GFX9: v_ceil_f16_sdwa v5, |src_shared_base| dst_sel:DWORD dst_unused:UNUSED_PRESERVE src0_sel:DWORD ; encoding: [0xf9,0x8a,0x0a,0x7e,0xeb,0x16,0xa6,0x00]1567// NOGFX11: :[[@LINE-2]]:1: error: sdwa variant of this instruction is not supported1568// NOGFX12: :[[@LINE-3]]:1: error: sdwa variant of this instruction is not supported1569// NOGFX1250: :[[@LINE-4]]:1: error: sdwa variant of this instruction is not supported1570// NOSICI: :[[@LINE-5]]:1: error: instruction not supported on this GPU1571// NOVI: :[[@LINE-6]]:22: error: src_shared_base register not available on this GPU1572// NOSICIVI: :[[@LINE-1]]:1: error: instruction not supported on this GPU1573 1574v_ceil_f16_sdwa v5, -src_shared_base dst_sel:DWORD dst_unused:UNUSED_PRESERVE1575// GFX9: v_ceil_f16_sdwa v5, -src_shared_base dst_sel:DWORD dst_unused:UNUSED_PRESERVE src0_sel:DWORD ; encoding: [0xf9,0x8a,0x0a,0x7e,0xeb,0x16,0x96,0x00]1576// NOGFX11: :[[@LINE-2]]:1: error: sdwa variant of this instruction is not supported1577// NOGFX12: :[[@LINE-3]]:1: error: sdwa variant of this instruction is not supported1578// NOGFX1250: :[[@LINE-4]]:1: error: sdwa variant of this instruction is not supported1579// NOSICI: :[[@LINE-5]]:1: error: instruction not supported on this GPU1580// NOVI: :[[@LINE-6]]:22: error: src_shared_base register not available on this GPU1581// NOSICIVI: :[[@LINE-1]]:1: error: instruction not supported on this GPU1582 1583v_ceil_f32_sdwa v5, src_shared_base dst_sel:DWORD src0_sel:DWORD1584// GFX9: v_ceil_f32_sdwa v5, src_shared_base dst_sel:DWORD dst_unused:UNUSED_PRESERVE src0_sel:DWORD ; encoding: [0xf9,0x3a,0x0a,0x7e,0xeb,0x16,0x86,0x00]1585// NOGFX11: :[[@LINE-2]]:1: error: sdwa variant of this instruction is not supported1586// NOGFX12: :[[@LINE-3]]:1: error: sdwa variant of this instruction is not supported1587// NOGFX1250: :[[@LINE-4]]:1: error: sdwa variant of this instruction is not supported1588// NOSICI: :[[@LINE-5]]:1: error: sdwa variant of this instruction is not supported1589// NOVI: :[[@LINE-6]]:21: error: src_shared_base register not available on this GPU1590// NOSICIVI: :[[@LINE-1]]:1: error: sdwa variant of this instruction is not supported1591 1592v_ceil_f32_sdwa v5, |src_shared_base| dst_sel:DWORD src0_sel:DWORD1593// GFX9: v_ceil_f32_sdwa v5, |src_shared_base| dst_sel:DWORD dst_unused:UNUSED_PRESERVE src0_sel:DWORD ; encoding: [0xf9,0x3a,0x0a,0x7e,0xeb,0x16,0xa6,0x00]1594// NOGFX11: :[[@LINE-2]]:1: error: sdwa variant of this instruction is not supported1595// NOGFX12: :[[@LINE-3]]:1: error: sdwa variant of this instruction is not supported1596// NOGFX1250: :[[@LINE-4]]:1: error: sdwa variant of this instruction is not supported1597// NOSICI: :[[@LINE-5]]:1: error: sdwa variant of this instruction is not supported1598// NOVI: :[[@LINE-6]]:22: error: src_shared_base register not available on this GPU1599// NOSICIVI: :[[@LINE-1]]:1: error: sdwa variant of this instruction is not supported1600 1601//---------------------------------------------------------------------------//1602// named inline values compete with other scalars for constant bus access1603//---------------------------------------------------------------------------//1604 1605v_add_u32 v0, private_base, s01606// GFX11: v_add_nc_u32_e64 v0, src_private_base, s0 ; encoding: [0x00,0x00,0x25,0xd5,0xed,0x00,0x00,0x00]1607// GFX12XX: v_add_nc_u32_e64 v0, src_private_base, s0 ; encoding: [0x00,0x00,0x25,0xd5,0xed,0x00,0x00,0x00]1608// NOGFX9: :[[@LINE-3]]:29: error: invalid operand (violates constant bus restrictions)1609// NOSICI: :[[@LINE-4]]:1: error: instruction not supported on this GPU1610// NOVI: :[[@LINE-5]]:15: error: src_private_base register not available on this GPU1611// NOSICIVI: :[[@LINE-1]]:1: error: instruction not supported on this GPU1612 1613v_add_u32 v0, scc, s01614// GFX11: v_add_nc_u32_e64 v0, src_scc, s0        ; encoding: [0x00,0x00,0x25,0xd5,0xfd,0x00,0x00,0x00]1615// GFX12XX: v_add_nc_u32_e64 v0, src_scc, s0        ; encoding: [0x00,0x00,0x25,0xd5,0xfd,0x00,0x00,0x00]1616// NOGFX9: :[[@LINE-3]]:20: error: invalid operand (violates constant bus restrictions)1617// NOSICI: :[[@LINE-4]]:1: error: instruction not supported on this GPU1618// NOVI: :[[@LINE-5]]:1: error: operands are not valid for this GPU or mode1619// NOSICIVI: :[[@LINE-1]]:1: error: instruction not supported on this GPU1620 1621// v_div_fmas implicitly reads VCC1622v_div_fmas_f32 v0, shared_base, v0, v11623// GFX11: v_div_fmas_f32 v0, src_shared_base, v0, v1 ; encoding: [0x00,0x00,0x37,0xd6,0xeb,0x00,0x06,0x04]1624// GFX12XX: v_div_fmas_f32 v0, src_shared_base, v0, v1 ; encoding: [0x00,0x00,0x37,0xd6,0xeb,0x00,0x06,0x04]1625// NOGFX9: :[[@LINE-3]]:20: error: invalid operand (violates constant bus restrictions)1626// NOSICI: :[[@LINE-4]]:20: error: src_shared_base register not available on this GPU1627// NOVI: :[[@LINE-5]]:20: error: src_shared_base register not available on this GPU1628// NOSICIVI: :[[@LINE-1]]:20: error: src_shared_base register not available on this GPU1629 1630// v_div_fmas implicitly reads VCC1631v_div_fmas_f32 v0, v0, shared_limit, v11632// GFX11: v_div_fmas_f32 v0, v0, src_shared_limit, v1 ; encoding: [0x00,0x00,0x37,0xd6,0x00,0xd9,0x05,0x04]1633// GFX12XX: v_div_fmas_f32 v0, v0, src_shared_limit, v1 ; encoding: [0x00,0x00,0x37,0xd6,0x00,0xd9,0x05,0x04]1634// NOGFX9: :[[@LINE-3]]:24: error: invalid operand (violates constant bus restrictions)1635// NOSICI: :[[@LINE-4]]:24: error: src_shared_limit register not available on this GPU1636// NOVI: :[[@LINE-5]]:24: error: src_shared_limit register not available on this GPU1637// NOSICIVI: :[[@LINE-1]]:24: error: src_shared_limit register not available on this GPU1638 1639// v_div_fmas implicitly reads VCC1640v_div_fmas_f32 v0, v0, v1, private_limit1641// GFX11: v_div_fmas_f32 v0, v0, v1, src_private_limit ; encoding: [0x00,0x00,0x37,0xd6,0x00,0x03,0xba,0x03]1642// GFX12XX: v_div_fmas_f32 v0, v0, v1, src_private_limit ; encoding: [0x00,0x00,0x37,0xd6,0x00,0x03,0xba,0x03]1643// NOGFX9: :[[@LINE-3]]:28: error: invalid operand (violates constant bus restrictions)1644// NOSICI: :[[@LINE-4]]:28: error: src_private_limit register not available on this GPU1645// NOVI: :[[@LINE-5]]:28: error: src_private_limit register not available on this GPU1646// NOSICIVI: :[[@LINE-1]]:28: error: src_private_limit register not available on this GPU1647 1648// v_div_fmas implicitly reads VCC1649v_div_fmas_f32 v0, execz, v0, v11650// NOGFX11: :[[@LINE-1]]:20: error: src_execz register not available on this GPU1651// NOGFX12: :[[@LINE-2]]:20: error: src_execz register not available on this GPU1652// NOGFX1250: :[[@LINE-3]]:20: error: src_execz register not available on this GPU1653// NOGFX89: :[[@LINE-4]]:20: error: invalid operand (violates constant bus restrictions)1654// NOSICI: :[[@LINE-5]]:20: error: invalid operand (violates constant bus restrictions)1655// NOSICIVI: :[[@LINE-1]]:20: error: invalid operand (violates constant bus restrictions)1656 1657// v_div_fmas implicitly reads VCC1658v_div_fmas_f32 v0, v0, scc, v11659// GFX11: v_div_fmas_f32 v0, v0, src_scc, v1      ; encoding: [0x00,0x00,0x37,0xd6,0x00,0xfb,0x05,0x04]1660// GFX12XX: v_div_fmas_f32 v0, v0, src_scc, v1      ; encoding: [0x00,0x00,0x37,0xd6,0x00,0xfb,0x05,0x04]1661// NOGFX89: :[[@LINE-3]]:24: error: invalid operand (violates constant bus restrictions)1662// NOSICI: :[[@LINE-4]]:24: error: invalid operand (violates constant bus restrictions)1663// NOSICIVI: :[[@LINE-1]]:24: error: invalid operand (violates constant bus restrictions)1664 1665// v_div_fmas implicitly reads VCC1666v_div_fmas_f32 v0, v0, v1, vccz1667// NOGFX11: :[[@LINE-1]]:28: error: src_vccz register not available on this GPU1668// NOGFX12: :[[@LINE-2]]:28: error: src_vccz register not available on this GPU1669// NOGFX1250: :[[@LINE-3]]:28: error: src_vccz register not available on this GPU1670// NOGFX89: :[[@LINE-4]]:28: error: invalid operand (violates constant bus restrictions)1671// NOSICI: :[[@LINE-5]]:28: error: invalid operand (violates constant bus restrictions)1672// NOSICIVI: :[[@LINE-1]]:28: error: invalid operand (violates constant bus restrictions)1673 1674// v_addc_co_u32 implicitly reads VCC (VOP2)1675v_addc_co_u32 v0, vcc, shared_base, v0, vcc1676// NOGFX11: :[[@LINE-1]]:1: error: instruction not supported on this GPU1677// NOGFX12: :[[@LINE-2]]:1: error: instruction not supported on this GPU1678// NOGFX1250: :[[@LINE-3]]:1: error: instruction not supported on this GPU1679// NOGFX9: :[[@LINE-4]]:24: error: invalid operand (violates constant bus restrictions)1680// NOSICI: :[[@LINE-5]]:1: error: instruction not supported on this GPU1681// NOVI: :[[@LINE-6]]:1: error: instruction not supported on this GPU1682// NOSICIVI: :[[@LINE-1]]:1: error: instruction not supported on this GPU1683 1684v_madak_f32 v0, shared_base, v0, 0x112131411685// NOGFX11: :[[@LINE-1]]:1: error: instruction not supported on this GPU1686// NOGFX12: :[[@LINE-2]]:1: error: instruction not supported on this GPU1687// NOGFX1250: :[[@LINE-3]]:1: error: instruction not supported on this GPU1688// NOGFX9: :[[@LINE-4]]:17: error: invalid operand (violates constant bus restrictions)1689// NOSICI: :[[@LINE-5]]:17: error: src_shared_base register not available on this GPU1690// NOVI: :[[@LINE-6]]:17: error: src_shared_base register not available on this GPU1691// NOSICIVI: :[[@LINE-1]]:17: error: src_shared_base register not available on this GPU1692 1693v_madak_f32 v0, scc, v0, 0x112131411694// NOGFX11: :[[@LINE-1]]:1: error: instruction not supported on this GPU1695// NOGFX12: :[[@LINE-2]]:1: error: instruction not supported on this GPU1696// NOGFX1250: :[[@LINE-3]]:1: error: instruction not supported on this GPU1697// NOGFX89: :[[@LINE-4]]:17: error: invalid operand (violates constant bus restrictions)1698// NOSICI: :[[@LINE-5]]:17: error: invalid operand (violates constant bus restrictions)1699// NOSICIVI: :[[@LINE-1]]:17: error: invalid operand (violates constant bus restrictions)1700 1701v_madak_f32 v0, 0xff32ff, v0, 0x112131411702// NOGFX11: :[[@LINE-1]]:1: error: instruction not supported on this GPU1703// NOGFX12: :[[@LINE-2]]:1: error: instruction not supported on this GPU1704// NOGFX1250: :[[@LINE-3]]:1: error: instruction not supported on this GPU1705// NOGFX89: :[[@LINE-4]]:31: error: only one unique literal operand is allowed1706// NOSICI: :[[@LINE-5]]:31: error: only one unique literal operand is allowed1707// NOSICIVI: :[[@LINE-1]]:31: error: only one unique literal operand is allowed1708 1709v_madak_f32 v0, 0xff32ff, v0, 11710// NOGFX11: :[[@LINE-1]]:1: error: instruction not supported on this GPU1711// NOGFX12: :[[@LINE-2]]:1: error: instruction not supported on this GPU1712// NOGFX1250: :[[@LINE-3]]:1: error: instruction not supported on this GPU1713// NOGFX89: :[[@LINE-4]]:31: error: only one unique literal operand is allowed1714// NOSICI: :[[@LINE-5]]:31: error: only one unique literal operand is allowed1715// NOSICIVI: :[[@LINE-1]]:31: error: only one unique literal operand is allowed1716 1717v_madmk_f32 v0, 0xff32ff, 0x11213141, v01718// NOGFX11: :[[@LINE-1]]:1: error: instruction not supported on this GPU1719// NOGFX12: :[[@LINE-2]]:1: error: instruction not supported on this GPU1720// NOGFX1250: :[[@LINE-3]]:1: error: instruction not supported on this GPU1721// NOGFX89: :[[@LINE-4]]:27: error: only one unique literal operand is allowed1722// NOSICI: :[[@LINE-5]]:27: error: only one unique literal operand is allowed1723// NOSICIVI: :[[@LINE-1]]:27: error: only one unique literal operand is allowed1724 1725v_madmk_f32 v0, 0xff32ff, -1, v01726// NOGFX11: :[[@LINE-1]]:1: error: instruction not supported on this GPU1727// NOGFX12: :[[@LINE-2]]:1: error: instruction not supported on this GPU1728// NOGFX1250: :[[@LINE-3]]:1: error: instruction not supported on this GPU1729// NOGFX89: :[[@LINE-4]]:27: error: only one unique literal operand is allowed1730// NOSICI: :[[@LINE-5]]:27: error: only one unique literal operand is allowed1731// NOSICIVI: :[[@LINE-1]]:27: error: only one unique literal operand is allowed1732 1733v_madak_f16 v0, 0xff32, v0, 0x11221734// NOGFX11: :[[@LINE-1]]:1: error: instruction not supported on this GPU1735// NOGFX12: :[[@LINE-2]]:1: error: instruction not supported on this GPU1736// NOGFX1250: :[[@LINE-3]]:1: error: instruction not supported on this GPU1737// NOGFX89: :[[@LINE-4]]:29: error: only one unique literal operand is allowed1738// NOSICI: :[[@LINE-5]]:1: error: instruction not supported on this GPU1739// NOSICIVI: :[[@LINE-1]]:1: error: instruction not supported on this GPU1740 1741v_madak_f16 v0, 0xff32, v0, 01742// NOGFX11: :[[@LINE-1]]:1: error: instruction not supported on this GPU1743// NOGFX12: :[[@LINE-2]]:1: error: instruction not supported on this GPU1744// NOGFX1250: :[[@LINE-3]]:1: error: instruction not supported on this GPU1745// NOGFX89: :[[@LINE-4]]:29: error: only one unique literal operand is allowed1746// NOSICI: :[[@LINE-5]]:1: error: instruction not supported on this GPU1747// NOSICIVI: :[[@LINE-1]]:1: error: instruction not supported on this GPU1748 1749v_madmk_f16 v0, 0xff32, 0x1122, v01750// NOGFX11: :[[@LINE-1]]:1: error: instruction not supported on this GPU1751// NOGFX12: :[[@LINE-2]]:1: error: instruction not supported on this GPU1752// NOGFX1250: :[[@LINE-3]]:1: error: instruction not supported on this GPU1753// NOGFX89: :[[@LINE-4]]:25: error: only one unique literal operand is allowed1754// NOSICI: :[[@LINE-5]]:1: error: instruction not supported on this GPU1755// NOSICIVI: :[[@LINE-1]]:1: error: instruction not supported on this GPU1756 1757v_madmk_f16 v0, 0xff32, 1, v01758// NOGFX11: :[[@LINE-1]]:1: error: instruction not supported on this GPU1759// NOGFX12: :[[@LINE-2]]:1: error: instruction not supported on this GPU1760// NOGFX1250: :[[@LINE-3]]:1: error: instruction not supported on this GPU1761// NOGFX89: :[[@LINE-4]]:25: error: only one unique literal operand is allowed1762// NOSICI: :[[@LINE-5]]:1: error: instruction not supported on this GPU1763// NOSICIVI: :[[@LINE-1]]:1: error: instruction not supported on this GPU1764 1765v_cmp_eq_f32 s[0:1], private_base, private_limit1766// NOGFX11: :[[@LINE-1]]:14: error: invalid operand for instruction1767// NOGFX12: :[[@LINE-2]]:14: error: invalid operand for instruction1768// NOGFX1250: :[[@LINE-3]]:14: error: invalid operand for instruction1769// NOGFX9: :[[@LINE-4]]:36: error: invalid operand (violates constant bus restrictions)1770// NOSICI: :[[@LINE-5]]:22: error: src_private_base register not available on this GPU1771// NOVI: :[[@LINE-6]]:22: error: src_private_base register not available on this GPU1772// NOSICIVI: :[[@LINE-1]]:22: error: src_private_base register not available on this GPU1773 1774v_cmp_eq_f32 s[0:1], private_base, s01775// NOGFX11: :[[@LINE-1]]:14: error: invalid operand for instruction1776// NOGFX12: :[[@LINE-2]]:14: error: invalid operand for instruction1777// NOGFX1250: :[[@LINE-3]]:14: error: invalid operand for instruction1778// NOGFX9: :[[@LINE-4]]:36: error: invalid operand (violates constant bus restrictions)1779// NOSICI: :[[@LINE-5]]:22: error: src_private_base register not available on this GPU1780// NOVI: :[[@LINE-6]]:22: error: src_private_base register not available on this GPU1781// NOSICIVI: :[[@LINE-1]]:22: error: src_private_base register not available on this GPU1782 1783v_cmp_eq_f32 s[0:1], execz, s01784// NOGFX11: :[[@LINE-1]]:22: error: src_execz register not available on this GPU1785// NOGFX12: :[[@LINE-2]]:22: error: src_execz register not available on this GPU1786// NOGFX1250: :[[@LINE-3]]:22: error: src_execz register not available on this GPU1787// NOGFX89: :[[@LINE-4]]:29: error: invalid operand (violates constant bus restrictions)1788// NOSICI: :[[@LINE-5]]:29: error: invalid operand (violates constant bus restrictions)1789// NOSICIVI: :[[@LINE-1]]:29: error: invalid operand (violates constant bus restrictions)1790 1791v_pk_add_f16 v255, private_base, private_limit1792// GFX11: v_pk_add_f16 v255, src_private_base, src_private_limit ; encoding: [0xff,0x40,0x0f,0xcc,0xed,0xdc,0x01,0x18]1793// GFX12XX: v_pk_add_f16 v255, src_private_base, src_private_limit ; encoding: [0xff,0x40,0x0f,0xcc,0xed,0xdc,0x01,0x18]1794// NOGFX9: :[[@LINE-3]]:34: error: invalid operand (violates constant bus restrictions)1795// NOSICI: :[[@LINE-4]]:1: error: instruction not supported on this GPU1796// NOVI: :[[@LINE-5]]:1: error: instruction not supported on this GPU1797// NOSICIVI: :[[@LINE-1]]:1: error: instruction not supported on this GPU1798 1799v_pk_add_f16 v255, vccz, execz1800// NOGFX11: :[[@LINE-1]]:20: error: src_vccz register not available on this GPU1801// NOGFX12: :[[@LINE-2]]:20: error: src_vccz register not available on this GPU1802// NOGFX1250: :[[@LINE-3]]:20: error: src_vccz register not available on this GPU1803// NOGFX9: :[[@LINE-4]]:26: error: invalid operand (violates constant bus restrictions)1804// NOSICI: :[[@LINE-5]]:1: error: instruction not supported on this GPU1805// NOVI: :[[@LINE-6]]:1: error: instruction not supported on this GPU1806// NOSICIVI: :[[@LINE-1]]:1: error: instruction not supported on this GPU1807 1808//---------------------------------------------------------------------------//1809// check lit() syntax.1810//---------------------------------------------------------------------------//1811 1812v_sqrt_f32 v2, lit(123)1813// GFX11: v_sqrt_f32_e32 v2, lit(0x7b)            ; encoding: [0xff,0x66,0x04,0x7e,0x7b,0x00,0x00,0x00]1814// GFX12: v_sqrt_f32_e32 v2, lit(0x7b)            ; encoding: [0xff,0x66,0x04,0x7e,0x7b,0x00,0x00,0x00]1815// GFX1250-ASM: v_sqrt_f32_e32 v2, lit(0x7b)            ; encoding: [0xff,0x66,0x04,0x7e,0x7b,0x00,0x00,0x00]1816// GFX1250-DIS: v_sqrt_f32_e32 v2, 0x7b                 ; encoding: [0xff,0x66,0x04,0x7e,0x7b,0x00,0x00,0x00]1817// GFX89: v_sqrt_f32_e32 v2, lit(0x7b)            ; encoding: [0xff,0x4e,0x04,0x7e,0x7b,0x00,0x00,0x00]1818// SICI: v_sqrt_f32_e32 v2, lit(0x7b)            ; encoding: [0xff,0x66,0x04,0x7e,0x7b,0x00,0x00,0x00]1819 1820v_sqrt_f32 v2, abs(lit(123))1821// GFX11: v_sqrt_f32_e32 v2, lit(0x7b)            ; encoding: [0xff,0x66,0x04,0x7e,0x7b,0x00,0x00,0x00]1822// GFX12: v_sqrt_f32_e32 v2, lit(0x7b)            ; encoding: [0xff,0x66,0x04,0x7e,0x7b,0x00,0x00,0x00]1823// GFX1250-ASM: v_sqrt_f32_e32 v2, lit(0x7b)            ; encoding: [0xff,0x66,0x04,0x7e,0x7b,0x00,0x00,0x00]1824// GFX1250-DIS: v_sqrt_f32_e32 v2, 0x7b                 ; encoding: [0xff,0x66,0x04,0x7e,0x7b,0x00,0x00,0x00]1825// GFX89: v_sqrt_f32_e32 v2, lit(0x7b)            ; encoding: [0xff,0x4e,0x04,0x7e,0x7b,0x00,0x00,0x00]1826// SICI: v_sqrt_f32_e32 v2, lit(0x7b)            ; encoding: [0xff,0x66,0x04,0x7e,0x7b,0x00,0x00,0x00]1827 1828v_sqrt_f32 v2, lit(123.0)1829// GFX11: v_sqrt_f32_e32 v2, lit(0x42f60000)      ; encoding: [0xff,0x66,0x04,0x7e,0x00,0x00,0xf6,0x42]1830// GFX12: v_sqrt_f32_e32 v2, lit(0x42f60000)      ; encoding: [0xff,0x66,0x04,0x7e,0x00,0x00,0xf6,0x42]1831// GFX1250-ASM: v_sqrt_f32_e32 v2, lit(0x42f60000)      ; encoding: [0xff,0x66,0x04,0x7e,0x00,0x00,0xf6,0x42]1832// GFX1250-DIS: v_sqrt_f32_e32 v2, 0x42f60000           ; encoding: [0xff,0x66,0x04,0x7e,0x00,0x00,0xf6,0x42]1833// GFX89: v_sqrt_f32_e32 v2, lit(0x42f60000)      ; encoding: [0xff,0x4e,0x04,0x7e,0x00,0x00,0xf6,0x42]1834// SICI: v_sqrt_f32_e32 v2, lit(0x42f60000)      ; encoding: [0xff,0x66,0x04,0x7e,0x00,0x00,0xf6,0x42]1835 1836v_sqrt_f64 v[2:3], lit(123.0)1837// GFX11: v_sqrt_f64_e32 v[2:3], lit(0x405ec000)  ; encoding: [0xff,0x68,0x04,0x7e,0x00,0xc0,0x5e,0x40]1838// GFX12: v_sqrt_f64_e32 v[2:3], lit(0x405ec000)  ; encoding: [0xff,0x68,0x04,0x7e,0x00,0xc0,0x5e,0x40]1839// GFX1250-ASM: v_sqrt_f64_e32 v[2:3], lit(0x405ec000)  ; encoding: [0xfe,0x68,0x04,0x7e,0x00,0xc0,0x5e,0x40,0x00,0x00,0x00,0x00]1840// GFX1250-DIS: v_sqrt_f64_e32 v[2:3], lit64(0x405ec000) ; encoding: [0xfe,0x68,0x04,0x7e,0x00,0xc0,0x5e,0x40,0x00,0x00,0x00,0x00]1841// GFX89: v_sqrt_f64_e32 v[2:3], lit(0x405ec000)  ; encoding: [0xff,0x50,0x04,0x7e,0x00,0xc0,0x5e,0x40]1842// SICI: v_sqrt_f64_e32 v[2:3], lit(0x405ec000)  ; encoding: [0xff,0x68,0x04,0x7e,0x00,0xc0,0x5e,0x40]1843 1844v_sqrt_f64 v[2:3], lit(123)1845// GFX11: v_sqrt_f64_e32 v[2:3], lit(0x7b)        ; encoding: [0xff,0x68,0x04,0x7e,0x7b,0x00,0x00,0x00]1846// GFX12: v_sqrt_f64_e32 v[2:3], lit(0x7b)        ; encoding: [0xff,0x68,0x04,0x7e,0x7b,0x00,0x00,0x00]1847// GFX1250-ASM: v_sqrt_f64_e32 v[2:3], lit(0x7b)        ; encoding: [0xfe,0x68,0x04,0x7e,0x7b,0x00,0x00,0x00,0x00,0x00,0x00,0x00]1848// GFX1250-DIS: v_sqrt_f64_e32 v[2:3], lit64(0x7b)      ; encoding: [0xfe,0x68,0x04,0x7e,0x7b,0x00,0x00,0x00,0x00,0x00,0x00,0x00]1849// GFX89: v_sqrt_f64_e32 v[2:3], lit(0x7b)        ; encoding: [0xff,0x50,0x04,0x7e,0x7b,0x00,0x00,0x00]1850// SICI: v_sqrt_f64_e32 v[2:3], lit(0x7b)        ; encoding: [0xff,0x68,0x04,0x7e,0x7b,0x00,0x00,0x00]1851 1852v_sqrt_f32 v2, lit 123.01853// NOGCN: :[[@LINE-1]]:20: error: expected left paren after lit1854 1855v_sqrt_f32 v2, lit(123.01856// NOGCN: :[[@LINE-1]]:25: error: expected closing parentheses1857 1858v_sqrt_f32 v2, lit(v1)1859// NOGCN: :[[@LINE-1]]:20: error: expected immediate with lit modifier1860 1861// Make sure lit() is accepted on operands without modifiers.1862 1863v_madak_f32 v4, lit(0x7e8), v8, lit(0x7e8)1864// GFX89: v_madak_f32 v4, lit(0x7e8), v8, lit(0x7e8) ; encoding: [0xff,0x10,0x08,0x30,0xe8,0x07,0x00,0x00]1865// NOGFX11: :[[@LINE-2]]:1: error: instruction not supported on this GPU1866// NOGFX12: :[[@LINE-3]]:1: error: instruction not supported on this GPU1867// NOGFX1250: :[[@LINE-4]]:1: error: instruction not supported on this GPU1868// SICI: v_madak_f32 v4, lit(0x7e8), v8, lit(0x7e8) ; encoding: [0xff,0x10,0x08,0x42,0xe8,0x07,0x00,0x00]1869 1870v_madak_f32 v4, lit(lit(0x7e8)), v8, lit(0x7e8)1871// NOGFX11: :[[@LINE-1]]:1: error: instruction not supported on this GPU1872// NOGFX12: :[[@LINE-2]]:1: error: instruction not supported on this GPU1873// NOGFX1250: :[[@LINE-3]]:1: error: instruction not supported on this GPU1874// NOGFX89: :[[@LINE-4]]:24: error: not a valid operand.1875// NOSICI: :[[@LINE-5]]:24: error: not a valid operand.1876// NOSICIVI: :[[@LINE-1]]:24: error: not a valid operand.1877