Lines Matching refs:Imm
67 int64_t Imm = Op.getImm(); in printU16ImmOperand() local
68 if (isInt<16>(Imm) || isUInt<16>(Imm)) in printU16ImmOperand()
69 O << formatHex(static_cast<uint64_t>(Imm & 0xffff)); in printU16ImmOperand()
105 uint32_t Imm = MI->getOperand(OpNo).getImm(); in printOffset() local
106 if (Imm != 0) { in printOffset()
113 O << formatDec(SignExtend32<24>(Imm)); in printOffset()
122 uint32_t Imm = MI->getOperand(OpNo).getImm(); in printFlatOffset() local
123 if (Imm != 0) { in printFlatOffset()
132 O << formatDec(SignExtend32(Imm, AMDGPU::getNumFlatOffsetBits(STI))); in printFlatOffset()
183 auto Imm = MI->getOperand(OpNo).getImm(); in printCPol() local
186 const int64_t TH = Imm & CPol::TH; in printCPol()
187 const int64_t Scope = Imm & CPol::SCOPE; in printCPol()
195 if (Imm & CPol::GLC) in printCPol()
199 if (Imm & CPol::SLC) in printCPol()
201 if ((Imm & CPol::DLC) && AMDGPU::isGFX10Plus(STI)) in printCPol()
203 if ((Imm & CPol::SCC) && AMDGPU::isGFX90A(STI)) in printCPol()
205 if (Imm & ~CPol::ALL) in printCPol()
456 void AMDGPUInstPrinter::printImmediateInt16(uint32_t Imm, in printImmediateInt16() argument
459 int32_t SImm = static_cast<int32_t>(Imm); in printImmediateInt16()
465 if (printImmediateFloat32(Imm, STI, O)) in printImmediateInt16()
468 O << formatHex(static_cast<uint64_t>(Imm & 0xffff)); in printImmediateInt16()
471 static bool printImmediateFP16(uint32_t Imm, const MCSubtargetInfo &STI, in printImmediateFP16() argument
473 if (Imm == 0x3C00) in printImmediateFP16()
475 else if (Imm == 0xBC00) in printImmediateFP16()
477 else if (Imm == 0x3800) in printImmediateFP16()
479 else if (Imm == 0xB800) in printImmediateFP16()
481 else if (Imm == 0x4000) in printImmediateFP16()
483 else if (Imm == 0xC000) in printImmediateFP16()
485 else if (Imm == 0x4400) in printImmediateFP16()
487 else if (Imm == 0xC400) in printImmediateFP16()
489 else if (Imm == 0x3118 && STI.hasFeature(AMDGPU::FeatureInv2PiInlineImm)) in printImmediateFP16()
497 static bool printImmediateBFloat16(uint32_t Imm, const MCSubtargetInfo &STI, in printImmediateBFloat16() argument
499 if (Imm == 0x3F80) in printImmediateBFloat16()
501 else if (Imm == 0xBF80) in printImmediateBFloat16()
503 else if (Imm == 0x3F00) in printImmediateBFloat16()
505 else if (Imm == 0xBF00) in printImmediateBFloat16()
507 else if (Imm == 0x4000) in printImmediateBFloat16()
509 else if (Imm == 0xC000) in printImmediateBFloat16()
511 else if (Imm == 0x4080) in printImmediateBFloat16()
513 else if (Imm == 0xC080) in printImmediateBFloat16()
515 else if (Imm == 0x3E22 && STI.hasFeature(AMDGPU::FeatureInv2PiInlineImm)) in printImmediateBFloat16()
523 void AMDGPUInstPrinter::printImmediateBF16(uint32_t Imm, in printImmediateBF16() argument
526 int16_t SImm = static_cast<int16_t>(Imm); in printImmediateBF16()
532 if (printImmediateBFloat16(static_cast<uint16_t>(Imm), STI, O)) in printImmediateBF16()
535 O << formatHex(static_cast<uint64_t>(Imm)); in printImmediateBF16()
538 void AMDGPUInstPrinter::printImmediateF16(uint32_t Imm, in printImmediateF16() argument
541 int16_t SImm = static_cast<int16_t>(Imm); in printImmediateF16()
547 uint16_t HImm = static_cast<uint16_t>(Imm); in printImmediateF16()
551 uint64_t Imm16 = static_cast<uint16_t>(Imm); in printImmediateF16()
555 void AMDGPUInstPrinter::printImmediateV216(uint32_t Imm, uint8_t OpType, in printImmediateV216() argument
558 int32_t SImm = static_cast<int32_t>(Imm); in printImmediateV216()
568 if (printImmediateFloat32(Imm, STI, O)) in printImmediateV216()
574 if (isUInt<16>(Imm) && in printImmediateV216()
575 printImmediateFP16(static_cast<uint16_t>(Imm), STI, O)) in printImmediateV216()
581 if (isUInt<16>(Imm) && in printImmediateV216()
582 printImmediateBFloat16(static_cast<uint16_t>(Imm), STI, O)) in printImmediateV216()
589 O << formatHex(static_cast<uint64_t>(Imm)); in printImmediateV216()
592 bool AMDGPUInstPrinter::printImmediateFloat32(uint32_t Imm, in printImmediateFloat32() argument
595 if (Imm == llvm::bit_cast<uint32_t>(0.0f)) in printImmediateFloat32()
597 else if (Imm == llvm::bit_cast<uint32_t>(1.0f)) in printImmediateFloat32()
599 else if (Imm == llvm::bit_cast<uint32_t>(-1.0f)) in printImmediateFloat32()
601 else if (Imm == llvm::bit_cast<uint32_t>(0.5f)) in printImmediateFloat32()
603 else if (Imm == llvm::bit_cast<uint32_t>(-0.5f)) in printImmediateFloat32()
605 else if (Imm == llvm::bit_cast<uint32_t>(2.0f)) in printImmediateFloat32()
607 else if (Imm == llvm::bit_cast<uint32_t>(-2.0f)) in printImmediateFloat32()
609 else if (Imm == llvm::bit_cast<uint32_t>(4.0f)) in printImmediateFloat32()
611 else if (Imm == llvm::bit_cast<uint32_t>(-4.0f)) in printImmediateFloat32()
613 else if (Imm == 0x3e22f983 && in printImmediateFloat32()
622 void AMDGPUInstPrinter::printImmediate32(uint32_t Imm, in printImmediate32() argument
625 int32_t SImm = static_cast<int32_t>(Imm); in printImmediate32()
631 if (printImmediateFloat32(Imm, STI, O)) in printImmediate32()
634 O << formatHex(static_cast<uint64_t>(Imm)); in printImmediate32()
637 void AMDGPUInstPrinter::printImmediate64(uint64_t Imm, in printImmediate64() argument
640 int64_t SImm = static_cast<int64_t>(Imm); in printImmediate64()
646 if (Imm == llvm::bit_cast<uint64_t>(0.0)) in printImmediate64()
648 else if (Imm == llvm::bit_cast<uint64_t>(1.0)) in printImmediate64()
650 else if (Imm == llvm::bit_cast<uint64_t>(-1.0)) in printImmediate64()
652 else if (Imm == llvm::bit_cast<uint64_t>(0.5)) in printImmediate64()
654 else if (Imm == llvm::bit_cast<uint64_t>(-0.5)) in printImmediate64()
656 else if (Imm == llvm::bit_cast<uint64_t>(2.0)) in printImmediate64()
658 else if (Imm == llvm::bit_cast<uint64_t>(-2.0)) in printImmediate64()
660 else if (Imm == llvm::bit_cast<uint64_t>(4.0)) in printImmediate64()
662 else if (Imm == llvm::bit_cast<uint64_t>(-4.0)) in printImmediate64()
664 else if (Imm == 0x3fc45f306dc9c882 && in printImmediate64()
668 assert(AMDGPU::isValid32BitLiteral(Imm, true)); in printImmediate64()
669 O << formatHex(static_cast<uint64_t>(Hi_32(Imm))); in printImmediate64()
671 assert(isUInt<32>(Imm) || isInt<32>(Imm)); in printImmediate64()
675 O << formatHex(static_cast<uint64_t>(Imm)); in printImmediate64()
682 unsigned Imm = MI->getOperand(OpNo).getImm(); in printBLGP() local
683 if (!Imm) in printBLGP()
692 O << " neg:[" << (Imm & 1) << ',' << ((Imm >> 1) & 1) << ',' in printBLGP()
693 << ((Imm >> 2) & 1) << ']'; in printBLGP()
698 O << " blgp:" << Imm; in printBLGP()
704 unsigned Imm = MI->getOperand(OpNo).getImm(); in printCBSZ() local
705 if (!Imm) in printCBSZ()
708 O << " cbsz:" << Imm; in printCBSZ()
714 unsigned Imm = MI->getOperand(OpNo).getImm(); in printABID() local
715 if (!Imm) in printABID()
718 O << " abid:" << Imm; in printABID()
1055 unsigned Imm = MI->getOperand(OpNo).getImm(); in printDPP8() local
1056 O << "dpp8:[" << formatDec(Imm & 0x7); in printDPP8()
1058 O << ',' << formatDec((Imm >> (3 * i)) & 0x7); in printDPP8()
1068 unsigned Imm = MI->getOperand(OpNo).getImm(); in printDPPCtrl() local
1071 if (!AMDGPU::isLegalDPALU_DPPControl(Imm) && AMDGPU::isDPALU_DPP(Desc)) { in printDPPCtrl()
1075 if (Imm <= DppCtrl::QUAD_PERM_LAST) { in printDPPCtrl()
1077 O << formatDec(Imm & 0x3) << ','; in printDPPCtrl()
1078 O << formatDec((Imm & 0xc) >> 2) << ','; in printDPPCtrl()
1079 O << formatDec((Imm & 0x30) >> 4) << ','; in printDPPCtrl()
1080 O << formatDec((Imm & 0xc0) >> 6) << ']'; in printDPPCtrl()
1081 } else if ((Imm >= DppCtrl::ROW_SHL_FIRST) && in printDPPCtrl()
1082 (Imm <= DppCtrl::ROW_SHL_LAST)) { in printDPPCtrl()
1085 } else if ((Imm >= DppCtrl::ROW_SHR_FIRST) && in printDPPCtrl()
1086 (Imm <= DppCtrl::ROW_SHR_LAST)) { in printDPPCtrl()
1089 } else if ((Imm >= DppCtrl::ROW_ROR_FIRST) && in printDPPCtrl()
1090 (Imm <= DppCtrl::ROW_ROR_LAST)) { in printDPPCtrl()
1093 } else if (Imm == DppCtrl::WAVE_SHL1) { in printDPPCtrl()
1099 } else if (Imm == DppCtrl::WAVE_ROL1) { in printDPPCtrl()
1105 } else if (Imm == DppCtrl::WAVE_SHR1) { in printDPPCtrl()
1111 } else if (Imm == DppCtrl::WAVE_ROR1) { in printDPPCtrl()
1117 } else if (Imm == DppCtrl::ROW_MIRROR) { in printDPPCtrl()
1119 } else if (Imm == DppCtrl::ROW_HALF_MIRROR) { in printDPPCtrl()
1121 } else if (Imm == DppCtrl::BCAST15) { in printDPPCtrl()
1127 } else if (Imm == DppCtrl::BCAST31) { in printDPPCtrl()
1133 } else if ((Imm >= DppCtrl::ROW_SHARE_FIRST) && in printDPPCtrl()
1134 (Imm <= DppCtrl::ROW_SHARE_LAST)) { in printDPPCtrl()
1145 } else if ((Imm >= DppCtrl::ROW_XMASK_FIRST) && in printDPPCtrl()
1146 (Imm <= DppCtrl::ROW_XMASK_LAST)) { in printDPPCtrl()
1175 unsigned Imm = MI->getOperand(OpNo).getImm(); in printDppBoundCtrl() local
1176 if (Imm) { in printDppBoundCtrl()
1184 unsigned Imm = MI->getOperand(OpNo).getImm(); in printDppFI() local
1185 if (Imm == DPP_FI_1 || Imm == DPP8_FI_1) { in printDppFI()
1194 unsigned Imm = MI->getOperand(OpNo).getImm(); in printSDWASel() local
1195 switch (Imm) { in printSDWASel()
1234 unsigned Imm = MI->getOperand(OpNo).getImm(); in printSDWADstUnused() local
1235 switch (Imm) { in printSDWADstUnused()
1434 auto Imm = MI->getOperand(OpNo).getImm() & 0x7; in printIndexKey8bit() local
1435 if (Imm == 0) in printIndexKey8bit()
1438 O << " index_key:" << Imm; in printIndexKey8bit()
1444 auto Imm = MI->getOperand(OpNo).getImm() & 0x7; in printIndexKey16bit() local
1445 if (Imm == 0) in printIndexKey16bit()
1448 O << " index_key:" << Imm; in printIndexKey16bit()
1454 unsigned Imm = MI->getOperand(OpNum).getImm(); in printInterpSlot() local
1455 switch (Imm) { in printInterpSlot()
1466 O << "invalid_param_" << Imm; in printInterpSlot()
1538 int Imm = MI->getOperand(OpNo).getImm(); in printOModSI() local
1539 if (Imm == SIOutMods::MUL2) in printOModSI()
1541 else if (Imm == SIOutMods::MUL4) in printOModSI()
1543 else if (Imm == SIOutMods::DIV2) in printOModSI()
1616 uint16_t Imm = MI->getOperand(OpNo).getImm(); in printSwizzle() local
1617 if (Imm == 0) { in printSwizzle()
1623 if ((Imm & QUAD_PERM_ENC_MASK) == QUAD_PERM_ENC) { in printSwizzle()
1628 O << formatDec(Imm & LANE_MASK); in printSwizzle()
1629 Imm >>= LANE_SHIFT; in printSwizzle()
1633 } else if ((Imm & BITMASK_PERM_ENC_MASK) == BITMASK_PERM_ENC) { in printSwizzle()
1635 uint16_t AndMask = (Imm >> BITMASK_AND_SHIFT) & BITMASK_MASK; in printSwizzle()
1636 uint16_t OrMask = (Imm >> BITMASK_OR_SHIFT) & BITMASK_MASK; in printSwizzle()
1637 uint16_t XorMask = (Imm >> BITMASK_XOR_SHIFT) & BITMASK_MASK; in printSwizzle()
1807 uint16_t Imm = MI->getOperand(OpNo).getImm(); in printEndpgm() local
1808 if (Imm == 0) { in printEndpgm()
1812 O << ' ' << formatDec(Imm); in printEndpgm()
1818 uint8_t Imm = MI->getOperand(OpNo).getImm(); in printByteSel() local
1819 if (!Imm) in printByteSel()
1822 O << " byte_sel:" << formatDec(Imm); in printByteSel()