Lines Matching refs:get

141                "Wrong base format for instruction", instr.get());
147 "Format cannot have VOP3/VOP3B applied", instr.get());
154 "Format cannot have SDWA applied", instr.get());
156 check(program->gfx_level >= GFX8, "SDWA is GFX8 to GFX10.3 only", instr.get());
157 check(program->gfx_level < GFX11, "SDWA is GFX8 to GFX10.3 only", instr.get());
161 instr.get());
164 "SDWA VOPC clamp only supported on GFX8", instr.get());
167 "SDWA+VOPC definition must be fixed to vcc on GFX8", instr.get());
171 instr.get());
173 "SDWA definition selection size must be at most definition size", instr.get());
176 "SDWA definition selection size must be 1, 2 or 4 bytes", instr.get());
178 instr.get());
181 instr.get());
183 "SDWA dst_sel offset must be 0 for subdword definitions", instr.get());
188 check(op.bytes() <= 4, "SDWA operands must not be larger than 4 bytes", instr.get());
190 "SDWA operand selection size must be at most operand size", instr.get());
192 "SDWA operand selection size must be 1, 2 or 4 bytes", instr.get());
194 instr.get());
198 "3rd operand must be fixed to vcc with SDWA", instr.get());
202 "2nd definition must be fixed to vcc with SDWA", instr.get());
222 check(sdwa_opcodes || feature_mac, "SDWA can't be used with this opcode", instr.get());
229 instr.get());
235 check((vop3.opsel & (1 << i)) == 0, "Unexpected opsel for operand", instr.get());
239 instr.get());
245 "v_fma_mix_f32/v_fma_mix_f16 must have v1/v2b definition", instr.get());
252 "Unexpected opsel for subdword operand", instr.get());
255 instr.get());
268 check(can_be_undef, "Undefs can only be used in certain operands", instr.get());
272 "Uninitialized Operand", instr.get());
281 instr.get());
295 "Literal applied on wrong instruction format", instr.get());
299 "Only 1 Literal allowed", instr.get());
302 "Wrong source position for Literal argument", instr.get());
324 "Wrong Definition type for VALU instruction", instr.get());
327 "Wrong Definition type for VALU instruction", instr.get());
339 "Must be a SGPR or a constant", instr.get());
342 "Wrong Operand type for VALU instruction", instr.get());
348 "Operand 0 of v_permlane must be VGPR", instr.get());
352 instr.get());
359 "Wrong Operand type for VALU instruction", instr.get());
362 "Must be a SGPR or a constant", instr.get());
367 instr.get());
377 instr.get());
380 "Too many SGPRs/literals", instr.get());
386 "Wrong Definition type for SALU instruction", instr.get());
389 "Wrong Operand type for SALU instruction", instr.get());
399 check(op.bytes() < 4 || size % 4 == 0, "Operand is not aligned", instr.get());
403 "Definition size does not match operand sizes", instr.get());
407 "Wrong Operand type for scalar vector", instr.get());
412 "Wrong Operand types", instr.get());
415 "Index out of range", instr.get());
418 "Cannot extract SGPR value from VGPR vector", instr.get());
422 "Cannot extract subdword from SGPR before GFX9+", instr.get());
424 check(instr->operands[0].isTemp(), "Operand must be a temporary", instr.get());
430 "Operand size does not match definition sizes", instr.get());
434 "Wrong Definition type for VGPR split_vector", instr.get());
438 "Cannot split SGPR into subdword VGPRs before GFX9+", instr.get());
442 "Number of Operands does not match number of Definitions", instr.get());
445 "Operand and Definition size must match", instr.get());
451 "Operand and Definition types do not match", instr.get());
454 "Operand and Definition types do not match", instr.get());
458 instr.get());
463 "Number of Operands does not match number of predecessors", instr.get());
465 "Logical Phi Definition must be vgpr", instr.get());
468 "Operand sizes must match Definition size", instr.get());
472 instr.get());
474 "Operand sizes must match Definition size", instr.get());
477 "Number of Operands does not match number of predecessors", instr.get());
480 check(instr->operands[0].isTemp(), "Data operand must be temporary", instr.get());
481 check(instr->operands[1].isConstant(), "Index must be constant", instr.get());
484 instr.get());
488 "Can't extract/insert VGPR to SGPR", instr.get());
492 "Sizes of p_insert data operand and definition must match", instr.get());
497 "SGPR extract/insert needs an SCC definition", instr.get());
503 check(op_bits == 8 || op_bits == 16, "Size must be 8 or 16", instr.get());
504 check(op_bits < data_bits, "Size must be smaller than source", instr.get());
507 "Size must be 8 or 16 or 32", instr.get());
509 instr.get());
514 instr.get());
517 instr.get());
521 "First operand of p_jump_to_epilog must be a SGPR", instr.get());
525 "Other operands of p_jump_to_epilog must be VGPRs or undef", instr.get());
534 instr.get());
540 "The result of unclustered reductions must go into an SGPR.", instr.get());
544 instr.get());
553 "SMEM operands must be sgpr", instr.get());
558 "SMEM offset must be constant or sgpr", instr.get());
561 "SMEM result must be sgpr", instr.get());
567 instr.get());
570 "VADDR must be in vgpr for VMEM instructions", instr.get());
573 "VMEM resource constant must be sgpr", instr.get());
577 "VMEM write data must be vgpr", instr.get());
602 "VMEM definitions[0] (VDATA) must be VGPR", instr.get());
604 "Only D16 opcodes can load subdword values.", instr.get());
606 "D16 opcodes can only load up to 8 bytes.", instr.get());
612 instr.get());
615 "MIMG operands[0] (resource constant) must be in 4 or 8 SGPRs", instr.get());
618 "MIMG operands[1] (sampler constant) must be 4 SGPRs", instr.get());
627 instr.get());
630 "NSA is only supported on GFX10+", instr.get());
635 "MIMG operands[3] (VADDR) must be VGPR", instr.get());
638 instr.get());
645 "MIMG definitions[0] (VDATA) must be VGPR", instr.get());
647 "Only D16 MIMG instructions can load subdword values.", instr.get());
649 "D16 MIMG instructions can only load up to 8 bytes.", instr.get());
656 "Only VGPRs are valid DS instruction operands", instr.get());
660 "DS instruction must return VGPR", instr.get());
667 "Only VGPRs are valid Export arguments", instr.get());
672 instr.get());
677 "FLAT/GLOBAL address must be vgpr", instr.get());
682 "FLAT/GLOBAL/SCRATCH address must be undefined or vgpr", instr.get());
685 "FLAT/GLOBAL/SCRATCH sgpr address must be undefined or sgpr", instr.get());
688 "SCRATCH must have either SADDR or ADDR operand", instr.get());
691 "FLAT/GLOBAL/SCRATCH result must be vgpr", instr.get());
694 "FLAT/GLOBAL/SCRATCH data must be vgpr", instr.get());
1015 loc.instr = instr.get();
1149 loc.instr = instr.get();