Lines Matching defs:Imm

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