1*9880d681SAndroid Build Coastguard Worker// RUN: llvm-mc -arch=amdgcn -show-encoding %s | FileCheck %s --check-prefix=SICI 2*9880d681SAndroid Build Coastguard Worker// RUN: llvm-mc -arch=amdgcn -mcpu=SI -show-encoding %s | FileCheck %s --check-prefix=SICI 3*9880d681SAndroid Build Coastguard Worker// RUN: not llvm-mc -arch=amdgcn -mcpu=tonga -show-encoding %s | FileCheck %s --check-prefix=VI 4*9880d681SAndroid Build Coastguard Worker// RUN: not llvm-mc -arch=amdgcn -mcpu=tonga -show-encoding %s 2>&1 | FileCheck %s -check-prefix=NOVI 5*9880d681SAndroid Build Coastguard Worker 6*9880d681SAndroid Build Coastguard Worker 7*9880d681SAndroid Build Coastguard Worker//===----------------------------------------------------------------------===// 8*9880d681SAndroid Build Coastguard Worker// VOPC Instructions 9*9880d681SAndroid Build Coastguard Worker//===----------------------------------------------------------------------===// 10*9880d681SAndroid Build Coastguard Worker 11*9880d681SAndroid Build Coastguard Worker// Test forced e64 encoding 12*9880d681SAndroid Build Coastguard Worker 13*9880d681SAndroid Build Coastguard Workerv_cmp_lt_f32_e64 s[2:3], v4, -v6 14*9880d681SAndroid Build Coastguard Worker// SICI: v_cmp_lt_f32_e64 s[2:3], v4, -v6 ; encoding: [0x02,0x00,0x02,0xd0,0x04,0x0d,0x02,0x40] 15*9880d681SAndroid Build Coastguard Worker// VI: v_cmp_lt_f32_e64 s[2:3], v4, -v6 ; encoding: [0x02,0x00,0x41,0xd0,0x04,0x0d,0x02,0x40] 16*9880d681SAndroid Build Coastguard Worker 17*9880d681SAndroid Build Coastguard Worker// Test forcing e64 with vcc dst 18*9880d681SAndroid Build Coastguard Worker 19*9880d681SAndroid Build Coastguard Workerv_cmp_lt_f32_e64 vcc, v4, v6 20*9880d681SAndroid Build Coastguard Worker// SICI: v_cmp_lt_f32_e64 vcc, v4, v6 ; encoding: [0x6a,0x00,0x02,0xd0,0x04,0x0d,0x02,0x00] 21*9880d681SAndroid Build Coastguard Worker// VI: v_cmp_lt_f32_e64 vcc, v4, v6 ; encoding: [0x6a,0x00,0x41,0xd0,0x04,0x0d,0x02,0x00] 22*9880d681SAndroid Build Coastguard Worker 23*9880d681SAndroid Build Coastguard Worker// 24*9880d681SAndroid Build Coastguard Worker// Modifier tests: 25*9880d681SAndroid Build Coastguard Worker// 26*9880d681SAndroid Build Coastguard Worker 27*9880d681SAndroid Build Coastguard Workerv_cmp_lt_f32 s[2:3] -v4, v6 28*9880d681SAndroid Build Coastguard Worker// SICI: v_cmp_lt_f32_e64 s[2:3], -v4, v6 ; encoding: [0x02,0x00,0x02,0xd0,0x04,0x0d,0x02,0x20] 29*9880d681SAndroid Build Coastguard Worker// VI: v_cmp_lt_f32_e64 s[2:3], -v4, v6 ; encoding: [0x02,0x00,0x41,0xd0,0x04,0x0d,0x02,0x20] 30*9880d681SAndroid Build Coastguard Worker 31*9880d681SAndroid Build Coastguard Workerv_cmp_lt_f32 s[2:3] v4, -v6 32*9880d681SAndroid Build Coastguard Worker// SICI: v_cmp_lt_f32_e64 s[2:3], v4, -v6 ; encoding: [0x02,0x00,0x02,0xd0,0x04,0x0d,0x02,0x40] 33*9880d681SAndroid Build Coastguard Worker// VI: v_cmp_lt_f32_e64 s[2:3], v4, -v6 ; encoding: [0x02,0x00,0x41,0xd0,0x04,0x0d,0x02,0x40] 34*9880d681SAndroid Build Coastguard Worker 35*9880d681SAndroid Build Coastguard Workerv_cmp_lt_f32 s[2:3] -v4, -v6 36*9880d681SAndroid Build Coastguard Worker// SICI: v_cmp_lt_f32_e64 s[2:3], -v4, -v6 ; encoding: [0x02,0x00,0x02,0xd0,0x04,0x0d,0x02,0x60] 37*9880d681SAndroid Build Coastguard Worker// VI: v_cmp_lt_f32_e64 s[2:3], -v4, -v6 ; encoding: [0x02,0x00,0x41,0xd0,0x04,0x0d,0x02,0x60] 38*9880d681SAndroid Build Coastguard Worker 39*9880d681SAndroid Build Coastguard Workerv_cmp_lt_f32 s[2:3] |v4|, v6 40*9880d681SAndroid Build Coastguard Worker// SICI: v_cmp_lt_f32_e64 s[2:3], |v4|, v6 ; encoding: [0x02,0x01,0x02,0xd0,0x04,0x0d,0x02,0x00] 41*9880d681SAndroid Build Coastguard Worker// VI: v_cmp_lt_f32_e64 s[2:3], |v4|, v6 ; encoding: [0x02,0x01,0x41,0xd0,0x04,0x0d,0x02,0x00] 42*9880d681SAndroid Build Coastguard Worker 43*9880d681SAndroid Build Coastguard Workerv_cmp_lt_f32 s[2:3] v4, |v6| 44*9880d681SAndroid Build Coastguard Worker// SICI: v_cmp_lt_f32_e64 s[2:3], v4, |v6| ; encoding: [0x02,0x02,0x02,0xd0,0x04,0x0d,0x02,0x00] 45*9880d681SAndroid Build Coastguard Worker// VI: v_cmp_lt_f32_e64 s[2:3], v4, |v6| ; encoding: [0x02,0x02,0x41,0xd0,0x04,0x0d,0x02,0x00] 46*9880d681SAndroid Build Coastguard Worker 47*9880d681SAndroid Build Coastguard Workerv_cmp_lt_f32 s[2:3] |v4|, |v6| 48*9880d681SAndroid Build Coastguard Worker// SICI: v_cmp_lt_f32_e64 s[2:3], |v4|, |v6| ; encoding: [0x02,0x03,0x02,0xd0,0x04,0x0d,0x02,0x00] 49*9880d681SAndroid Build Coastguard Worker// VI: v_cmp_lt_f32_e64 s[2:3], |v4|, |v6| ; encoding: [0x02,0x03,0x41,0xd0,0x04,0x0d,0x02,0x00] 50*9880d681SAndroid Build Coastguard Worker 51*9880d681SAndroid Build Coastguard Workerv_cmp_lt_f32 s[2:3] -|v4|, v6 52*9880d681SAndroid Build Coastguard Worker// SICI: v_cmp_lt_f32_e64 s[2:3], -|v4|, v6 ; encoding: [0x02,0x01,0x02,0xd0,0x04,0x0d,0x02,0x20] 53*9880d681SAndroid Build Coastguard Worker// VI: v_cmp_lt_f32_e64 s[2:3], -|v4|, v6 ; encoding: [0x02,0x01,0x41,0xd0,0x04,0x0d,0x02,0x20] 54*9880d681SAndroid Build Coastguard Worker 55*9880d681SAndroid Build Coastguard Workerv_cmp_lt_f32 s[2:3] -abs(v4), v6 56*9880d681SAndroid Build Coastguard Worker// SICI: v_cmp_lt_f32_e64 s[2:3], -|v4|, v6 ; encoding: [0x02,0x01,0x02,0xd0,0x04,0x0d,0x02,0x20] 57*9880d681SAndroid Build Coastguard Worker// VI: v_cmp_lt_f32_e64 s[2:3], -|v4|, v6 ; encoding: [0x02,0x01,0x41,0xd0,0x04,0x0d,0x02,0x20] 58*9880d681SAndroid Build Coastguard Worker 59*9880d681SAndroid Build Coastguard Workerv_cmp_lt_f32 s[2:3] v4, -|v6| 60*9880d681SAndroid Build Coastguard Worker// SICI: v_cmp_lt_f32_e64 s[2:3], v4, -|v6| ; encoding: [0x02,0x02,0x02,0xd0,0x04,0x0d,0x02,0x40] 61*9880d681SAndroid Build Coastguard Worker// VI: v_cmp_lt_f32_e64 s[2:3], v4, -|v6| ; encoding: [0x02,0x02,0x41,0xd0,0x04,0x0d,0x02,0x40] 62*9880d681SAndroid Build Coastguard Worker 63*9880d681SAndroid Build Coastguard Workerv_cmp_lt_f32 s[2:3] v4, -abs(v6) 64*9880d681SAndroid Build Coastguard Worker// SICI: v_cmp_lt_f32_e64 s[2:3], v4, -|v6| ; encoding: [0x02,0x02,0x02,0xd0,0x04,0x0d,0x02,0x40] 65*9880d681SAndroid Build Coastguard Worker// VI: v_cmp_lt_f32_e64 s[2:3], v4, -|v6| ; encoding: [0x02,0x02,0x41,0xd0,0x04,0x0d,0x02,0x40] 66*9880d681SAndroid Build Coastguard Worker 67*9880d681SAndroid Build Coastguard Workerv_cmp_lt_f32 s[2:3] -|v4|, -|v6| 68*9880d681SAndroid Build Coastguard Worker// SICI: v_cmp_lt_f32_e64 s[2:3], -|v4|, -|v6| ; encoding: [0x02,0x03,0x02,0xd0,0x04,0x0d,0x02,0x60] 69*9880d681SAndroid Build Coastguard Worker// VI: v_cmp_lt_f32_e64 s[2:3], -|v4|, -|v6| ; encoding: [0x02,0x03,0x41,0xd0,0x04,0x0d,0x02,0x60] 70*9880d681SAndroid Build Coastguard Worker 71*9880d681SAndroid Build Coastguard Workerv_cmp_lt_f32 s[2:3] -abs(v4), -abs(v6) 72*9880d681SAndroid Build Coastguard Worker// SICI: v_cmp_lt_f32_e64 s[2:3], -|v4|, -|v6| ; encoding: [0x02,0x03,0x02,0xd0,0x04,0x0d,0x02,0x60] 73*9880d681SAndroid Build Coastguard Worker// VI: v_cmp_lt_f32_e64 s[2:3], -|v4|, -|v6| ; encoding: [0x02,0x03,0x41,0xd0,0x04,0x0d,0x02,0x60] 74*9880d681SAndroid Build Coastguard Worker 75*9880d681SAndroid Build Coastguard Worker// 76*9880d681SAndroid Build Coastguard Worker// Instruction tests: 77*9880d681SAndroid Build Coastguard Worker// 78*9880d681SAndroid Build Coastguard Worker 79*9880d681SAndroid Build Coastguard Workerv_cmp_f_f32 s[2:3], v4, v6 80*9880d681SAndroid Build Coastguard Worker// SICI: v_cmp_f_f32_e64 s[2:3], v4, v6 ; encoding: [0x02,0x00,0x00,0xd0,0x04,0x0d,0x02,0x00] 81*9880d681SAndroid Build Coastguard Worker// VI: v_cmp_f_f32_e64 s[2:3], v4, v6 ; encoding: [0x02,0x00,0x40,0xd0,0x04,0x0d,0x02,0x00] 82*9880d681SAndroid Build Coastguard Worker 83*9880d681SAndroid Build Coastguard Workerv_cmp_lt_f32 s[2:3], v4, v6 84*9880d681SAndroid Build Coastguard Worker// SICI: v_cmp_lt_f32_e64 s[2:3], v4, v6 ; encoding: [0x02,0x00,0x02,0xd0,0x04,0x0d,0x02,0x00] 85*9880d681SAndroid Build Coastguard Worker// VI: v_cmp_lt_f32_e64 s[2:3], v4, v6 ; encoding: [0x02,0x00,0x41,0xd0,0x04,0x0d,0x02,0x00] 86*9880d681SAndroid Build Coastguard Worker 87*9880d681SAndroid Build Coastguard Workerv_cmp_eq_f32 s[2:3], v4, v6 88*9880d681SAndroid Build Coastguard Worker// SICI: v_cmp_eq_f32_e64 s[2:3], v4, v6 ; encoding: [0x02,0x00,0x04,0xd0,0x04,0x0d,0x02,0x00] 89*9880d681SAndroid Build Coastguard Worker// VI: v_cmp_eq_f32_e64 s[2:3], v4, v6 ; encoding: [0x02,0x00,0x42,0xd0,0x04,0x0d,0x02,0x00] 90*9880d681SAndroid Build Coastguard Worker 91*9880d681SAndroid Build Coastguard Workerv_cmp_le_f32 s[2:3], v4, v6 92*9880d681SAndroid Build Coastguard Worker// SICI: v_cmp_le_f32_e64 s[2:3], v4, v6 ; encoding: [0x02,0x00,0x06,0xd0,0x04,0x0d,0x02,0x00] 93*9880d681SAndroid Build Coastguard Worker// VI: v_cmp_le_f32_e64 s[2:3], v4, v6 ; encoding: [0x02,0x00,0x43,0xd0,0x04,0x0d,0x02,0x00] 94*9880d681SAndroid Build Coastguard Worker 95*9880d681SAndroid Build Coastguard Workerv_cmp_gt_f32 s[2:3], v4, v6 96*9880d681SAndroid Build Coastguard Worker// SICI: v_cmp_gt_f32_e64 s[2:3], v4, v6 ; encoding: [0x02,0x00,0x08,0xd0,0x04,0x0d,0x02,0x00] 97*9880d681SAndroid Build Coastguard Worker// VI: v_cmp_gt_f32_e64 s[2:3], v4, v6 ; encoding: [0x02,0x00,0x44,0xd0,0x04,0x0d,0x02,0x00] 98*9880d681SAndroid Build Coastguard Worker 99*9880d681SAndroid Build Coastguard Workerv_cmp_lg_f32 s[2:3], v4, v6 100*9880d681SAndroid Build Coastguard Worker// SICI: v_cmp_lg_f32_e64 s[2:3], v4, v6 ; encoding: [0x02,0x00,0x0a,0xd0,0x04,0x0d,0x02,0x00] 101*9880d681SAndroid Build Coastguard Worker// VI: v_cmp_lg_f32_e64 s[2:3], v4, v6 ; encoding: [0x02,0x00,0x45,0xd0,0x04,0x0d,0x02,0x00] 102*9880d681SAndroid Build Coastguard Worker 103*9880d681SAndroid Build Coastguard Workerv_cmp_ge_f32 s[2:3], v4, v6 104*9880d681SAndroid Build Coastguard Worker// SICI: v_cmp_ge_f32_e64 s[2:3], v4, v6 ; encoding: [0x02,0x00,0x0c,0xd0,0x04,0x0d,0x02,0x00] 105*9880d681SAndroid Build Coastguard Worker// VI: v_cmp_ge_f32_e64 s[2:3], v4, v6 ; encoding: [0x02,0x00,0x46,0xd0,0x04,0x0d,0x02,0x00] 106*9880d681SAndroid Build Coastguard Worker 107*9880d681SAndroid Build Coastguard Worker// TODO: Add tests for the rest of v_cmp_*_f32 108*9880d681SAndroid Build Coastguard Worker// TODO: Add tests for v_cmpx_*_f32 109*9880d681SAndroid Build Coastguard Worker 110*9880d681SAndroid Build Coastguard Workerv_cmp_f_f64 s[2:3], v[4:5], v[6:7] 111*9880d681SAndroid Build Coastguard Worker// SICI: v_cmp_f_f64_e64 s[2:3], v[4:5], v[6:7] ; encoding: [0x02,0x00,0x40,0xd0,0x04,0x0d,0x02,0x00] 112*9880d681SAndroid Build Coastguard Worker// VI: v_cmp_f_f64_e64 s[2:3], v[4:5], v[6:7] ; encoding: [0x02,0x00,0x60,0xd0,0x04,0x0d,0x02,0x00] 113*9880d681SAndroid Build Coastguard Worker 114*9880d681SAndroid Build Coastguard Worker// TODO: Add tests for the rest of v_cmp_*_f64 115*9880d681SAndroid Build Coastguard Worker// TODO: Add tests for the rest of the floating-point comparision instructions. 116*9880d681SAndroid Build Coastguard Worker 117*9880d681SAndroid Build Coastguard Workerv_cmp_f_i32 s[2:3], v4, v6 118*9880d681SAndroid Build Coastguard Worker// SICI: v_cmp_f_i32_e64 s[2:3], v4, v6 ; encoding: [0x02,0x00,0x00,0xd1,0x04,0x0d,0x02,0x00] 119*9880d681SAndroid Build Coastguard Worker// VI: v_cmp_f_i32_e64 s[2:3], v4, v6 ; encoding: [0x02,0x00,0xc0,0xd0,0x04,0x0d,0x02,0x00] 120*9880d681SAndroid Build Coastguard Worker 121*9880d681SAndroid Build Coastguard Worker// TODO: Add test for the rest of v_cmp_*_i32 122*9880d681SAndroid Build Coastguard Worker 123*9880d681SAndroid Build Coastguard Workerv_cmp_f_i64 s[2:3], v[4:5], v[6:7] 124*9880d681SAndroid Build Coastguard Worker// SICI: v_cmp_f_i64_e64 s[2:3], v[4:5], v[6:7] ; encoding: [0x02,0x00,0x40,0xd1,0x04,0x0d,0x02,0x00] 125*9880d681SAndroid Build Coastguard Worker// VI: v_cmp_f_i64_e64 s[2:3], v[4:5], v[6:7] ; encoding: [0x02,0x00,0xe0,0xd0,0x04,0x0d,0x02,0x00] 126*9880d681SAndroid Build Coastguard Worker 127*9880d681SAndroid Build Coastguard Worker// TODO: Add tests for the rest of the instructions. 128*9880d681SAndroid Build Coastguard Worker 129*9880d681SAndroid Build Coastguard Worker//===----------------------------------------------------------------------===// 130*9880d681SAndroid Build Coastguard Worker// VOP1 Instructions 131*9880d681SAndroid Build Coastguard Worker//===----------------------------------------------------------------------===// 132*9880d681SAndroid Build Coastguard Worker 133*9880d681SAndroid Build Coastguard Worker// Test forced e64 encoding with e32 operands 134*9880d681SAndroid Build Coastguard Worker 135*9880d681SAndroid Build Coastguard Workerv_mov_b32_e64 v1, v2 136*9880d681SAndroid Build Coastguard Worker// SICI: v_mov_b32_e64 v1, v2 ; encoding: [0x01,0x00,0x02,0xd3,0x02,0x01,0x00,0x00] 137*9880d681SAndroid Build Coastguard Worker// VI: v_mov_b32_e64 v1, v2 ; encoding: [0x01,0x00,0x41,0xd1,0x02,0x01,0x00,0x00] 138*9880d681SAndroid Build Coastguard Worker 139*9880d681SAndroid Build Coastguard Worker// Force e64 encoding for special instructions. 140*9880d681SAndroid Build Coastguard Worker// FIXME, we should be printing the _e64 suffix for v_nop and v_clrexcp. 141*9880d681SAndroid Build Coastguard Worker 142*9880d681SAndroid Build Coastguard Workerv_nop_e64 143*9880d681SAndroid Build Coastguard Worker// SICI: v_nop ; encoding: [0x00,0x00,0x00,0xd3,0x00,0x00,0x00,0x00] 144*9880d681SAndroid Build Coastguard Worker// VI: v_nop ; encoding: [0x00,0x00,0x40,0xd1,0x00,0x00,0x00,0x00] 145*9880d681SAndroid Build Coastguard Worker 146*9880d681SAndroid Build Coastguard Workerv_clrexcp_e64 147*9880d681SAndroid Build Coastguard Worker// SICI: v_clrexcp ; encoding: [0x00,0x00,0x82,0xd3,0x00,0x00,0x00,0x00] 148*9880d681SAndroid Build Coastguard Worker// VI: v_clrexcp ; encoding: [0x00,0x00,0x75,0xd1,0x00,0x00,0x00,0x00] 149*9880d681SAndroid Build Coastguard Worker 150*9880d681SAndroid Build Coastguard Worker// 151*9880d681SAndroid Build Coastguard Worker// Modifier tests: 152*9880d681SAndroid Build Coastguard Worker// 153*9880d681SAndroid Build Coastguard Worker 154*9880d681SAndroid Build Coastguard Workerv_fract_f32 v1, -v2 155*9880d681SAndroid Build Coastguard Worker// SICI: v_fract_f32_e64 v1, -v2 ; encoding: [0x01,0x00,0x40,0xd3,0x02,0x01,0x00,0x20] 156*9880d681SAndroid Build Coastguard Worker// VI: v_fract_f32_e64 v1, -v2 ; encoding: [0x01,0x00,0x5b,0xd1,0x02,0x01,0x00,0x20] 157*9880d681SAndroid Build Coastguard Worker 158*9880d681SAndroid Build Coastguard Workerv_fract_f32 v1, |v2| 159*9880d681SAndroid Build Coastguard Worker// SICI: v_fract_f32_e64 v1, |v2| ; encoding: [0x01,0x01,0x40,0xd3,0x02,0x01,0x00,0x00] 160*9880d681SAndroid Build Coastguard Worker// VI: v_fract_f32_e64 v1, |v2| ; encoding: [0x01,0x01,0x5b,0xd1,0x02,0x01,0x00,0x00] 161*9880d681SAndroid Build Coastguard Worker 162*9880d681SAndroid Build Coastguard Workerv_fract_f32 v1, abs(v2) 163*9880d681SAndroid Build Coastguard Worker// SICI: v_fract_f32_e64 v1, |v2| ; encoding: [0x01,0x01,0x40,0xd3,0x02,0x01,0x00,0x00] 164*9880d681SAndroid Build Coastguard Worker// VI: v_fract_f32_e64 v1, |v2| ; encoding: [0x01,0x01,0x5b,0xd1,0x02,0x01,0x00,0x00] 165*9880d681SAndroid Build Coastguard Worker 166*9880d681SAndroid Build Coastguard Workerv_fract_f32 v1, -|v2| 167*9880d681SAndroid Build Coastguard Worker// SICI: v_fract_f32_e64 v1, -|v2| ; encoding: [0x01,0x01,0x40,0xd3,0x02,0x01,0x00,0x20] 168*9880d681SAndroid Build Coastguard Worker// VI: v_fract_f32_e64 v1, -|v2| ; encoding: [0x01,0x01,0x5b,0xd1,0x02,0x01,0x00,0x20] 169*9880d681SAndroid Build Coastguard Worker 170*9880d681SAndroid Build Coastguard Workerv_fract_f32 v1, -abs(v2) 171*9880d681SAndroid Build Coastguard Worker// SICI: v_fract_f32_e64 v1, -|v2| ; encoding: [0x01,0x01,0x40,0xd3,0x02,0x01,0x00,0x20] 172*9880d681SAndroid Build Coastguard Worker// VI: v_fract_f32_e64 v1, -|v2| ; encoding: [0x01,0x01,0x5b,0xd1,0x02,0x01,0x00,0x20] 173*9880d681SAndroid Build Coastguard Worker 174*9880d681SAndroid Build Coastguard Workerv_fract_f32 v1, v2 clamp 175*9880d681SAndroid Build Coastguard Worker// SICI: v_fract_f32_e64 v1, v2 clamp ; encoding: [0x01,0x08,0x40,0xd3,0x02,0x01,0x00,0x00] 176*9880d681SAndroid Build Coastguard Worker// VI: v_fract_f32_e64 v1, v2 clamp ; encoding: [0x01,0x80,0x5b,0xd1,0x02,0x01,0x00,0x00] 177*9880d681SAndroid Build Coastguard Worker 178*9880d681SAndroid Build Coastguard Workerv_fract_f32 v1, v2 mul:2 179*9880d681SAndroid Build Coastguard Worker// SICI: v_fract_f32_e64 v1, v2 mul:2 ; encoding: [0x01,0x00,0x40,0xd3,0x02,0x01,0x00,0x08] 180*9880d681SAndroid Build Coastguard Worker// VI: v_fract_f32_e64 v1, v2 mul:2 ; encoding: [0x01,0x00,0x5b,0xd1,0x02,0x01,0x00,0x08] 181*9880d681SAndroid Build Coastguard Worker 182*9880d681SAndroid Build Coastguard Workerv_fract_f32 v1, v2, clamp div:2 183*9880d681SAndroid Build Coastguard Worker// SICI: v_fract_f32_e64 v1, v2 clamp div:2 ; encoding: [0x01,0x08,0x40,0xd3,0x02,0x01,0x00,0x18] 184*9880d681SAndroid Build Coastguard Worker// VI: v_fract_f32_e64 v1, v2 clamp div:2 ; encoding: [0x01,0x80,0x5b,0xd1,0x02,0x01,0x00,0x18] 185*9880d681SAndroid Build Coastguard Worker 186*9880d681SAndroid Build Coastguard Worker// TODO: Finish VOP1 187*9880d681SAndroid Build Coastguard Worker 188*9880d681SAndroid Build Coastguard Worker///===---------------------------------------------------------------------===// 189*9880d681SAndroid Build Coastguard Worker// VOP2 Instructions 190*9880d681SAndroid Build Coastguard Worker///===---------------------------------------------------------------------===// 191*9880d681SAndroid Build Coastguard Worker 192*9880d681SAndroid Build Coastguard Worker// Test forced e64 encoding with e32 operands 193*9880d681SAndroid Build Coastguard Worker 194*9880d681SAndroid Build Coastguard Workerv_add_f32_e64 v1, v3, v5 195*9880d681SAndroid Build Coastguard Worker// SICI: v_add_f32_e64 v1, v3, v5 ; encoding: [0x01,0x00,0x06,0xd2,0x03,0x0b,0x02,0x00] 196*9880d681SAndroid Build Coastguard Worker// VI: v_add_f32_e64 v1, v3, v5 ; encoding: [0x01,0x00,0x01,0xd1,0x03,0x0b,0x02,0x00] 197*9880d681SAndroid Build Coastguard Worker 198*9880d681SAndroid Build Coastguard Worker 199*9880d681SAndroid Build Coastguard Worker// TODO: Modifier tests 200*9880d681SAndroid Build Coastguard Worker 201*9880d681SAndroid Build Coastguard Workerv_cndmask_b32 v1, v3, v5, s[4:5] 202*9880d681SAndroid Build Coastguard Worker// SICI: v_cndmask_b32_e64 v1, v3, v5, s[4:5] ; encoding: [0x01,0x00,0x00,0xd2,0x03,0x0b,0x12,0x00] 203*9880d681SAndroid Build Coastguard Worker// VI: v_cndmask_b32_e64 v1, v3, v5, s[4:5] ; encoding: [0x01,0x00,0x00,0xd1,0x03,0x0b,0x12,0x00] 204*9880d681SAndroid Build Coastguard Worker 205*9880d681SAndroid Build Coastguard Workerv_cndmask_b32_e64 v1, v3, v5, s[4:5] 206*9880d681SAndroid Build Coastguard Worker// SICI: v_cndmask_b32_e64 v1, v3, v5, s[4:5] ; encoding: [0x01,0x00,0x00,0xd2,0x03,0x0b,0x12,0x00] 207*9880d681SAndroid Build Coastguard Worker// VI: v_cndmask_b32_e64 v1, v3, v5, s[4:5] ; encoding: [0x01,0x00,0x00,0xd1,0x03,0x0b,0x12,0x00] 208*9880d681SAndroid Build Coastguard Worker 209*9880d681SAndroid Build Coastguard Workerv_cndmask_b32_e64 v1, v3, v5, vcc 210*9880d681SAndroid Build Coastguard Worker// SICI: v_cndmask_b32_e64 v1, v3, v5, vcc ; encoding: [0x01,0x00,0x00,0xd2,0x03,0x0b,0xaa,0x01] 211*9880d681SAndroid Build Coastguard Worker// VI: v_cndmask_b32_e64 v1, v3, v5, vcc ; encoding: [0x01,0x00,0x00,0xd1,0x03,0x0b,0xaa,0x01] 212*9880d681SAndroid Build Coastguard Worker 213*9880d681SAndroid Build Coastguard Worker//TODO: readlane, writelane 214*9880d681SAndroid Build Coastguard Worker 215*9880d681SAndroid Build Coastguard Workerv_add_f32 v1, v3, s5 216*9880d681SAndroid Build Coastguard Worker// SICI: v_add_f32_e64 v1, v3, s5 ; encoding: [0x01,0x00,0x06,0xd2,0x03,0x0b,0x00,0x00] 217*9880d681SAndroid Build Coastguard Worker// VI: v_add_f32_e64 v1, v3, s5 ; encoding: [0x01,0x00,0x01,0xd1,0x03,0x0b,0x00,0x00] 218*9880d681SAndroid Build Coastguard Worker 219*9880d681SAndroid Build Coastguard Workerv_sub_f32 v1, v3, s5 220*9880d681SAndroid Build Coastguard Worker// SICI: v_sub_f32_e64 v1, v3, s5 ; encoding: [0x01,0x00,0x08,0xd2,0x03,0x0b,0x00,0x00] 221*9880d681SAndroid Build Coastguard Worker// VI: v_sub_f32_e64 v1, v3, s5 ; encoding: [0x01,0x00,0x02,0xd1,0x03,0x0b,0x00,0x00] 222*9880d681SAndroid Build Coastguard Worker 223*9880d681SAndroid Build Coastguard Workerv_subrev_f32 v1, v3, s5 224*9880d681SAndroid Build Coastguard Worker// SICI: v_subrev_f32_e64 v1, v3, s5 ; encoding: [0x01,0x00,0x0a,0xd2,0x03,0x0b,0x00,0x00] 225*9880d681SAndroid Build Coastguard Worker// VI: v_subrev_f32_e64 v1, v3, s5 ; encoding: [0x01,0x00,0x03,0xd1,0x03,0x0b,0x00,0x00] 226*9880d681SAndroid Build Coastguard Worker 227*9880d681SAndroid Build Coastguard Workerv_mac_legacy_f32 v1, v3, s5 228*9880d681SAndroid Build Coastguard Worker// SICI: v_mac_legacy_f32_e64 v1, v3, s5 ; encoding: [0x01,0x00,0x0c,0xd2,0x03,0x0b,0x00,0x00] 229*9880d681SAndroid Build Coastguard Worker// NOVI: error: instruction not supported on this GPU 230*9880d681SAndroid Build Coastguard Worker 231*9880d681SAndroid Build Coastguard Workerv_mul_legacy_f32 v1, v3, s5 232*9880d681SAndroid Build Coastguard Worker// SICI: v_mul_legacy_f32_e64 v1, v3, s5 ; encoding: [0x01,0x00,0x0e,0xd2,0x03,0x0b,0x00,0x00] 233*9880d681SAndroid Build Coastguard Worker// VI: v_mul_legacy_f32_e64 v1, v3, s5 ; encoding: [0x01,0x00,0x04,0xd1,0x03,0x0b,0x00,0x00] 234*9880d681SAndroid Build Coastguard Worker 235*9880d681SAndroid Build Coastguard Workerv_mul_f32 v1, v3, s5 236*9880d681SAndroid Build Coastguard Worker// SICI: v_mul_f32_e64 v1, v3, s5 ; encoding: [0x01,0x00,0x10,0xd2,0x03,0x0b,0x00,0x00] 237*9880d681SAndroid Build Coastguard Worker// VI: v_mul_f32_e64 v1, v3, s5 ; encoding: [0x01,0x00,0x05,0xd1,0x03,0x0b,0x00,0x00] 238*9880d681SAndroid Build Coastguard Worker 239*9880d681SAndroid Build Coastguard Workerv_mul_i32_i24 v1, v3, s5 240*9880d681SAndroid Build Coastguard Worker// SICI: v_mul_i32_i24_e64 v1, v3, s5 ; encoding: [0x01,0x00,0x12,0xd2,0x03,0x0b,0x00,0x00] 241*9880d681SAndroid Build Coastguard Worker// VI: v_mul_i32_i24_e64 v1, v3, s5 ; encoding: [0x01,0x00,0x06,0xd1,0x03,0x0b,0x00,0x00] 242*9880d681SAndroid Build Coastguard Worker 243*9880d681SAndroid Build Coastguard Worker///===---------------------------------------------------------------------===// 244*9880d681SAndroid Build Coastguard Worker// VOP3 Instructions 245*9880d681SAndroid Build Coastguard Worker///===---------------------------------------------------------------------===// 246*9880d681SAndroid Build Coastguard Worker 247*9880d681SAndroid Build Coastguard Worker// TODO: Modifier tests 248*9880d681SAndroid Build Coastguard Worker 249*9880d681SAndroid Build Coastguard Workerv_mad_legacy_f32 v2, v4, v6, v8 250*9880d681SAndroid Build Coastguard Worker// SICI: v_mad_legacy_f32 v2, v4, v6, v8 ; encoding: [0x02,0x00,0x80,0xd2,0x04,0x0d,0x22,0x04] 251*9880d681SAndroid Build Coastguard Worker// VI: v_mad_legacy_f32 v2, v4, v6, v8 ; encoding: [0x02,0x00,0xc0,0xd1,0x04,0x0d,0x22,0x04] 252*9880d681SAndroid Build Coastguard Worker 253*9880d681SAndroid Build Coastguard Workerv_add_f64 v[0:1], v[2:3], v[5:6] 254*9880d681SAndroid Build Coastguard Worker// SICI: v_add_f64 v[0:1], v[2:3], v[5:6] ; encoding: [0x00,0x00,0xc8,0xd2,0x02,0x0b,0x02,0x00] 255*9880d681SAndroid Build Coastguard Worker// VI: v_add_f64 v[0:1], v[2:3], v[5:6] ; encoding: [0x00,0x00,0x80,0xd2,0x02,0x0b,0x02,0x00] 256*9880d681SAndroid Build Coastguard Worker 257*9880d681SAndroid Build Coastguard Workerv_add_f64_e64 v[0:1], v[2:3], v[5:6] 258*9880d681SAndroid Build Coastguard Worker// SICI: v_add_f64 v[0:1], v[2:3], v[5:6] ; encoding: [0x00,0x00,0xc8,0xd2,0x02,0x0b,0x02,0x00] 259*9880d681SAndroid Build Coastguard Worker// VI: v_add_f64 v[0:1], v[2:3], v[5:6] ; encoding: [0x00,0x00,0x80,0xd2,0x02,0x0b,0x02,0x00] 260*9880d681SAndroid Build Coastguard Worker 261*9880d681SAndroid Build Coastguard Workerv_add_f64 v[0:1], -v[2:3], v[5:6] 262*9880d681SAndroid Build Coastguard Worker// SICI: v_add_f64 v[0:1], -v[2:3], v[5:6] ; encoding: [0x00,0x00,0xc8,0xd2,0x02,0x0b,0x02,0x20] 263*9880d681SAndroid Build Coastguard Worker// VI: v_add_f64 v[0:1], -v[2:3], v[5:6] ; encoding: [0x00,0x00,0x80,0xd2,0x02,0x0b,0x02,0x20] 264*9880d681SAndroid Build Coastguard Worker 265*9880d681SAndroid Build Coastguard Workerv_add_f64_e64 v[0:1], -v[2:3], v[5:6] 266*9880d681SAndroid Build Coastguard Worker// SICI: v_add_f64 v[0:1], -v[2:3], v[5:6] ; encoding: [0x00,0x00,0xc8,0xd2,0x02,0x0b,0x02,0x20] 267*9880d681SAndroid Build Coastguard Worker// VI: v_add_f64 v[0:1], -v[2:3], v[5:6] ; encoding: [0x00,0x00,0x80,0xd2,0x02,0x0b,0x02,0x20] 268*9880d681SAndroid Build Coastguard Worker 269*9880d681SAndroid Build Coastguard Workerv_add_f64 v[0:1], v[2:3], -v[5:6] 270*9880d681SAndroid Build Coastguard Worker// SICI: v_add_f64 v[0:1], v[2:3], -v[5:6] ; encoding: [0x00,0x00,0xc8,0xd2,0x02,0x0b,0x02,0x40] 271*9880d681SAndroid Build Coastguard Worker// VI: v_add_f64 v[0:1], v[2:3], -v[5:6] ; encoding: [0x00,0x00,0x80,0xd2,0x02,0x0b,0x02,0x40] 272*9880d681SAndroid Build Coastguard Worker 273*9880d681SAndroid Build Coastguard Workerv_add_f64_e64 v[0:1], v[2:3], -v[5:6] 274*9880d681SAndroid Build Coastguard Worker// SICI: v_add_f64 v[0:1], v[2:3], -v[5:6] ; encoding: [0x00,0x00,0xc8,0xd2,0x02,0x0b,0x02,0x40] 275*9880d681SAndroid Build Coastguard Worker// VI: v_add_f64 v[0:1], v[2:3], -v[5:6] ; encoding: [0x00,0x00,0x80,0xd2,0x02,0x0b,0x02,0x40] 276*9880d681SAndroid Build Coastguard Worker 277*9880d681SAndroid Build Coastguard Workerv_add_f64 v[0:1], |v[2:3]|, v[5:6] 278*9880d681SAndroid Build Coastguard Worker// SICI: v_add_f64 v[0:1], |v[2:3]|, v[5:6] ; encoding: [0x00,0x01,0xc8,0xd2,0x02,0x0b,0x02,0x00] 279*9880d681SAndroid Build Coastguard Worker// VI: v_add_f64 v[0:1], |v[2:3]|, v[5:6] ; encoding: [0x00,0x01,0x80,0xd2,0x02,0x0b,0x02,0x00] 280*9880d681SAndroid Build Coastguard Worker 281*9880d681SAndroid Build Coastguard Workerv_add_f64 v[0:1], abs(v[2:3]), v[5:6] 282*9880d681SAndroid Build Coastguard Worker// SICI: v_add_f64 v[0:1], |v[2:3]|, v[5:6] ; encoding: [0x00,0x01,0xc8,0xd2,0x02,0x0b,0x02,0x00] 283*9880d681SAndroid Build Coastguard Worker// VI: v_add_f64 v[0:1], |v[2:3]|, v[5:6] ; encoding: [0x00,0x01,0x80,0xd2,0x02,0x0b,0x02,0x00] 284*9880d681SAndroid Build Coastguard Worker 285*9880d681SAndroid Build Coastguard Workerv_add_f64_e64 v[0:1], |v[2:3]|, v[5:6] 286*9880d681SAndroid Build Coastguard Worker// SICI: v_add_f64 v[0:1], |v[2:3]|, v[5:6] ; encoding: [0x00,0x01,0xc8,0xd2,0x02,0x0b,0x02,0x00] 287*9880d681SAndroid Build Coastguard Worker// VI: v_add_f64 v[0:1], |v[2:3]|, v[5:6] ; encoding: [0x00,0x01,0x80,0xd2,0x02,0x0b,0x02,0x00] 288*9880d681SAndroid Build Coastguard Worker 289*9880d681SAndroid Build Coastguard Workerv_add_f64_e64 v[0:1], abs(v[2:3]), v[5:6] 290*9880d681SAndroid Build Coastguard Worker// SICI: v_add_f64 v[0:1], |v[2:3]|, v[5:6] ; encoding: [0x00,0x01,0xc8,0xd2,0x02,0x0b,0x02,0x00] 291*9880d681SAndroid Build Coastguard Worker// VI: v_add_f64 v[0:1], |v[2:3]|, v[5:6] ; encoding: [0x00,0x01,0x80,0xd2,0x02,0x0b,0x02,0x00] 292*9880d681SAndroid Build Coastguard Worker 293*9880d681SAndroid Build Coastguard Workerv_add_f64 v[0:1], v[2:3], |v[5:6]| 294*9880d681SAndroid Build Coastguard Worker// SICI: v_add_f64 v[0:1], v[2:3], |v[5:6]| ; encoding: [0x00,0x02,0xc8,0xd2,0x02,0x0b,0x02,0x00] 295*9880d681SAndroid Build Coastguard Worker// VI: v_add_f64 v[0:1], v[2:3], |v[5:6]| ; encoding: [0x00,0x02,0x80,0xd2,0x02,0x0b,0x02,0x00] 296*9880d681SAndroid Build Coastguard Worker 297*9880d681SAndroid Build Coastguard Workerv_add_f64 v[0:1], v[2:3], abs(v[5:6]) 298*9880d681SAndroid Build Coastguard Worker// SICI: v_add_f64 v[0:1], v[2:3], |v[5:6]| ; encoding: [0x00,0x02,0xc8,0xd2,0x02,0x0b,0x02,0x00] 299*9880d681SAndroid Build Coastguard Worker// VI: v_add_f64 v[0:1], v[2:3], |v[5:6]| ; encoding: [0x00,0x02,0x80,0xd2,0x02,0x0b,0x02,0x00] 300*9880d681SAndroid Build Coastguard Worker 301*9880d681SAndroid Build Coastguard Workerv_add_f64_e64 v[0:1], v[2:3], |v[5:6]| 302*9880d681SAndroid Build Coastguard Worker// SICI: v_add_f64 v[0:1], v[2:3], |v[5:6]| ; encoding: [0x00,0x02,0xc8,0xd2,0x02,0x0b,0x02,0x00] 303*9880d681SAndroid Build Coastguard Worker// VI: v_add_f64 v[0:1], v[2:3], |v[5:6]| ; encoding: [0x00,0x02,0x80,0xd2,0x02,0x0b,0x02,0x00] 304*9880d681SAndroid Build Coastguard Worker 305*9880d681SAndroid Build Coastguard Workerv_add_f64_e64 v[0:1], v[2:3], abs(v[5:6]) 306*9880d681SAndroid Build Coastguard Worker// SICI: v_add_f64 v[0:1], v[2:3], |v[5:6]| ; encoding: [0x00,0x02,0xc8,0xd2,0x02,0x0b,0x02,0x00] 307*9880d681SAndroid Build Coastguard Worker// VI: v_add_f64 v[0:1], v[2:3], |v[5:6]| ; encoding: [0x00,0x02,0x80,0xd2,0x02,0x0b,0x02,0x00] 308*9880d681SAndroid Build Coastguard Worker 309*9880d681SAndroid Build Coastguard Workerv_add_f64 v[0:1], -v[2:3], |v[5:6]| clamp mul:4 310*9880d681SAndroid Build Coastguard Worker// SICI: v_add_f64 v[0:1], -v[2:3], |v[5:6]| clamp mul:4 ; encoding: [0x00,0x0a,0xc8,0xd2,0x02,0x0b,0x02,0x30] 311*9880d681SAndroid Build Coastguard Worker// VI: v_add_f64 v[0:1], -v[2:3], |v[5:6]| clamp mul:4 ; encoding: [0x00,0x82,0x80,0xd2,0x02,0x0b,0x02,0x30] 312*9880d681SAndroid Build Coastguard Worker 313*9880d681SAndroid Build Coastguard Workerv_add_f64 v[0:1], -v[2:3], abs(v[5:6]) clamp mul:4 314*9880d681SAndroid Build Coastguard Worker// SICI: v_add_f64 v[0:1], -v[2:3], |v[5:6]| clamp mul:4 ; encoding: [0x00,0x0a,0xc8,0xd2,0x02,0x0b,0x02,0x30] 315*9880d681SAndroid Build Coastguard Worker// VI: v_add_f64 v[0:1], -v[2:3], |v[5:6]| clamp mul:4 ; encoding: [0x00,0x82,0x80,0xd2,0x02,0x0b,0x02,0x30] 316*9880d681SAndroid Build Coastguard Worker 317*9880d681SAndroid Build Coastguard Workerv_add_f64_e64 v[0:1], -v[2:3], |v[5:6]| clamp mul:4 318*9880d681SAndroid Build Coastguard Worker// SICI: v_add_f64 v[0:1], -v[2:3], |v[5:6]| clamp mul:4 ; encoding: [0x00,0x0a,0xc8,0xd2,0x02,0x0b,0x02,0x30] 319*9880d681SAndroid Build Coastguard Worker// VI: v_add_f64 v[0:1], -v[2:3], |v[5:6]| clamp mul:4 ; encoding: [0x00,0x82,0x80,0xd2,0x02,0x0b,0x02,0x30] 320*9880d681SAndroid Build Coastguard Worker 321*9880d681SAndroid Build Coastguard Workerv_add_f64_e64 v[0:1], -v[2:3], abs(v[5:6]) clamp mul:4 322*9880d681SAndroid Build Coastguard Worker// SICI: v_add_f64 v[0:1], -v[2:3], |v[5:6]| clamp mul:4 ; encoding: [0x00,0x0a,0xc8,0xd2,0x02,0x0b,0x02,0x30] 323*9880d681SAndroid Build Coastguard Worker// VI: v_add_f64 v[0:1], -v[2:3], |v[5:6]| clamp mul:4 ; encoding: [0x00,0x82,0x80,0xd2,0x02,0x0b,0x02,0x30] 324*9880d681SAndroid Build Coastguard Worker 325*9880d681SAndroid Build Coastguard Workerv_div_scale_f64 v[24:25], vcc, v[22:23], v[22:23], v[20:21] 326*9880d681SAndroid Build Coastguard Worker// SICI: v_div_scale_f64 v[24:25], vcc, v[22:23], v[22:23], v[20:21] ; encoding: [0x18,0x6a,0xdc,0xd2,0x16,0x2d,0x52,0x04] 327*9880d681SAndroid Build Coastguard Worker// VI: v_div_scale_f64 v[24:25], vcc, v[22:23], v[22:23], v[20:21] ; encoding: [0x18,0x6a,0xe1,0xd1,0x16,0x2d,0x52,0x04] 328*9880d681SAndroid Build Coastguard Worker 329*9880d681SAndroid Build Coastguard Workerv_div_scale_f64 v[24:25], s[10:11], v[22:23], v[20:21], v[20:21] 330*9880d681SAndroid Build Coastguard Worker// SICI: v_div_scale_f64 v[24:25], s[10:11], v[22:23], v[20:21], v[20:21] ; encoding: [0x18,0x0a,0xdc,0xd2,0x16,0x29,0x52,0x04] 331*9880d681SAndroid Build Coastguard Worker// VI: v_div_scale_f64 v[24:25], s[10:11], v[22:23], v[20:21], v[20:21] ; encoding: [0x18,0x0a,0xe1,0xd1,0x16,0x29,0x52,0x04] 332*9880d681SAndroid Build Coastguard Worker 333*9880d681SAndroid Build Coastguard Workerv_div_scale_f32 v24, vcc, v22, v22, v20 334*9880d681SAndroid Build Coastguard Worker// SICI: v_div_scale_f32 v24, vcc, v22, v22, v20 ; encoding: [0x18,0x6a,0xda,0xd2,0x16,0x2d,0x52,0x04] 335*9880d681SAndroid Build Coastguard Worker// VI: v_div_scale_f32 v24, vcc, v22, v22, v20 ; encoding: [0x18,0x6a,0xe0,0xd1,0x16,0x2d,0x52,0x04] 336*9880d681SAndroid Build Coastguard Worker 337*9880d681SAndroid Build Coastguard Workerv_div_scale_f32 v24, vcc, s[10:11], v22, v20 338*9880d681SAndroid Build Coastguard Worker// SICI: v_div_scale_f32 v24, vcc, s[10:11], v22, v20 ; encoding: [0x18,0x6a,0xda,0xd2,0x0a,0x2c,0x52,0x04] 339*9880d681SAndroid Build Coastguard Worker// VI: v_div_scale_f32 v24, vcc, s[10:11], v22, v20 ; encoding: [0x18,0x6a,0xe0,0xd1,0x0a,0x2c,0x52,0x04] 340*9880d681SAndroid Build Coastguard Worker 341*9880d681SAndroid Build Coastguard Workerv_div_scale_f32 v24, s[10:11], v22, v22, v20 342*9880d681SAndroid Build Coastguard Worker// SICI: v_div_scale_f32 v24, s[10:11], v22, v22, v20 ; encoding: [0x18,0x0a,0xda,0xd2,0x16,0x2d,0x52,0x04] 343*9880d681SAndroid Build Coastguard Worker// VI: v_div_scale_f32 v24, s[10:11], v22, v22, v20 ; encoding: [0x18,0x0a,0xe0,0xd1,0x16,0x2d,0x52,0x04] 344*9880d681SAndroid Build Coastguard Worker 345*9880d681SAndroid Build Coastguard Workerv_div_scale_f32 v24, vcc, v22, 1.0, v22 346*9880d681SAndroid Build Coastguard Worker// SICI: v_div_scale_f32 v24, vcc, v22, 1.0, v22 ; encoding: [0x18,0x6a,0xda,0xd2,0x16,0xe5,0x59,0x04] 347*9880d681SAndroid Build Coastguard Worker// VI: v_div_scale_f32 v24, vcc, v22, 1.0, v22 ; encoding: [0x18,0x6a,0xe0,0xd1,0x16,0xe5,0x59,0x04] 348*9880d681SAndroid Build Coastguard Worker 349*9880d681SAndroid Build Coastguard Workerv_div_scale_f32 v24, vcc, v22, v22, -2.0 350*9880d681SAndroid Build Coastguard Worker// SICI: v_div_scale_f32 v24, vcc, v22, v22, -2.0 ; encoding: [0x18,0x6a,0xda,0xd2,0x16,0x2d,0xd2,0x83] 351*9880d681SAndroid Build Coastguard Worker// VI: v_div_scale_f32 v24, vcc, v22, v22, -2.0 ; encoding: [0x18,0x6a,0xe0,0xd1,0x16,0x2d,0xd2,0x83] 352*9880d681SAndroid Build Coastguard Worker 353*9880d681SAndroid Build Coastguard Workerv_div_scale_f32 v24, vcc, v22, v22, 0xc0000000 354*9880d681SAndroid Build Coastguard Worker// SICI: v_div_scale_f32 v24, vcc, v22, v22, -2.0 ; encoding: [0x18,0x6a,0xda,0xd2,0x16,0x2d,0xd6,0x03] 355*9880d681SAndroid Build Coastguard Worker// VI: v_div_scale_f32 v24, vcc, v22, v22, -2.0 ; encoding: [0x18,0x6a,0xe0,0xd1,0x16,0x2d,0xd6,0x03] 356*9880d681SAndroid Build Coastguard Worker 357*9880d681SAndroid Build Coastguard Workerv_mad_f32 v9, 0.5, v5, -v8 358*9880d681SAndroid Build Coastguard Worker// SICI: v_mad_f32 v9, 0.5, v5, -v8 ; encoding: [0x09,0x00,0x82,0xd2,0xf0,0x0a,0x22,0x84] 359*9880d681SAndroid Build Coastguard Worker// VI: v_mad_f32 v9, 0.5, v5, -v8 ; encoding: [0x09,0x00,0xc1,0xd1,0xf0,0x0a,0x22,0x84] 360