Lines Matching refs:Subtarget
50 const X86Subtarget *Subtarget; member in __anon2295b5b00111::X86FastISel
63 Subtarget = &funcInfo.MF->getSubtarget<X86Subtarget>(); in X86FastISel()
64 X86ScalarSSEf64 = Subtarget->hasSSE2(); in X86FastISel()
65 X86ScalarSSEf32 = Subtarget->hasSSE1(); in X86FastISel()
139 return Subtarget->getInstrInfo(); in getInstrInfo()
325 bool HasSSE41 = Subtarget->hasSSE41(); in X86FastEmitLoad()
326 bool HasAVX = Subtarget->hasAVX(); in X86FastEmitLoad()
327 bool HasAVX2 = Subtarget->hasAVX2(); in X86FastEmitLoad()
328 bool HasAVX512 = Subtarget->hasAVX512(); in X86FastEmitLoad()
329 bool HasVLX = Subtarget->hasVLX(); in X86FastEmitLoad()
489 bool HasSSE1 = Subtarget->hasSSE1(); in X86FastEmitStore()
490 bool HasSSE2 = Subtarget->hasSSE2(); in X86FastEmitStore()
491 bool HasSSE4A = Subtarget->hasSSE4A(); in X86FastEmitStore()
492 bool HasAVX = Subtarget->hasAVX(); in X86FastEmitStore()
493 bool HasAVX512 = Subtarget->hasAVX512(); in X86FastEmitStore()
494 bool HasVLX = Subtarget->hasVLX(); in X86FastEmitStore()
736 if (!Subtarget->isPICStyleRIPRel() || in handleConstantAddresses()
742 unsigned char GVFlags = Subtarget->classifyGlobalReference(GV); in handleConstantAddresses()
753 if (Subtarget->isPICStyleRIPRel()) { in handleConstantAddresses()
789 if (Subtarget->isPICStyleRIPRel() || GVFlags == X86II::MO_GOTPCREL) in handleConstantAddresses()
813 if (!AM.GV || !Subtarget->isPICStyleRIPRel()) { in handleConstantAddresses()
938 (!AM.GV || !Subtarget->isPICStyleRIPRel()) && in X86SelectAddress()
1058 if (Subtarget->isPICStyleRIPRel() && in X86SelectCallAddress()
1073 if (Subtarget->isPICStyleRIPRel()) { in X86SelectCallAddress()
1079 AM.GVOpFlags = Subtarget->classifyLocalReference(nullptr); in X86SelectCallAddress()
1086 if (!AM.GV || !Subtarget->isPICStyleRIPRel()) { in X86SelectCallAddress()
1091 if (Reg && Subtarget->isTarget64BitILP32()) { in X86SelectCallAddress()
1294 unsigned RetReg = Subtarget->isTarget64BitLP64() ? X86::RAX : X86::EAX; in X86SelectRet()
1304 TII.get(Subtarget->is64Bit() ? X86::RETIQ : X86::RETIL)) in X86SelectRet()
1308 TII.get(Subtarget->is64Bit() ? X86::RETQ : X86::RETL)); in X86SelectRet()
1358 static unsigned X86ChooseCmpOpcode(EVT VT, const X86Subtarget *Subtarget) { in X86ChooseCmpOpcode() argument
1359 bool HasAVX512 = Subtarget->hasAVX512(); in X86ChooseCmpOpcode()
1360 bool HasAVX = Subtarget->hasAVX(); in X86ChooseCmpOpcode()
1361 bool X86ScalarSSEf32 = Subtarget->hasSSE1(); in X86ChooseCmpOpcode()
1362 bool X86ScalarSSEf64 = Subtarget->hasSSE2(); in X86ChooseCmpOpcode()
1433 unsigned CompareOpc = X86ChooseCmpOpcode(VT, Subtarget); in X86FastEmitCompare()
1939 if (!Subtarget->is64Bit()) in X86SelectDivRem()
2006 OpEntry.DivRemResultReg == X86::AH && Subtarget->is64Bit()) { in X86SelectDivRem()
2035 if (!Subtarget->hasCMov()) in X86FastEmitCMoveSelect()
2146 const TargetRegisterInfo &TRI = *Subtarget->getRegisterInfo(); in X86FastEmitCMoveSelect()
2167 !((Subtarget->hasSSE1() && RetVT == MVT::f32) || in X86FastEmitSSESelect()
2168 (Subtarget->hasSSE2() && RetVT == MVT::f64))) in X86FastEmitSSESelect()
2187 if (CC > 7 && !Subtarget->hasAVX()) in X86FastEmitSSESelect()
2206 if (Subtarget->hasAVX512()) { in X86FastEmitSSESelect()
2233 } else if (Subtarget->hasAVX()) { in X86FastEmitSSESelect()
2289 case MVT::f32: Opc = Subtarget->hasAVX512() ? X86::CMOV_FR32X in X86FastEmitPseudoSelect()
2291 case MVT::f64: Opc = Subtarget->hasAVX512() ? X86::CMOV_FR64X in X86FastEmitPseudoSelect()
2403 bool HasAVX512 = Subtarget->hasAVX512(); in X86SelectIntToFP()
2404 if (!Subtarget->hasAVX() || (!IsSigned && !HasAVX512)) in X86SelectIntToFP()
2465 bool HasAVX = Subtarget->hasAVX(); in X86SelectFPExtOrFPTrunc()
2495 bool HasAVX512 = Subtarget->hasAVX512(); in X86SelectFPExt()
2499 : Subtarget->hasAVX() ? X86::VCVTSS2SDrr : X86::CVTSS2SDrr; in X86SelectFPExt()
2509 bool HasAVX512 = Subtarget->hasAVX512(); in X86SelectFPTrunc()
2513 : Subtarget->hasAVX() ? X86::VCVTSD2SSrr : X86::CVTSD2SSrr; in X86SelectFPTrunc()
2552 return Len <= (Subtarget->is64Bit() ? 32 : 16); in IsMemcpySmall()
2562 bool i64Legal = Subtarget->is64Bit(); in TryEmitSmallMemcpy()
2597 if (Subtarget->useSoftFloat() || !Subtarget->hasF16C()) in fastLowerIntrinsicCall()
2625 unsigned Opc = Subtarget->hasVLX() ? X86::VCVTPS2PHZ128rr in fastLowerIntrinsicCall()
2630 Opc = Subtarget->hasAVX512() ? X86::VMOVPDI2DIZrr in fastLowerIntrinsicCall()
2648 unsigned Opc = Subtarget->hasVLX() ? X86::VCVTPH2PSZ128rr in fastLowerIntrinsicCall()
2688 const X86RegisterInfo *RegInfo = Subtarget->getRegisterInfo(); in fastLowerIntrinsicCall()
2737 unsigned SizeWidth = Subtarget->is64Bit() ? 64 : 32; in fastLowerIntrinsicCall()
2752 unsigned SizeWidth = Subtarget->is64Bit() ? 64 : 32; in fastLowerIntrinsicCall()
2798 if (!Subtarget->hasSSE1()) in fastLowerIntrinsicCall()
2815 unsigned AVXLevel = Subtarget->hasAVX512() ? 2 : in fastLowerIntrinsicCall()
2816 Subtarget->hasAVX() ? 1 : in fastLowerIntrinsicCall()
2979 if (!Subtarget->hasSSE1()) in fastLowerIntrinsicCall()
2985 if (!Subtarget->hasSSE2()) in fastLowerIntrinsicCall()
3004 unsigned AVXLevel = Subtarget->hasAVX512() ? 2 : in fastLowerIntrinsicCall()
3005 Subtarget->hasAVX() ? 1 : in fastLowerIntrinsicCall()
3055 if (Subtarget->isCallingConvWin64(CC)) in fastLowerArguments()
3058 if (!Subtarget->is64Bit()) in fastLowerArguments()
3061 if (Subtarget->useSoftFloat()) in fastLowerArguments()
3091 if (!Subtarget->hasSSE1()) in fastLowerArguments()
3141 static unsigned computeBytesPoppedByCalleeForSRet(const X86Subtarget *Subtarget, in computeBytesPoppedByCalleeForSRet() argument
3144 if (Subtarget->is64Bit()) in computeBytesPoppedByCalleeForSRet()
3146 if (Subtarget->getTargetTriple().isOSMSVCRT()) in computeBytesPoppedByCalleeForSRet()
3155 CB->paramHasAttr(0, Attribute::InReg) || Subtarget->isTargetMCU()) in computeBytesPoppedByCalleeForSRet()
3174 bool Is64Bit = Subtarget->is64Bit(); in fastLowerCall()
3175 bool IsWin64 = Subtarget->isCallingConvWin64(CC); in fastLowerCall()
3191 if (Subtarget->useIndirectThunkCalls()) in fastLowerCall()
3303 const X86RegisterInfo *RegInfo = Subtarget->getRegisterInfo(); in fastLowerCall()
3428 if (Subtarget->isPICStyleGOT()) { in fastLowerCall()
3449 assert((Subtarget->hasSSE1() || !NumXMMRegs) in fastLowerCall()
3481 unsigned char OpFlags = Subtarget->classifyGlobalFunctionReference(GV); in fastLowerCall()
3508 if (Subtarget->isPICStyleGOT()) in fastLowerCall()
3520 X86::isCalleePop(CC, Subtarget->is64Bit(), IsVarArg, in fastLowerCall()
3523 : computeBytesPoppedByCalleeForSRet(Subtarget, CC, CLI.CB); in fastLowerCall()
3544 ((Is64Bit || Ins[i].Flags.isInReg()) && !Subtarget->hasSSE1())) { in fastLowerCall()
3640 if (!Subtarget->hasSSE2()) in fastSelectInstruction()
3732 bool HasAVX = Subtarget->hasAVX(); in X86MaterializeFP()
3733 bool HasAVX512 = Subtarget->hasAVX512(); in X86MaterializeFP()
3762 unsigned char OpFlag = Subtarget->classifyLocalReference(nullptr); in X86MaterializeFP()
3767 else if (Subtarget->is64Bit() && TM.getCodeModel() == CodeModel::Small) in X86MaterializeFP()
3775 if (Subtarget->is64Bit() && CM == CodeModel::Large) { in X86MaterializeFP()
3821 ? (Subtarget->isTarget64BitILP32() ? X86::LEA64_32r : X86::LEA32r) in X86MaterializeGV()
3891 ? (Subtarget->isTarget64BitILP32() ? X86::LEA64_32r : X86::LEA32r) in fastMaterializeAlloca()
3906 bool HasAVX512 = Subtarget->hasAVX512(); in fastMaterializeFloatZero()