| /freebsd/contrib/llvm-project/llvm/lib/Target/AMDGPU/ | 
| H A D | AMDGPUInstrInfo.td | 208 // out = (src0 + src1 > 0xFFFFFFFF) ? 1 : 0211 // out = (src1 > src0) ? 1 : 0
 247 //  Special case divide FMA with scale and flags (src0 = Quotient,
 253 // Special case divide fixup and flags(src0 = Quotient, src1 =
 272 // src0: vec4(src, 0, 0, mask)
 349                       // i32 or f32 src0
 422 def AMDGPUfp_class : PatFrags<(ops node:$src0, node:$src1),
 423   [(int_amdgcn_class node:$src0, node:$src1),
 424    (AMDGPUfp_class_impl node:$src0, node:$src1)]>;
 426 def AMDGPUfmed3 : PatFrags<(ops node:$src0, node:$src1, node:$src2),
 [all …]
 
 | 
| H A D | AMDGPUInstructions.td | 172   (ops node:$src0),173   (op $src0)> {
 178   (ops node:$src0, node:$src1),
 179   (op $src0, $src1)> {
 184   (ops node:$src0, node:$src1, node:$src2),
 185   (op $src0, $src1, $src2)> {
 190   (ops node:$src0),
 191   (op $src0),
 208   (ops node:$src0, node:$src1),
 209   (op $src0, $src1),
 [all …]
 
 | 
| H A D | SIInstructions.td | 69 let DisableEncoding = "$src0", Constraints = "$src0 = $vdst" in {74   (ins VGPR_32:$src0, VGPR_32:$vsrc, InterpAttr:$attr,
 77   [(set f32:$vdst, (int_amdgcn_interp_p2 f32:$src0, f32:$vsrc,
 80 } // End DisableEncoding = "$src0", Constraints = "$src0 = $vdst"
 124   (ins VSrc_b64:$src0, VSrc_b64:$src1, SSrc_b64:$src2), "", []> {
 133                                       (ins VSrc_b64:$src0)> {
 150                                           (ins i64imm:$src0)> {
 162 def WQM : PseudoInstSI <(outs unknown:$vdst), (ins unknown:$src0)>;
 166 def SOFT_WQM : PseudoInstSI <(outs unknown:$vdst), (ins unknown:$src0)>;
 170 // the instruction that defines $src0 (which is run in Whole Wave Mode) doesn't
 [all …]
 
 | 
| H A D | SOPInstructions.td | 73   bits<8> src0;75   let Inst{7-0} = !if(ps.has_src0, src0, ?);
 83   !if(tied_in, (ins SSrc_b32:$src0, SReg_32:$sdst_in),
 84                (ins SSrc_b32:$src0)),
 85   "$sdst, $src0", pattern> {
 91   opName, (outs SReg_32:$sdst), (ins SReg_32:$src0),
 92   "$sdst, $src0", pattern>;
 96   opName, (outs), (ins SSrc_b32:$src0),
 97   "$src0", pattern> {
 103   opName, (outs), (ins SReg_32:$sdst, SSrc_b32:$src0),
 [all …]
 
 | 
| H A D | EvergreenInstructions.td | 348 //   [(set f64:$dst, (fma f64:$src0, f64:$src1, f64:$src2))]352 // Src0 = Input
 366   [(set i32:$dst, (AMDGPUbfe_u32 i32:$src0, i32:$src1, i32:$src2))],
 371   [(set i32:$dst, (AMDGPUbfe_i32 i32:$src0, i32:$src1, i32:$src2))],
 412   [(set i32:$dst, (AMDGPUbfi i32:$src0, i32:$src1, i32:$src2))],
 464   (fcopysign f32:$src0, f32:$src1),
 465   (BFI_INT_eg (MOV_IMM_I32 (i32 0x7fffffff)), $src0, $src1)
 469   (fcopysign f32:$src0, f64:$src1),
 470   (BFI_INT_eg (MOV_IMM_I32 (i32 0x7fffffff)), $src0,
 475   (fcopysign f64:$src0, f64:$src1),
 [all …]
 
 | 
| H A D | VOPInstructions.td | 226   bits<9> src0;239   let Inst{40-32} = !if(P.HasSrc0, src0, 0);
 318 // NB: For V_INTERP* opcodes, src0 is encoded as src1 and vice versa
 324   let Inst{8}     = 0; // No modifiers for src0
 334   let Inst{49-41} = src0;
 347   let Inst{49-41} = src0;
 357   bits<9> src0;
 368   let Inst{40-32} = !if(P.HasSrc0, src0, 0);
 380   bits<9> src0;
 390   let Inst{8} = !if(P.HasSrc0Mods, src0_modifiers{1}, 0); // neg_hi src0
 [all …]
 
 | 
| H A D | VOP2Instructions.td | 15   bits<9> src0;18   let Inst{8-0}   = !if(P.HasSrc0, src0, 0);
 27   bits<9>  src0;
 31   let Inst{8-0}   = !if(P.HasSrc0, src0, 0);
 135                   (VOP3Mods0 P.Src0VT:$src0, i32:$src0_modifiers, i1:$clamp, i32:$omod),
 136                   (VOP3Mods0 P.Src0VT:$src0, i32:$src0_modifiers, i1:$clamp))),
 138     [(set P.DstVT:$vdst, (node P.Src0VT:$src0, P.Src1VT:$src1))]);
 282              (inst ps.Pfl.DstRC:$vdst, ps.Pfl.Src0RC32:$src0,
 345              (inst ps.Pfl.DstRC:$vdst, ps.Pfl.Src0RC32:$src0,
 353                    ps.Pfl.Src0RC32:$src0, ps.Pfl.Src1RC32:$src1, Clamp:$clamp),
 [all …]
 
 | 
| H A D | VOP3Instructions.td | 40   let Asm64 = "$vdst, $sdst, $src0, $src1, $src2$clamp";65   let Ins64 = (ins Src0Mod:$src0_modifiers, VRegSrc_32:$src0,
 73   let Ins64 = (ins InterpSlot:$src0,
 77   let Asm64 = "$vdst, $src0, $attr$attrchan$clamp$omod";
 94                     (ins Src0Mod:$src0_modifiers, VRegSrc_32:$src0,
 98                     (ins Src0Mod:$src0_modifiers, VRegSrc_32:$src0,
 103                 (ins Src0Mod:$src0_modifiers, VRegSrc_32:$src0,
 183 //   result = src0 * src1 + src2
 190 //   result = src0 * src1 + src2
 361                                        (VOP3Mods f32:$src0, i32:$src0_modifiers),
 [all …]
 
 | 
| H A D | R600ExpandSpecialInstrs.cpp | 111                                             MI.getOperand(1).getReg(), // src0  in runOnMachineFunction()146           Register Src0 =  in runOnMachineFunction()  local
 147               BMI->getOperand(TII->getOperandIdx(Opcode, R600::OpName::src0))  in runOnMachineFunction()
 152           (void) Src0;  in runOnMachineFunction()
 154           if ((TRI.getEncodingValue(Src0) & 0xff) < 127 &&  in runOnMachineFunction()
 156             assert(TRI.getHWRegChan(Src0) == TRI.getHWRegChan(Src1));  in runOnMachineFunction()
 198         Register Src0 =  in runOnMachineFunction()  local
 199             MI.getOperand(TII->getOperandIdx(MI, R600::OpName::src0)).getReg();  in runOnMachineFunction()
 211           Src0 = TRI.getSubReg(Src0, SubRegIndex);  in runOnMachineFunction()
 217           Src1 = TRI.getSubReg(Src0, SubRegIndex1);  in runOnMachineFunction()
 [all …]
 
 | 
| H A D | R600Instructions.td | 105                    R600_Reg32:$src0, NEG:$src0_neg, REL:$src0_rel, ABS:$src0_abs, SEL:$src0_sel,110                    "$src0_neg$src0_abs$src0$src0_abs$src0_rel, "
 136               [(set R600_Reg32:$dst, (node R600_Reg32:$src0))], itin
 147                R600_Reg32:$src0, NEG:$src0_neg, REL:$src0_rel, ABS:$src0_abs, SEL:$src0_sel,
 153                 "$src0_neg$src0_abs$src0$src0_abs$src0_rel, "
 175               [(set R600_Reg32:$dst, (node R600_Reg32:$src0,
 187                R600_Reg32:$src0, NEG:$src0_neg, REL:$src0_rel, SEL:$src0_sel,
 193                              "$src0_neg$src0$src0_rel, "
 372   (ins i32imm:$src0, R600_TReg32_Y:$src1, R600_TReg32_X:$src2),
 373   "INTERP_PAIR_XY $src0
 [all...]
 | 
| H A D | VOP3PInstructions.td | 33           (ins FP16InputMods:$src0_modifiers, VCSrc_f16:$src0,37           (ins FPVRegInputMods:$src0_modifiers, VGPRSrc_32:$src0,
 130   (pat (v2i16 (VOP3PMods v2i16:$src0, i32:$src0_modifiers)),
 132   (inst $src0_modifiers, $src0, $src1_modifiers, $src1, DSTCLAMP.ENABLE)
 151     (f32 (fma_like (f32 (VOP3PMadMixModsExt f16:$src0, i32:$src0_mods)),
 154     (mix_inst $src0_mods, $src0, $src1_mods, $src1, $src2_mods, $src2,
 157     (f32 (fma_like (f32 (VOP3PMadMixMods f16:$src0, i32:$src0_mods)),
 160     (mix_inst $src0_mods, $src0, $src1_mods, $src1, $src2_mods, $src2,
 163     (f32 (fma_like (f32 (VOP3PMadMixMods f16:$src0, i32:$src0_mods)),
 166     (mix_inst $src0_mods, $src0, $src1_mods, $src1, $src2_mods, $src2,
 [all …]
 
 | 
| H A D | AMDGPUGISel.td | 309   (dst_vt (node (src0_vt SReg_32:$src0), (src1_vt SReg_32:$src1))),310   (inst src0_vt:$src0, src1_vt:$src1)
 319   (dst_vt (node (src0_vt (sd_vsrc0 src0_vt:$src0)), (src1_vt VGPR_32:$src1))),
 320   (inst src0_vt:$src0, src1_vt:$src1)
 329   (dst_vt (node (src1_vt VGPR_32:$src1), (src0_vt (sd_vsrc0 src0_vt:$src0)))),
 330   (inst src0_vt:$src0, src1_vt:$src1)
 339   (dst_vt (node (src0_vt (sd_vcsrc src0_vt:$src0)), (src1_vt (sd_vcsrc src1_vt:$src1)))),
 340   (inst src0_vt:$src0, src1_vt:$src1)
 349   (dst_vt (node (src0_vt (sd_vcsrc src0_vt:$src0)), (src1_vt (sd_vcsrc src1_vt:$src1)))),
 350   (inst src0_vt:$src1, src1_vt:$src0)
 [all …]
 
 | 
| H A D | SIShrinkInstructions.cpp | 93   int Src0Idx = AMDGPU::getNamedOperandIdx(MI.getOpcode(), AMDGPU::OpName::src0);  in foldImmediates()95   // Try to fold Src0  in foldImmediates()
 96   MachineOperand &Src0 = MI.getOperand(Src0Idx);  in foldImmediates()  local
 97   if (Src0.isReg()) {  in foldImmediates()
 98     Register Reg = Src0.getReg();  in foldImmediates()
 107             Src0.ChangeToImmediate(MovSrc.getImm());  in foldImmediates()
 110             Src0.ChangeToFrameIndex(MovSrc.getIndex());  in foldImmediates()
 113             Src0.ChangeToGA(MovSrc.getGlobal(), MovSrc.getOffset(),  in foldImmediates()
 129   // We have failed to fold src0, so commute the instruction and try again.  in foldImmediates()
 242   // cmpk requires src0 to be a register  in shrinkScalarCompare()
 [all …]
 
 | 
| H A D | GCNVOPDUtils.cpp | 83     const MachineOperand &Src0 = MI.getOperand(VOPD::Component::SRC0); in checkVOPDRegConstraints()   local 84     if (Src0.isReg()) { in checkVOPDRegConstraints()
 85       if (!TRI->isVectorRegister(MRI, Src0.getReg())) { in checkVOPDRegConstraints()
 86         if (!is_contained(UniqueScalarRegs, Src0.getReg())) in checkVOPDRegConstraints()
 87           UniqueScalarRegs.push_back(Src0.getReg()); in checkVOPDRegConstraints()
 90       if (!TII.isInlineConstant(MI, VOPD::Component::SRC0)) in checkVOPDRegConstraints()
 91         addLiteral(Src0); in checkVOPDRegConstraints()
 
 | 
| H A D | SIInstrInfo.td | 667   (ops node:$src1, node:$src0),668   (srl $src0, $src1)
 672   (ops node:$src1, node:$src0),
 673   (sra $src0, $src1)
 677   (ops node:$src1, node:$src0),
 678   (shl $src0, $src1)
 682   (ops node:$src0, node:$src1),
 683   (add (ctpop $src0), $src1)
 687   (ops node:$src0, node:$src1),
 688   (not (xor $src0, $src1))
 [all …]
 
 | 
| H A D | EXPInstructions.td | 16        ExpSrc0:$src0, ExpSrc1:$src1, ExpSrc2:$src2, ExpSrc3:$src3,41   : EXPCommon<0, ps.done, "exp$tgt $src0, $src1, $src2, $src3"
 49   : EXPCommon<ps.row, ps.done, name#"$tgt $src0, $src1, $src2, $src3"
 142                   (vt ExpSrc0:$src0), (vt ExpSrc1:$src1),
 145   (Inst timm:$tgt, ExpSrc0:$src0, ExpSrc1:$src1,
 151                       (vt ExpSrc0:$src0), (vt ExpSrc1:$src1),
 154   (Inst timm:$tgt, ExpSrc0:$src0, ExpSrc1:$src1,
 160                         (vt ExpSrc0:$src0), (vt ExpSrc1:$src1),
 162   (Inst timm:$tgt, ExpSrc0:$src0, ExpSrc1:$src1,
 
 | 
| H A D | SIPeepholeSDWA.cpp | 316   if (TII->getNamedOperand(*MI, AMDGPU::OpName::src0) == SrcOp) {  in getSrcMods()386   MachineOperand *Src = TII->getNamedOperand(MI, AMDGPU::OpName::src0);  in convertToSDWA()
 392     // If this is not src0 then it could be src1  in convertToSDWA()
 582     MachineOperand *Src0 = TII->getNamedOperand(MI, AMDGPU::OpName::src0);  in matchSDWAOperand()  local
 583     auto Imm = foldToImm(*Src0);  in matchSDWAOperand()
 622     MachineOperand *Src0 = TII->getNamedOperand(MI, AMDGPU::OpName::src0);  in matchSDWAOperand()  local
 623     auto Imm = foldToImm(*Src0);  in matchSDWAOperand()
 689     MachineOperand *Src0 = TII->getNamedOperand(MI, AMDGPU::OpName::src0);  in matchSDWAOperand()  local
 692     if (!Src0->isReg() || Src0->getReg().isPhysical() ||  in matchSDWAOperand()
 697           Src0, Dst, SrcSel, false, false, Opcode != AMDGPU::V_BFE_U32_e64);  in matchSDWAOperand()
 [all …]
 
 | 
| H A D | GCNDPPCombine.cpp | 8 // The pass combines V_MOV_B32_dpp instruction with its VALU uses as a DPP src0290     auto *Src0 = TII->getNamedOperand(MovMI, AMDGPU::OpName::src0);  in createDPPInst()  local
 291     assert(Src0);  in createDPPInst()
 293     if (!TII->isOperandLegal(*DPPInst.getInstr(), NumOperands, Src0)) {  in createDPPInst()
 294       LLVM_DEBUG(dbgs() << "  failed: src0 is illegal\n");  in createDPPInst()
 298     DPPInst.add(*Src0);  in createDPPInst()
 318       // requirements are the same as for src0. We check src0 instead because  in createDPPInst()
 323                "Src0 and Src1 operands should have the same size");  in createDPPInst()
 565   auto *SrcOpnd = TII->getNamedOperand(MovMI, AMDGPU::OpName::src0);  in combineDPPMov()
 684     auto *Src0 = TII->getNamedOperand(OrigMI, AMDGPU::OpName::src0);  in combineDPPMov()  local
 [all …]
 
 | 
| H A D | VOP1Instructions.td | 16   bits<9> src0;18   let Inst{8-0}   = !if(P.HasSrc0, src0{8-0}, ?);
 111         [(set P.DstVT:$vdst, (node (P.Src0VT (VOP3Mods P.Src0VT:$src0, i32:$src0_modifiers))))],
 113             [(set P.DstVT:$vdst, (node (P.Src0VT (VOP3OMods P.Src0VT:$src0,
 115             [(set P.DstVT:$vdst, (node (P.Src0VT P.Src0RC32:$src0)))]
 181   let Ins64 = (ins Src0RC64:$src0, Clamp:$clamp, omod:$omod);
 182   let InsVOP3Base = (ins Src0VOP3DPP:$src0, Clamp:$clamp, omod:$omod);
 183   let AsmVOP3Base = "$vdst, $src0$clamp$omod";
 192   let Ins64 = (ins Src0RC64:$src0, Clamp:$clamp, omod:$omod);
 193   let InsVOP3Base = (ins Src0VOP3DPP:$src0, Clamp:$clamp, omod:$omod);
 [all …]
 
 | 
| H A D | AMDGPUInstCombineIntrinsic.cpp | 45 static APFloat fmed3AMDGCN(const APFloat &Src0, const APFloat &Src1,  in fmed3AMDGCN()  argument47   APFloat Max3 = maxnum(maxnum(Src0, Src1), Src2);  in fmed3AMDGCN()
 49   APFloat::cmpResult Cmp0 = Max3.compare(Src0);  in fmed3AMDGCN()
 57     return maxnum(Src0, Src2);  in fmed3AMDGCN()
 59   return maxnum(Src0, Src1);  in fmed3AMDGCN()
 601     Value *Src0 = II.getArgOperand(0);  in instCombineIntrinsic()  local
 606           II.getModule(), Intrinsic::is_fpclass, Src0->getType()));  in instCombineIntrinsic()
 615     if (isa<PoisonValue>(Src0) || isa<PoisonValue>(Src1))  in instCombineIntrinsic()
 623     if (IC.getSimplifyQuery().isUndefValue(Src0)) {  in instCombineIntrinsic()
 631     Value *Src0 = II.getArgOperand(0);  in instCombineIntrinsic()  local
 [all …]
 
 | 
| H A D | VINTERPInstructions.td | 16   bits<9> src0;34   let Inst{40-32} = src0;
 77   let Ins64 = (ins Src0Mod:$src0_modifiers, VRegSrc_32:$src0,
 95   let Ins64 = (ins Src0Mod:$src0_modifiers, VRegSrc_32:$src0,
 130       (VINTERPMods f32:$src0, i32:$src0_modifiers),
 133     (inst $src0_modifiers, $src0,
 149       (pat[0] f32:$src0, i32:$src0_modifiers),
 153     (inst $src0_modifiers, $src0,
 
 | 
| H A D | SIOptimizeExecMasking.cpp | 536     MachineOperand &Src0 = SaveExecInst->getOperand(1);  in optimizeExecSequence()  local541     if (Src0.isReg() && Src0.getReg() == CopyFromExec) {  in optimizeExecSequence()
 547       OtherOp = &Src0;  in optimizeExecSequence()
 583   MachineOperand *Src0 = TII->getNamedOperand(VCmp, AMDGPU::OpName::src0);  in optimizeVCMPSaveExecSequence()  local
 609   Builder.add(*Src0);  in optimizeVCMPSaveExecSequence()
 617   if (Src0->isReg())  in optimizeVCMPSaveExecSequence()
 618     MRI->clearKillFlags(Src0->getReg());  in optimizeVCMPSaveExecSequence()
 653   MachineOperand *SaveExecSrc0 = TII->getNamedOperand(MI, AMDGPU::OpName::src0);  in tryRecordVCmpxAndSaveexecSequence()
 681   MachineOperand *Src0 = TII->getNamedOperand(*VCmp, AMDGPU::OpName::src0);  in tryRecordVCmpxAndSaveexecSequence()  local
 682   if (Src0->isReg() && TRI->isSGPRReg(*MRI, Src0->getReg()) &&  in tryRecordVCmpxAndSaveexecSequence()
 [all …]
 
 | 
| /freebsd/contrib/llvm-project/clang/lib/Headers/ | 
| H A D | amxintrin.h | 138 /// Multiply groups of 4 adjacent pairs of signed 8-bit integers in src0 with149 /// \param src0
 153 #define _tile_dpbssd(dst, src0, src1)                                          \  argument
 154   __builtin_ia32_tdpbssd((dst), (src0), (src1))
 157 /// Multiply groups of 4 adjacent pairs of signed 8-bit integers in src0 with
 168 /// \param src0
 172 #define _tile_dpbsud(dst, src0, src1)                                          \  argument
 173   __builtin_ia32_tdpbsud((dst), (src0), (src1))
 176 /// Multiply groups of 4 adjacent pairs of unsigned 8-bit integers in src0 with
 187 /// \param src0
 [all …]
 
 | 
| H A D | amxcomplexintrin.h | 124 /// element in input tiles src0 and src1 is interpreted as a complex number with134 /// \param src0
 139 static void __tile_cmmimfp16ps(__tile1024i *dst, __tile1024i src0,  in __tile_cmmimfp16ps()  argument
 141   dst->tile = _tile_cmmimfp16ps_internal(src0.row, src1.col, src0.col,  in __tile_cmmimfp16ps()
 142                                          dst->tile, src0.tile, src1.tile);  in __tile_cmmimfp16ps()
 147 /// element in input tiles src0 and src1 is interpreted as a complex number with
 157 /// \param src0
 162 static void __tile_cmmrlfp16ps(__tile1024i *dst, __tile1024i src0,  in __tile_cmmrlfp16ps()  argument
 164   dst->tile = _tile_cmmrlfp16ps_internal(src0.row, src1.col, src0.col,  in __tile_cmmrlfp16ps()
 165                                          dst->tile, src0.tile, src1.tile);  in __tile_cmmrlfp16ps()
 
 | 
| /freebsd/contrib/llvm-project/llvm/include/llvm/CodeGen/GlobalISel/ | 
| H A D | MachineIRBuilder.h | 1142   /// Build and insert `Res = G_INSERT_SUBVECTOR Src0, Src1, Idx`.1145   /// \pre \p Res, \p Src0, and \p Src1 must be generic virtual registers with
 1149   MachineInstrBuilder buildInsertSubvector(const DstOp &Res, const SrcOp &Src0,
 1673   MachineInstrBuilder buildAdd(const DstOp &Dst, const SrcOp &Src0,
 1676     return buildInstr(TargetOpcode::G_ADD, {Dst}, {Src0, Src1}, Flags);
 1690   MachineInstrBuilder buildSub(const DstOp &Dst, const SrcOp &Src0,
 1693     return buildInstr(TargetOpcode::G_SUB, {Dst}, {Src0, Src1}, Flags);
 1706   MachineInstrBuilder buildMul(const DstOp &Dst, const SrcOp &Src0,
 1709     return buildInstr(TargetOpcode::G_MUL, {Dst}, {Src0, Src1}, Flags);
 1712   MachineInstrBuilder buildUMulH(const DstOp &Dst, const SrcOp &Src0,
 [all …]
 
 |