Home | History | Annotate | Download | only in compiler

Lines Matching refs:Operand

185                const Operand& op = instr->operands[i];
188 "SDWA operand selection size must be at most operand size", instr.get());
190 "SDWA operand selection size must be 1, 2 or 4 bytes", instr.get());
196 "3rd operand must be fixed to vcc with SDWA", instr.get());
233 check((vop3.opsel & (1 << i)) == 0, "Unexpected opsel for operand", instr.get());
244 "Unexpected opsel for subdword operand", instr.get());
262 "Uninitialized Operand", instr.get());
276 Operand literal(s1);
278 Operand op = instr->operands[i];
323 Operand op = instr->operands[i];
332 "Wrong Operand type for VALU instruction", instr.get());
338 "Operand 0 of v_permlane must be VGPR", instr.get());
349 "Wrong Operand type for VALU instruction", instr.get());
376 for (const Operand& op : instr->operands) {
378 "Wrong Operand type for SALU instruction", instr.get());
387 for (const Operand& op : instr->operands) {
388 check(op.bytes() < 4 || size % 4 == 0, "Operand is not aligned", instr.get());
392 "Definition size does not match operand sizes", instr.get());
394 for (const Operand& op : instr->operands) {
396 "Wrong Operand type for scalar vector", instr.get());
401 "Wrong Operand types", instr.get());
413 check(instr->operands[0].isTemp(), "Operand must be a temporary", instr.get());
419 "Operand size does not match definition sizes", instr.get());
434 "Operand and Definition size must match", instr.get());
440 "Operand and Definition types do not match", instr.get());
443 "Operand and Definition types do not match", instr.get());
455 for (const Operand& op : instr->operands)
457 "Operand sizes must match Definition size", instr.get());
459 for (const Operand& op : instr->operands) {
460 check(!op.isTemp() || op.getTemp().is_linear(), "Wrong Operand type",
463 "Operand sizes must match Definition size", instr.get());
469 check(instr->operands[0].isTemp(), "Data operand must be temporary", instr.get());
481 "Sizes of p_insert data operand and definition must match", instr.get());
508 for (const Operand& op : instr->operands)
543 check(instr->operands.size() > 1, "VMEM instructions must have at least one operand",
595 for (const Operand& op : instr->operands) {
723 Operand op = instr->operands[index];
881 Operand& op = instr->operands[i];
885 err |= ra_fail(program, loc, Location(), "Operand %d is not assigned a register", i);
889 "Operand %d has an inconsistent register assignment with instruction", i);
896 "Operand %d has an out-of-bounds register assignment", i);
899 "Operand %d fixed to vcc but needs_vcc=false", i);
902 err |= ra_fail(program, loc, Location(), "Operand %d not aligned correctly", i);
995 for (const Operand& op : instr->operands) {
1022 for (const Operand& op : instr->operands) {
1071 for (const Operand& op : instr->operands) {