brintos

brintos / llvm-project-archived public Read only

0
0
Text · 21.6 KiB · 56a3cca Raw
397 lines · plain
1// RUN: not llvm-mc -triple=amdgcn -mcpu=gfx800 %s 2>&1 | FileCheck %s2// RUN: not llvm-mc -triple=amdgcn -mcpu=gfx900 %s 2>&1 | FileCheck %s3// RUN: not llvm-mc -triple=amdgcn -mcpu=gfx906 %s 2>&1 | FileCheck %s --check-prefix=GFX906-GFX9084// RUN: not llvm-mc -triple=amdgcn -mcpu=gfx908 %s 2>&1 | FileCheck %s --check-prefix=GFX906-GFX9085// RUN: not llvm-mc -triple=amdgcn -mcpu=gfx1013 %s 2>&1 | FileCheck %s --check-prefix=GFX10136 7//8// Test unsupported GPUs.9//10 11// CHECK: :[[@LINE+1]]:{{[0-9]+}}: error: instruction not supported on this GPU12v_fmac_f32 v0, v1, v213// CHECK: :[[@LINE+1]]:{{[0-9]+}}: error: instruction not supported on this GPU14v_xnor_b32 v0, v1, v215// CHECK: :[[@LINE+2]]:{{[0-9]+}}: error: instruction not supported on this GPU16// GFX1013: :[[@LINE+1]]:{{[0-9]+}}: error: instruction not supported on this GPU17v_dot2_f32_f16 v0, v1, v2, v318// CHECK: :[[@LINE+2]]:{{[0-9]+}}: error: instruction not supported on this GPU19// GFX1013: :[[@LINE+1]]:{{[0-9]+}}: error: instruction not supported on this GPU20v_dot2_i32_i16 v0, v1, v2, v321// CHECK: :[[@LINE+2]]:{{[0-9]+}}: error: instruction not supported on this GPU22// GFX1013: :[[@LINE+1]]:{{[0-9]+}}: error: instruction not supported on this GPU23v_dot2_u32_u16 v0, v1, v2, v324// CHECK: :[[@LINE+2]]:{{[0-9]+}}: error: instruction not supported on this GPU25// GFX1013: :[[@LINE+1]]:{{[0-9]+}}: error: instruction not supported on this GPU26v_dot4_i32_i8 v0, v1, v2, v327// CHECK: :[[@LINE+2]]:{{[0-9]+}}: error: instruction not supported on this GPU28// GFX1013: :[[@LINE+1]]:{{[0-9]+}}: error: instruction not supported on this GPU29v_dot4_u32_u8 v0, v1, v2, v330// CHECK: :[[@LINE+2]]:{{[0-9]+}}: error: instruction not supported on this GPU31// GFX1013: :[[@LINE+1]]:{{[0-9]+}}: error: instruction not supported on this GPU32v_dot8_i32_i4 v0, v1, v2, v333// CHECK: :[[@LINE+2]]:{{[0-9]+}}: error: instruction not supported on this GPU34// GFX1013: :[[@LINE+1]]:{{[0-9]+}}: error: instruction not supported on this GPU35v_dot8_u32_u4 v0, v1, v2, v336 37//38// Test invalid operands.39//40 41// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid operand for instruction42v_dot2_f32_f16 v0, v1, v2, v3 op_sel43// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: expected a left square bracket44v_dot2_f32_f16 v0, v1, v2, v3 op_sel:45// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: unknown token in expression46v_dot2_f32_f16 v0, v1, v2, v3 op_sel:[47// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: expected a left square bracket48v_dot2_f32_f16 v0, v1, v2, v3 op_sel:]49// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: unknown token in expression50v_dot2_f32_f16 v0, v1, v2, v3 op_sel:[]51// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: unknown token in expression52v_dot2_f32_f16 v0, v1, v2, v3 op_sel:[,]53// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: unknown token in expression54v_dot2_f32_f16 v0, v1, v2, v3 op_sel:[,0]55// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid op_sel value.56v_dot2_f32_f16 v0, v1, v2, v3 op_sel:[0,2]57// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid op_sel value.58v_dot2_f32_f16 v0, v1, v2, v3 op_sel:[2,0]59// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid op_sel value.60v_dot2_f32_f16 v0, v1, v2, v3 op_sel:[2,2]61// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid op_sel value.62v_dot2_f32_f16 v0, v1, v2, v3 op_sel:[0,-1]63// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid op_sel value.64v_dot2_f32_f16 v0, v1, v2, v3 op_sel:[-1,0]65// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid op_sel value.66v_dot2_f32_f16 v0, v1, v2, v3 op_sel:[-1,-1]67// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: expected a closing square bracket68v_dot2_f32_f16 v0, v1, v2, v3 op_sel:[0,0,0,0,0]69// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid operand for instruction70v_dot2_f32_f16 v0, v1, v2, v3 op_sel_hi71// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: expected a left square bracket72v_dot2_f32_f16 v0, v1, v2, v3 op_sel_hi:73// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: unknown token in expression74v_dot2_f32_f16 v0, v1, v2, v3 op_sel_hi:[75// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: expected a left square bracket76v_dot2_f32_f16 v0, v1, v2, v3 op_sel_hi:]77// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: unknown token in expression78v_dot2_f32_f16 v0, v1, v2, v3 op_sel_hi:[]79// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: unknown token in expression80v_dot2_f32_f16 v0, v1, v2, v3 op_sel_hi:[,]81// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: unknown token in expression82v_dot2_f32_f16 v0, v1, v2, v3 op_sel_hi:[,0]83// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid op_sel_hi value.84v_dot2_f32_f16 v0, v1, v2, v3 op_sel_hi:[0,2]85// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid op_sel_hi value.86v_dot2_f32_f16 v0, v1, v2, v3 op_sel_hi:[2,0]87// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid op_sel_hi value.88v_dot2_f32_f16 v0, v1, v2, v3 op_sel_hi:[2,2]89// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid op_sel_hi value.90v_dot2_f32_f16 v0, v1, v2, v3 op_sel_hi:[0,-1]91// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid op_sel_hi value.92v_dot2_f32_f16 v0, v1, v2, v3 op_sel_hi:[-1,0]93// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid op_sel_hi value.94v_dot2_f32_f16 v0, v1, v2, v3 op_sel_hi:[-1,-1]95// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: expected a closing square bracket96v_dot2_f32_f16 v0, v1, v2, v3 op_sel_hi:[0,0,0,0,0]97// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid operand for instruction98v_dot2_f32_f16 v0, v1, v2, v3 neg_lo99// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: expected a left square bracket100v_dot2_f32_f16 v0, v1, v2, v3 neg_lo:101// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: unknown token in expression102v_dot2_f32_f16 v0, v1, v2, v3 neg_lo:[103// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: expected a left square bracket104v_dot2_f32_f16 v0, v1, v2, v3 neg_lo:]105// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: unknown token in expression106v_dot2_f32_f16 v0, v1, v2, v3 neg_lo:[]107// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: unknown token in expression108v_dot2_f32_f16 v0, v1, v2, v3 neg_lo:[,]109// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: unknown token in expression110v_dot2_f32_f16 v0, v1, v2, v3 neg_lo:[,0]111// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid neg_lo value.112v_dot2_f32_f16 v0, v1, v2, v3 neg_lo:[0,2]113// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid neg_lo value.114v_dot2_f32_f16 v0, v1, v2, v3 neg_lo:[2,0]115// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid neg_lo value.116v_dot2_f32_f16 v0, v1, v2, v3 neg_lo:[2,2]117// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid neg_lo value.118v_dot2_f32_f16 v0, v1, v2, v3 neg_lo:[0,-1]119// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid neg_lo value.120v_dot2_f32_f16 v0, v1, v2, v3 neg_lo:[-1,0]121// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid neg_lo value.122v_dot2_f32_f16 v0, v1, v2, v3 neg_lo:[-1,-1]123// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: expected a closing square bracket124v_dot2_f32_f16 v0, v1, v2, v3 neg_lo:[0,0,0,0,0]125// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid operand for instruction126v_dot2_f32_f16 v0, v1, v2, v3 neg_hi127// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: expected a left square bracket128v_dot2_f32_f16 v0, v1, v2, v3 neg_hi:129// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: unknown token in expression130v_dot2_f32_f16 v0, v1, v2, v3 neg_hi:[131// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: expected a left square bracket132v_dot2_f32_f16 v0, v1, v2, v3 neg_hi:]133// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: unknown token in expression134v_dot2_f32_f16 v0, v1, v2, v3 neg_hi:[]135// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: unknown token in expression136v_dot2_f32_f16 v0, v1, v2, v3 neg_hi:[,]137// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: unknown token in expression138v_dot2_f32_f16 v0, v1, v2, v3 neg_hi:[,0]139// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid neg_hi value.140v_dot2_f32_f16 v0, v1, v2, v3 neg_hi:[0,2]141// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid neg_hi value.142v_dot2_f32_f16 v0, v1, v2, v3 neg_hi:[2,0]143// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid neg_hi value.144v_dot2_f32_f16 v0, v1, v2, v3 neg_hi:[2,2]145// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid neg_hi value.146v_dot2_f32_f16 v0, v1, v2, v3 neg_hi:[0,-1]147// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid neg_hi value.148v_dot2_f32_f16 v0, v1, v2, v3 neg_hi:[-1,0]149// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid neg_hi value.150v_dot2_f32_f16 v0, v1, v2, v3 neg_hi:[-1,-1]151// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: expected a closing square bracket152v_dot2_f32_f16 v0, v1, v2, v3 neg_hi:[0,0,0,0,0]153// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid operand for instruction154v_dot2_i32_i16 v0, v1, v2, v3 op_sel155// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: expected a left square bracket156v_dot2_i32_i16 v0, v1, v2, v3 op_sel:157// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: unknown token in expression158v_dot2_i32_i16 v0, v1, v2, v3 op_sel:[159// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: expected a left square bracket160v_dot2_i32_i16 v0, v1, v2, v3 op_sel:]161// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: unknown token in expression162v_dot2_i32_i16 v0, v1, v2, v3 op_sel:[]163// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: unknown token in expression164v_dot2_i32_i16 v0, v1, v2, v3 op_sel:[,]165// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: unknown token in expression166v_dot2_i32_i16 v0, v1, v2, v3 op_sel:[,0]167// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid op_sel value.168v_dot2_i32_i16 v0, v1, v2, v3 op_sel:[0,2]169// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid op_sel value.170v_dot2_i32_i16 v0, v1, v2, v3 op_sel:[2,0]171// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid op_sel value.172v_dot2_i32_i16 v0, v1, v2, v3 op_sel:[2,2]173// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid op_sel value.174v_dot2_i32_i16 v0, v1, v2, v3 op_sel:[0,-1]175// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid op_sel value.176v_dot2_i32_i16 v0, v1, v2, v3 op_sel:[-1,0]177// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid op_sel value.178v_dot2_i32_i16 v0, v1, v2, v3 op_sel:[-1,-1]179// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: expected a closing square bracket180v_dot2_i32_i16 v0, v1, v2, v3 op_sel:[0,0,0,0,0]181// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid operand for instruction182v_dot2_i32_i16 v0, v1, v2, v3 op_sel_hi183// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: expected a left square bracket184v_dot2_i32_i16 v0, v1, v2, v3 op_sel_hi:185// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: unknown token in expression186v_dot2_i32_i16 v0, v1, v2, v3 op_sel_hi:[187// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: expected a left square bracket188v_dot2_i32_i16 v0, v1, v2, v3 op_sel_hi:]189// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: unknown token in expression190v_dot2_i32_i16 v0, v1, v2, v3 op_sel_hi:[]191// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: unknown token in expression192v_dot2_i32_i16 v0, v1, v2, v3 op_sel_hi:[,]193// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: unknown token in expression194v_dot2_i32_i16 v0, v1, v2, v3 op_sel_hi:[,0]195// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid op_sel_hi value.196v_dot2_i32_i16 v0, v1, v2, v3 op_sel_hi:[0,2]197// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid op_sel_hi value.198v_dot2_i32_i16 v0, v1, v2, v3 op_sel_hi:[2,0]199// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid op_sel_hi value.200v_dot2_i32_i16 v0, v1, v2, v3 op_sel_hi:[2,2]201// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid op_sel_hi value.202v_dot2_i32_i16 v0, v1, v2, v3 op_sel_hi:[0,-1]203// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid op_sel_hi value.204v_dot2_i32_i16 v0, v1, v2, v3 op_sel_hi:[-1,0]205// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid op_sel_hi value.206v_dot2_i32_i16 v0, v1, v2, v3 op_sel_hi:[-1,-1]207// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: expected a closing square bracket208v_dot2_i32_i16 v0, v1, v2, v3 op_sel_hi:[0,0,0,0,0]209// FIXME-GFX906: :[[@LINE+1]]:{{[0-9]+}}: error: invalid operand for instruction210v_dot2_i32_i16 v0, v1, v2, v3 neg_lo:[0,0]211// FIXME-GFX906: :[[@LINE+1]]:{{[0-9]+}}: error: invalid operand for instruction212v_dot2_i32_i16 v0, v1, v2, v3 neg_hi:[0,0]213// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid operand for instruction214v_dot2_u32_u16 v0, v1, v2, v3 op_sel215// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: expected a left square bracket216v_dot2_u32_u16 v0, v1, v2, v3 op_sel:217// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: unknown token in expression218v_dot2_u32_u16 v0, v1, v2, v3 op_sel:[219// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: expected a left square bracket220v_dot2_u32_u16 v0, v1, v2, v3 op_sel:]221// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: unknown token in expression222v_dot2_u32_u16 v0, v1, v2, v3 op_sel:[]223// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: unknown token in expression224v_dot2_u32_u16 v0, v1, v2, v3 op_sel:[,]225// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: unknown token in expression226v_dot2_u32_u16 v0, v1, v2, v3 op_sel:[,0]227// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid op_sel value.228v_dot2_u32_u16 v0, v1, v2, v3 op_sel:[0,2]229// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid op_sel value.230v_dot2_u32_u16 v0, v1, v2, v3 op_sel:[2,0]231// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid op_sel value.232v_dot2_u32_u16 v0, v1, v2, v3 op_sel:[2,2]233// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid op_sel value.234v_dot2_u32_u16 v0, v1, v2, v3 op_sel:[0,-1]235// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid op_sel value.236v_dot2_u32_u16 v0, v1, v2, v3 op_sel:[-1,0]237// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid op_sel value.238v_dot2_u32_u16 v0, v1, v2, v3 op_sel:[-1,-1]239// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: expected a closing square bracket240v_dot2_u32_u16 v0, v1, v2, v3 op_sel:[0,0,0,0,0]241// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid operand for instruction242v_dot2_u32_u16 v0, v1, v2, v3 op_sel_hi243// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: expected a left square bracket244v_dot2_u32_u16 v0, v1, v2, v3 op_sel_hi:245// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: unknown token in expression246v_dot2_u32_u16 v0, v1, v2, v3 op_sel_hi:[247// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: expected a left square bracket248v_dot2_u32_u16 v0, v1, v2, v3 op_sel_hi:]249// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: unknown token in expression250v_dot2_u32_u16 v0, v1, v2, v3 op_sel_hi:[]251// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: unknown token in expression252v_dot2_u32_u16 v0, v1, v2, v3 op_sel_hi:[,]253// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: unknown token in expression254v_dot2_u32_u16 v0, v1, v2, v3 op_sel_hi:[,0]255// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid op_sel_hi value256v_dot2_u32_u16 v0, v1, v2, v3 op_sel_hi:[0,2]257// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid op_sel_hi value.258v_dot2_u32_u16 v0, v1, v2, v3 op_sel_hi:[2,0]259// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid op_sel_hi value.260v_dot2_u32_u16 v0, v1, v2, v3 op_sel_hi:[2,2]261// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid op_sel_hi value.262v_dot2_u32_u16 v0, v1, v2, v3 op_sel_hi:[0,-1]263// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid op_sel_hi value.264v_dot2_u32_u16 v0, v1, v2, v3 op_sel_hi:[-1,0]265// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid op_sel_hi value.266v_dot2_u32_u16 v0, v1, v2, v3 op_sel_hi:[-1,-1]267// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: expected a closing square bracket268v_dot2_u32_u16 v0, v1, v2, v3 op_sel_hi:[0,0,0,0,0]269// FIXME-GFX906: :[[@LINE+1]]:{{[0-9]+}}: error: invalid operand for instruction270v_dot2_u32_u16 v0, v1, v2, v3 neg_lo:[0,0]271// FIXME-GFX906: :[[@LINE+1]]:{{[0-9]+}}: error: invalid operand for instruction272v_dot2_u32_u16 v0, v1, v2, v3 neg_hi:[0,0]273 274//275// Test regular modifiers.276//277 278// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand279v_dot2_f32_f16 v0, |v1|, v2, v3280// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand281v_dot2_f32_f16 v0, v1, |v2|, v3282// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand283v_dot2_f32_f16 v0, v1, v2, |v3|284// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand285v_dot2_f32_f16 v0, |v1|, |v2|, v3286// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand287v_dot2_f32_f16 v0, |v1|, v2, |v3|288// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand289v_dot2_f32_f16 v0, |v1|, |v2|, |v3|290// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand291v_dot2_f32_f16 v0, abs(v1), v2, v3292// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand293v_dot2_f32_f16 v0, v1, abs(v2), v3294// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand295v_dot2_f32_f16 v0, v1, v2, abs(v3)296// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand297v_dot2_f32_f16 v0, abs(v1), abs(v2), v3298// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand299v_dot2_f32_f16 v0, abs(v1), v2, abs(v3)300// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand301v_dot2_f32_f16 v0, abs(v1), abs(v2), abs(v3)302// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand303v_dot2_f32_f16 v0, -v1, v2, v3304// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand305v_dot2_f32_f16 v0, v1, -v2, v3306// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand307v_dot2_f32_f16 v0, v1, v2, -v3308// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand309v_dot2_f32_f16 v0, -v1, -v2, v3310// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand311v_dot2_f32_f16 v0, -v1, v2, -v3312// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand313v_dot2_f32_f16 v0, -v1, -v2, -v3314// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand315v_dot2_i32_i16 v0, |v1|, v2, v3316// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand317v_dot2_i32_i16 v0, v1, |v2|, v3318// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand319v_dot2_i32_i16 v0, v1, v2, |v3|320// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand321v_dot2_i32_i16 v0, |v1|, |v2|, v3322// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand323v_dot2_i32_i16 v0, |v1|, v2, |v3|324// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand325v_dot2_i32_i16 v0, |v1|, |v2|, |v3|326// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand327v_dot2_i32_i16 v0, abs(v1), v2, v3328// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand329v_dot2_i32_i16 v0, v1, abs(v2), v3330// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand331v_dot2_i32_i16 v0, v1, v2, abs(v3)332// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand333v_dot2_i32_i16 v0, abs(v1), abs(v2), v3334// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand335v_dot2_i32_i16 v0, abs(v1), v2, abs(v3)336// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand337v_dot2_i32_i16 v0, abs(v1), abs(v2), abs(v3)338// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand339v_dot2_i32_i16 v0, -v1, v2, v3340// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand341v_dot2_i32_i16 v0, v1, -v2, v3342// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand343v_dot2_i32_i16 v0, v1, v2, -v3344// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand345v_dot2_i32_i16 v0, -v1, -v2, v3346// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand347v_dot2_i32_i16 v0, -v1, v2, -v3348// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand349v_dot2_i32_i16 v0, -v1, -v2, -v3350// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand351v_dot2_u32_u16 v0, |v1|, v2, v3352// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand353v_dot2_u32_u16 v0, v1, |v2|, v3354// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand355v_dot2_u32_u16 v0, v1, v2, |v3|356// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand357v_dot2_u32_u16 v0, |v1|, |v2|, v3358// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand359v_dot2_u32_u16 v0, |v1|, v2, |v3|360// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand361v_dot2_u32_u16 v0, |v1|, |v2|, |v3|362// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand363v_dot2_u32_u16 v0, abs(v1), v2, v3364// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand365v_dot2_u32_u16 v0, v1, abs(v2), v3366// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand367v_dot2_u32_u16 v0, v1, v2, abs(v3)368// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand369v_dot2_u32_u16 v0, abs(v1), abs(v2), v3370// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand371v_dot2_u32_u16 v0, abs(v1), v2, abs(v3)372// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand373v_dot2_u32_u16 v0, abs(v1), abs(v2), abs(v3)374// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand375v_dot2_u32_u16 v0, -v1, v2, v3376// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand377v_dot2_u32_u16 v0, v1, -v2, v3378// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand379v_dot2_u32_u16 v0, v1, v2, -v3380// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand381v_dot2_u32_u16 v0, -v1, -v2, v3382// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand383v_dot2_u32_u16 v0, -v1, v2, -v3384// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: not a valid operand385v_dot2_u32_u16 v0, -v1, -v2, -v3386 387//388// Test constant bus restrictions.389//390 391// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid operand (violates constant bus restrictions)392v_dot2_f32_f16 v255, s1, s2, s3393// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid operand (violates constant bus restrictions)394v_dot2_i32_i16 v255, s1, s2, s3395// GFX906-GFX908: :[[@LINE+1]]:{{[0-9]+}}: error: invalid operand (violates constant bus restrictions)396v_dot2_u32_u16 v255, s1, s2, s3397