reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
53861 case 0: return (Subtarget->hasV6Ops()) && (!Subtarget->isThumb()); 53861 case 0: return (Subtarget->hasV6Ops()) && (!Subtarget->isThumb()); 53862 case 1: return (Subtarget->isThumb2()); 53863 case 2: return (Subtarget->hasDSP()) && (Subtarget->isThumb2()); 53863 case 2: return (Subtarget->hasDSP()) && (Subtarget->isThumb2()); 53864 case 3: return (Subtarget->hasV6T2Ops()) && (!Subtarget->isThumb()); 53864 case 3: return (Subtarget->hasV6T2Ops()) && (!Subtarget->isThumb()); 53865 case 4: return (!Subtarget->isThumb()); 53866 case 5: return (Subtarget->hasV8MBaselineOps()) && (Subtarget->isThumb()); 53866 case 5: return (Subtarget->hasV8MBaselineOps()) && (Subtarget->isThumb()); 53867 case 6: return (Subtarget->isThumb()) && (Subtarget->isThumb1Only()); 53867 case 6: return (Subtarget->isThumb()) && (Subtarget->isThumb1Only()); 53868 case 7: return (Subtarget->hasNEON()); 53869 case 8: return (Subtarget->hasMVEIntegerOps()); 53870 case 9: return (Subtarget->hasV5TEOps()) && (!Subtarget->isThumb()) && (Subtarget->useMulOps()); 53870 case 9: return (Subtarget->hasV5TEOps()) && (!Subtarget->isThumb()) && (Subtarget->useMulOps()); 53870 case 9: return (Subtarget->hasV5TEOps()) && (!Subtarget->isThumb()) && (Subtarget->useMulOps()); 53871 case 10: return (Subtarget->hasDSP()) && (Subtarget->isThumb2()) && (Subtarget->useMulOps()); 53871 case 10: return (Subtarget->hasDSP()) && (Subtarget->isThumb2()) && (Subtarget->useMulOps()); 53871 case 10: return (Subtarget->hasDSP()) && (Subtarget->isThumb2()) && (Subtarget->useMulOps()); 53872 case 11: return (Subtarget->hasV8MBaselineOps()); 53873 case 12: return (Subtarget->hasV6Ops()) && (!Subtarget->isThumb()) && (Subtarget->useMulOps()); 53873 case 12: return (Subtarget->hasV6Ops()) && (!Subtarget->isThumb()) && (Subtarget->useMulOps()); 53873 case 12: return (Subtarget->hasV6Ops()) && (!Subtarget->isThumb()) && (Subtarget->useMulOps()); 53874 case 13: return (!Subtarget->isThumb()) && (!Subtarget->hasV6Ops()); 53874 case 13: return (!Subtarget->isThumb()) && (!Subtarget->hasV6Ops()); 53875 case 14: return (Subtarget->isThumb2()) && (Subtarget->useMulOps()); 53875 case 14: return (Subtarget->isThumb2()) && (Subtarget->useMulOps()); 53876 case 15: return (Subtarget->hasAcquireRelease()) && (Subtarget->hasV7Clrex()) && (Subtarget->isThumb()); 53876 case 15: return (Subtarget->hasAcquireRelease()) && (Subtarget->hasV7Clrex()) && (Subtarget->isThumb()); 53876 case 15: return (Subtarget->hasAcquireRelease()) && (Subtarget->hasV7Clrex()) && (Subtarget->isThumb()); 53877 case 16: return (Subtarget->hasV6Ops()) && (Subtarget->isThumb()) && (Subtarget->isThumb1Only()); 53877 case 16: return (Subtarget->hasV6Ops()) && (Subtarget->isThumb()) && (Subtarget->isThumb1Only()); 53877 case 16: return (Subtarget->hasV6Ops()) && (Subtarget->isThumb()) && (Subtarget->isThumb1Only()); 53878 case 17: return (Subtarget->hasMVEFloatOps()); 53879 case 18: return (Subtarget->hasCRC()) && (Subtarget->hasV8Ops()) && (!Subtarget->isThumb()); 53879 case 18: return (Subtarget->hasCRC()) && (Subtarget->hasV8Ops()) && (!Subtarget->isThumb()); 53879 case 18: return (Subtarget->hasCRC()) && (Subtarget->hasV8Ops()) && (!Subtarget->isThumb()); 53880 case 19: return (Subtarget->hasCRC()) && (Subtarget->hasV8Ops()) && (Subtarget->isThumb2()); 53880 case 19: return (Subtarget->hasCRC()) && (Subtarget->hasV8Ops()) && (Subtarget->isThumb2()); 53880 case 19: return (Subtarget->hasCRC()) && (Subtarget->hasV8Ops()) && (Subtarget->isThumb2()); 53881 case 20: return (Subtarget->hasV5TEOps()) && (!Subtarget->isThumb()); 53881 case 20: return (Subtarget->hasV5TEOps()) && (!Subtarget->isThumb()); 53882 case 21: return (Subtarget->hasFullFP16()); 53883 case 22: return (Subtarget->hasFPARMv8Base()); 53884 case 23: return (Subtarget->hasFP64()) && (Subtarget->hasFPARMv8Base()); 53884 case 23: return (Subtarget->hasFP64()) && (Subtarget->hasFPARMv8Base()); 53885 case 24: return (Subtarget->hasNEON()) && (Subtarget->hasV8Ops()); 53885 case 24: return (Subtarget->hasNEON()) && (Subtarget->hasV8Ops()); 53886 case 25: return (Subtarget->hasFullFP16()) && (Subtarget->hasNEON()) && (Subtarget->hasV8Ops()); 53886 case 25: return (Subtarget->hasFullFP16()) && (Subtarget->hasNEON()) && (Subtarget->hasV8Ops()); 53886 case 25: return (Subtarget->hasFullFP16()) && (Subtarget->hasNEON()) && (Subtarget->hasV8Ops()); 53887 case 26: return (Subtarget->hasFP64()) && (Subtarget->hasVFP2Base()); 53887 case 26: return (Subtarget->hasFP64()) && (Subtarget->hasVFP2Base()); 53888 case 27: return (!Subtarget->useNEONForSinglePrecisionFP()) && (Subtarget->hasVFP2Base()); 53888 case 27: return (!Subtarget->useNEONForSinglePrecisionFP()) && (Subtarget->hasVFP2Base()); 53889 case 28: return (Subtarget->hasNEON()) && (Subtarget->hasV8_1aOps()); 53889 case 28: return (Subtarget->hasNEON()) && (Subtarget->hasV8_1aOps()); 53890 case 29: return (Subtarget->hasDotProd()); 53891 case 30: return (Subtarget->hasFullFP16()) && (Subtarget->hasNEON()); 53891 case 30: return (Subtarget->hasFullFP16()) && (Subtarget->hasNEON()); 53892 case 31: return (Subtarget->hasCrypto()) && (Subtarget->hasV8Ops()); 53892 case 31: return (Subtarget->hasCrypto()) && (Subtarget->hasV8Ops()); 53893 case 32: return (Subtarget->hasFP16()) && (Subtarget->hasNEON()); 53893 case 32: return (Subtarget->hasFP16()) && (Subtarget->hasNEON()); 53894 case 33: return (Subtarget->hasFPRegs()); 53895 case 34: return (Subtarget->hasNEON()) && (MF->getDataLayout().isLittleEndian()); 53896 case 35: return (Subtarget->hasNEON()) && (MF->getDataLayout().isBigEndian()); 53897 case 36: return (Subtarget->hasFPRegs16()); 53898 case 37: return (Subtarget->hasMVEIntegerOps()) && (MF->getDataLayout().isLittleEndian()); 53899 case 38: return (Subtarget->hasMVEIntegerOps()) && (MF->getDataLayout().isBigEndian()); 53900 case 39: return (Subtarget->hasVFP2Base()); 53901 case 40: return (!Subtarget->isThumb()) && (!Subtarget->hasV8Ops()); 53901 case 40: return (!Subtarget->isThumb()) && (!Subtarget->hasV8Ops()); 53902 case 41: return (Subtarget->isThumb2()) && (!Subtarget->hasV8Ops()); 53902 case 41: return (Subtarget->isThumb2()) && (!Subtarget->hasV8Ops()); 53903 case 42: return (Subtarget->isThumb()) && (Subtarget->isTargetWindows()); 53903 case 42: return (Subtarget->isThumb()) && (Subtarget->isTargetWindows()); 53904 case 43: return (Subtarget->isThumb()); 53905 case 44: return (Subtarget->hasV6MOps()) && (Subtarget->isThumb()); 53905 case 44: return (Subtarget->hasV6MOps()) && (Subtarget->isThumb()); 53906 case 45: return (Subtarget->hasV7Ops()) && (!Subtarget->isThumb()); 53906 case 45: return (Subtarget->hasV7Ops()) && (!Subtarget->isThumb()); 53907 case 46: return (Subtarget->hasDataBarrier()) && (!Subtarget->isThumb()); 53907 case 46: return (Subtarget->hasDataBarrier()) && (!Subtarget->isThumb()); 53908 case 47: return (Subtarget->hasDataBarrier()) && (Subtarget->isThumb()); 53908 case 47: return (Subtarget->hasDataBarrier()) && (Subtarget->isThumb()); 53909 case 48: return (Subtarget->hasV6KOps()) && (!Subtarget->isThumb()); 53909 case 48: return (Subtarget->hasV6KOps()) && (!Subtarget->isThumb()); 53910 case 49: return (Subtarget->hasV7Clrex()) && (Subtarget->isThumb()); 53910 case 49: return (Subtarget->hasV7Clrex()) && (Subtarget->isThumb()); 53911 case 50: return (Subtarget->hasMPExtension()) && (Subtarget->hasV7Ops()) && (Subtarget->isThumb2()); 53911 case 50: return (Subtarget->hasMPExtension()) && (Subtarget->hasV7Ops()) && (Subtarget->isThumb2()); 53911 case 50: return (Subtarget->hasMPExtension()) && (Subtarget->hasV7Ops()) && (Subtarget->isThumb2()); 53912 case 51: return (Subtarget->hasMPExtension()) && (Subtarget->hasV7Ops()) && (!Subtarget->isThumb()); 53912 case 51: return (Subtarget->hasMPExtension()) && (Subtarget->hasV7Ops()) && (!Subtarget->isThumb()); 53912 case 51: return (Subtarget->hasMPExtension()) && (Subtarget->hasV7Ops()) && (!Subtarget->isThumb()); 53913 case 52: return (Subtarget->hasV7Ops()) && (Subtarget->isThumb2()); 53913 case 52: return (Subtarget->hasV7Ops()) && (Subtarget->isThumb2()); 53914 case 53: return (Subtarget->hasV8_1MMainlineOps()); 53915 case 54: return (Subtarget->hasFPRegs64()); 53916 case 55: return (!Subtarget->useMovt() || !Subtarget->allowPositionIndependentMovt()) && (!Subtarget->isThumb()); 53916 case 55: return (!Subtarget->useMovt() || !Subtarget->allowPositionIndependentMovt()) && (!Subtarget->isThumb()); 53916 case 55: return (!Subtarget->useMovt() || !Subtarget->allowPositionIndependentMovt()) && (!Subtarget->isThumb()); 53917 case 56: return (!Subtarget->isThumb()) && (Subtarget->useMovt() && Subtarget->allowPositionIndependentMovt()); 53917 case 56: return (!Subtarget->isThumb()) && (Subtarget->useMovt() && Subtarget->allowPositionIndependentMovt()); 53917 case 56: return (!Subtarget->isThumb()) && (Subtarget->useMovt() && Subtarget->allowPositionIndependentMovt()); 53918 case 57: return (MF->getDataLayout().isLittleEndian()) && (Subtarget->isThumb()) && (Subtarget->isThumb1Only()); 53918 case 57: return (MF->getDataLayout().isLittleEndian()) && (Subtarget->isThumb()) && (Subtarget->isThumb1Only()); 53919 case 58: return (Subtarget->hasAcquireRelease()) && (Subtarget->hasV7Clrex()) && (!Subtarget->isThumb()); 53919 case 58: return (Subtarget->hasAcquireRelease()) && (Subtarget->hasV7Clrex()) && (!Subtarget->isThumb()); 53919 case 58: return (Subtarget->hasAcquireRelease()) && (Subtarget->hasV7Clrex()) && (!Subtarget->isThumb()); 53920 case 59: return (Subtarget->hasV6T2Ops()) && (Subtarget->isThumb2()); 53920 case 59: return (Subtarget->hasV6T2Ops()) && (Subtarget->isThumb2()); 53921 case 60: return (Subtarget->hasV5TOps()) && (!Subtarget->isThumb()); 53921 case 60: return (Subtarget->hasV5TOps()) && (!Subtarget->isThumb()); 53922 case 61: return (!Subtarget->isThumb()) && (!Subtarget->hasV6Ops()) && (Subtarget->useMulOps()); 53922 case 61: return (!Subtarget->isThumb()) && (!Subtarget->hasV6Ops()) && (Subtarget->useMulOps()); 53922 case 61: return (!Subtarget->isThumb()) && (!Subtarget->hasV6Ops()) && (Subtarget->useMulOps()); 53923 case 62: return (Subtarget->hasV6T2Ops()) && (!Subtarget->isThumb()) && (Subtarget->useMulOps()); 53923 case 62: return (Subtarget->hasV6T2Ops()) && (!Subtarget->isThumb()) && (Subtarget->useMulOps()); 53923 case 62: return (Subtarget->hasV6T2Ops()) && (!Subtarget->isThumb()) && (Subtarget->useMulOps()); 53924 case 63: return (Subtarget->isThumb1Only()); 53925 case 64: return (!Subtarget->isMClass()) && (Subtarget->isThumb2()); 53925 case 64: return (!Subtarget->isMClass()) && (Subtarget->isThumb2()); 53926 case 65: return (Subtarget->hasMVEIntegerOps()) && (Subtarget->hasV8_1MMainlineOps()); 53926 case 65: return (Subtarget->hasMVEIntegerOps()) && (Subtarget->hasV8_1MMainlineOps()); 53927 case 66: return (Subtarget->hasV5TOps()) && (Subtarget->isThumb()); 53927 case 66: return (Subtarget->hasV5TOps()) && (Subtarget->isThumb()); 53928 case 67: return (Subtarget->hasV4TOps()) && (!Subtarget->isThumb()); 53928 case 67: return (Subtarget->hasV4TOps()) && (!Subtarget->isThumb()); 53929 case 68: return (!Subtarget->isThumb()) && (!Subtarget->hasV4TOps()); 53929 case 68: return (!Subtarget->isThumb()) && (!Subtarget->hasV4TOps()); 53930 case 69: return (!Subtarget->useMovt()) && (!Subtarget->isThumb()); 53930 case 69: return (!Subtarget->useMovt()) && (!Subtarget->isThumb()); 53931 case 70: return (!Subtarget->isThumb()) && (Subtarget->useMovt()); 53931 case 70: return (!Subtarget->isThumb()) && (Subtarget->useMovt()); 53932 case 71: return (!Subtarget->useMovt()) && (Subtarget->isThumb()); 53932 case 71: return (!Subtarget->useMovt()) && (Subtarget->isThumb()); 53933 case 72: return (Subtarget->hasV8MBaselineOps()) && (Subtarget->isThumb()) && (Subtarget->useMovt()); 53933 case 72: return (Subtarget->hasV8MBaselineOps()) && (Subtarget->isThumb()) && (Subtarget->useMovt()); 53933 case 72: return (Subtarget->hasV8MBaselineOps()) && (Subtarget->isThumb()) && (Subtarget->useMovt()); 53934 case 73: return (Subtarget->isThumb2()) && (Subtarget->useMovt()); 53934 case 73: return (Subtarget->isThumb2()) && (Subtarget->useMovt()); 53935 case 74: return (!Subtarget->useMovt() || !Subtarget->allowPositionIndependentMovt()) && (Subtarget->isThumb()); 53935 case 74: return (!Subtarget->useMovt() || !Subtarget->allowPositionIndependentMovt()) && (Subtarget->isThumb()); 53935 case 74: return (!Subtarget->useMovt() || !Subtarget->allowPositionIndependentMovt()) && (Subtarget->isThumb()); 53936 case 75: return (Subtarget->hasV8MBaselineOps()) && (Subtarget->isThumb()) && (Subtarget->useMovt() && Subtarget->allowPositionIndependentMovt()); 53936 case 75: return (Subtarget->hasV8MBaselineOps()) && (Subtarget->isThumb()) && (Subtarget->useMovt() && Subtarget->allowPositionIndependentMovt()); 53936 case 75: return (Subtarget->hasV8MBaselineOps()) && (Subtarget->isThumb()) && (Subtarget->useMovt() && Subtarget->allowPositionIndependentMovt()); 53936 case 75: return (Subtarget->hasV8MBaselineOps()) && (Subtarget->isThumb()) && (Subtarget->useMovt() && Subtarget->allowPositionIndependentMovt()); 53937 case 76: return (Subtarget->isThumb2()) && (Subtarget->useMovt() && Subtarget->allowPositionIndependentMovt()); 53937 case 76: return (Subtarget->isThumb2()) && (Subtarget->useMovt() && Subtarget->allowPositionIndependentMovt()); 53937 case 76: return (Subtarget->isThumb2()) && (Subtarget->useMovt() && Subtarget->allowPositionIndependentMovt()); 53938 case 77: return (Subtarget->hasFPRegs()) && (!Subtarget->hasSlowVGETLNi32()); 53938 case 77: return (Subtarget->hasFPRegs()) && (!Subtarget->hasSlowVGETLNi32()); 53939 case 78: return (Subtarget->hasNEON()) && (Subtarget->hasSlowVGETLNi32()); 53939 case 78: return (Subtarget->hasNEON()) && (Subtarget->hasSlowVGETLNi32()); 53940 case 79: return (!Subtarget->hasSlowVGETLNi32()) && (Subtarget->hasNEON()); 53940 case 79: return (!Subtarget->hasSlowVGETLNi32()) && (Subtarget->hasNEON()); 53941 case 80: return (Subtarget->hasNEON()) && (Subtarget->useNEONForSinglePrecisionFP()); 53941 case 80: return (Subtarget->hasNEON()) && (Subtarget->useNEONForSinglePrecisionFP()); 53942 case 81: return (Subtarget->isThumb()) && (Subtarget->useMovt()); 53942 case 81: return (Subtarget->isThumb()) && (Subtarget->useMovt()); 53943 case 82: return (!Subtarget->isThumb()) && (Subtarget->useNaClTrap()); 53943 case 82: return (!Subtarget->isThumb()) && (Subtarget->useNaClTrap()); 53944 case 83: return (!Subtarget->useNaClTrap()) && (!Subtarget->isThumb()); 53944 case 83: return (!Subtarget->useNaClTrap()) && (!Subtarget->isThumb()); 53945 case 84: return (!Subtarget->isThumb()) && (!Subtarget->hasV5TOps()); 53945 case 84: return (!Subtarget->isThumb()) && (!Subtarget->hasV5TOps()); 53946 case 85: return (Subtarget->isThumb()) && (!Subtarget->hasV5TOps()); 53946 case 85: return (Subtarget->isThumb()) && (!Subtarget->hasV5TOps()); 53947 case 86: return (Subtarget->hasDivideInARMMode()) && (!Subtarget->isThumb()); 53947 case 86: return (Subtarget->hasDivideInARMMode()) && (!Subtarget->isThumb()); 53948 case 87: return (Subtarget->hasDivideInThumbMode()) && (Subtarget->hasV8MBaselineOps()) && (Subtarget->isThumb()); 53948 case 87: return (Subtarget->hasDivideInThumbMode()) && (Subtarget->hasV8MBaselineOps()) && (Subtarget->isThumb()); 53948 case 87: return (Subtarget->hasDivideInThumbMode()) && (Subtarget->hasV8MBaselineOps()) && (Subtarget->isThumb()); 53949 case 88: return (!Subtarget->isThumb()) && (!Subtarget->isReadTPHard()); 53949 case 88: return (!Subtarget->isThumb()) && (!Subtarget->isReadTPHard()); 53950 case 89: return (!Subtarget->isThumb()) && (Subtarget->isReadTPHard()); 53950 case 89: return (!Subtarget->isThumb()) && (Subtarget->isReadTPHard()); 53951 case 90: return (!Subtarget->isTargetWindows()) && (Subtarget->isThumb()); 53951 case 90: return (!Subtarget->isTargetWindows()) && (Subtarget->isThumb()); 53952 case 91: return (Subtarget->hasFPRegs()) && (Subtarget->preferVMOVSR() ||!Subtarget->useNEONForSinglePrecisionFP()); 53952 case 91: return (Subtarget->hasFPRegs()) && (Subtarget->preferVMOVSR() ||!Subtarget->useNEONForSinglePrecisionFP()); 53952 case 91: return (Subtarget->hasFPRegs()) && (Subtarget->preferVMOVSR() ||!Subtarget->useNEONForSinglePrecisionFP()); 53953 case 92: return (!Subtarget->preferVMOVSR() &&Subtarget->useNEONForSinglePrecisionFP()) && (Subtarget->hasNEON()); 53953 case 92: return (!Subtarget->preferVMOVSR() &&Subtarget->useNEONForSinglePrecisionFP()) && (Subtarget->hasNEON()); 53953 case 92: return (!Subtarget->preferVMOVSR() &&Subtarget->useNEONForSinglePrecisionFP()) && (Subtarget->hasNEON()); 53954 case 93: return (Subtarget->hasFP16()); 53955 case 94: return (Subtarget->hasVFP2Base()) && (!Subtarget->isThumb()); 53955 case 94: return (Subtarget->hasVFP2Base()) && (!Subtarget->isThumb()); 53956 case 95: return (!Subtarget->isThumb()) && (!Subtarget->hasVFP2Base()); 53956 case 95: return (!Subtarget->isThumb()) && (!Subtarget->hasVFP2Base()); 53957 case 96: return (Subtarget->hasVFP2Base()) && (Subtarget->isThumb2()); 53957 case 96: return (Subtarget->hasVFP2Base()) && (Subtarget->isThumb2()); 53958 case 97: return (Subtarget->isThumb2()) && (!Subtarget->hasVFP2Base()); 53958 case 97: return (Subtarget->isThumb2()) && (!Subtarget->hasVFP2Base()); 53959 case 98: return (Subtarget->hasFP64()) && (Subtarget->hasVFP2Base()) && (((Subtarget->useFPVMLx() && TM.Options.AllowFPOpFusion != FPOpFusion::Fast) ||Subtarget->hasMinSize())); 53959 case 98: return (Subtarget->hasFP64()) && (Subtarget->hasVFP2Base()) && (((Subtarget->useFPVMLx() && TM.Options.AllowFPOpFusion != FPOpFusion::Fast) ||Subtarget->hasMinSize())); 53959 case 98: return (Subtarget->hasFP64()) && (Subtarget->hasVFP2Base()) && (((Subtarget->useFPVMLx() && TM.Options.AllowFPOpFusion != FPOpFusion::Fast) ||Subtarget->hasMinSize())); 53959 case 98: return (Subtarget->hasFP64()) && (Subtarget->hasVFP2Base()) && (((Subtarget->useFPVMLx() && TM.Options.AllowFPOpFusion != FPOpFusion::Fast) ||Subtarget->hasMinSize())); 53960 case 99: return (Subtarget->hasFP64()) && (Subtarget->hasVFP4Base()) && ((TM.Options.AllowFPOpFusion == FPOpFusion::Fast && Subtarget->hasVFP4Base()) && !Subtarget->isTargetDarwin() &&Subtarget->useFPVMLx()); 53960 case 99: return (Subtarget->hasFP64()) && (Subtarget->hasVFP4Base()) && ((TM.Options.AllowFPOpFusion == FPOpFusion::Fast && Subtarget->hasVFP4Base()) && !Subtarget->isTargetDarwin() &&Subtarget->useFPVMLx()); 53960 case 99: return (Subtarget->hasFP64()) && (Subtarget->hasVFP4Base()) && ((TM.Options.AllowFPOpFusion == FPOpFusion::Fast && Subtarget->hasVFP4Base()) && !Subtarget->isTargetDarwin() &&Subtarget->useFPVMLx()); 53960 case 99: return (Subtarget->hasFP64()) && (Subtarget->hasVFP4Base()) && ((TM.Options.AllowFPOpFusion == FPOpFusion::Fast && Subtarget->hasVFP4Base()) && !Subtarget->isTargetDarwin() &&Subtarget->useFPVMLx()); 53960 case 99: return (Subtarget->hasFP64()) && (Subtarget->hasVFP4Base()) && ((TM.Options.AllowFPOpFusion == FPOpFusion::Fast && Subtarget->hasVFP4Base()) && !Subtarget->isTargetDarwin() &&Subtarget->useFPVMLx()); 53961 case 100: return (!Subtarget->useNEONForSinglePrecisionFP()) && (Subtarget->hasVFP2Base()) && (((Subtarget->useFPVMLx() && TM.Options.AllowFPOpFusion != FPOpFusion::Fast) ||Subtarget->hasMinSize())); 53961 case 100: return (!Subtarget->useNEONForSinglePrecisionFP()) && (Subtarget->hasVFP2Base()) && (((Subtarget->useFPVMLx() && TM.Options.AllowFPOpFusion != FPOpFusion::Fast) ||Subtarget->hasMinSize())); 53961 case 100: return (!Subtarget->useNEONForSinglePrecisionFP()) && (Subtarget->hasVFP2Base()) && (((Subtarget->useFPVMLx() && TM.Options.AllowFPOpFusion != FPOpFusion::Fast) ||Subtarget->hasMinSize())); 53961 case 100: return (!Subtarget->useNEONForSinglePrecisionFP()) && (Subtarget->hasVFP2Base()) && (((Subtarget->useFPVMLx() && TM.Options.AllowFPOpFusion != FPOpFusion::Fast) ||Subtarget->hasMinSize())); 53962 case 101: return (!Subtarget->useNEONForSinglePrecisionFP()) && (Subtarget->hasVFP4Base()) && ((TM.Options.AllowFPOpFusion == FPOpFusion::Fast && Subtarget->hasVFP4Base()) && !Subtarget->isTargetDarwin() &&Subtarget->useFPVMLx()); 53962 case 101: return (!Subtarget->useNEONForSinglePrecisionFP()) && (Subtarget->hasVFP4Base()) && ((TM.Options.AllowFPOpFusion == FPOpFusion::Fast && Subtarget->hasVFP4Base()) && !Subtarget->isTargetDarwin() &&Subtarget->useFPVMLx()); 53962 case 101: return (!Subtarget->useNEONForSinglePrecisionFP()) && (Subtarget->hasVFP4Base()) && ((TM.Options.AllowFPOpFusion == FPOpFusion::Fast && Subtarget->hasVFP4Base()) && !Subtarget->isTargetDarwin() &&Subtarget->useFPVMLx()); 53962 case 101: return (!Subtarget->useNEONForSinglePrecisionFP()) && (Subtarget->hasVFP4Base()) && ((TM.Options.AllowFPOpFusion == FPOpFusion::Fast && Subtarget->hasVFP4Base()) && !Subtarget->isTargetDarwin() &&Subtarget->useFPVMLx()); 53962 case 101: return (!Subtarget->useNEONForSinglePrecisionFP()) && (Subtarget->hasVFP4Base()) && ((TM.Options.AllowFPOpFusion == FPOpFusion::Fast && Subtarget->hasVFP4Base()) && !Subtarget->isTargetDarwin() &&Subtarget->useFPVMLx()); 53963 case 102: return (Subtarget->hasFullFP16()) && (((Subtarget->useFPVMLx() && TM.Options.AllowFPOpFusion != FPOpFusion::Fast) ||Subtarget->hasMinSize())); 53963 case 102: return (Subtarget->hasFullFP16()) && (((Subtarget->useFPVMLx() && TM.Options.AllowFPOpFusion != FPOpFusion::Fast) ||Subtarget->hasMinSize())); 53963 case 102: return (Subtarget->hasFullFP16()) && (((Subtarget->useFPVMLx() && TM.Options.AllowFPOpFusion != FPOpFusion::Fast) ||Subtarget->hasMinSize())); 53964 case 103: return (Subtarget->hasFullFP16()) && ((TM.Options.AllowFPOpFusion == FPOpFusion::Fast && Subtarget->hasVFP4Base()) && !Subtarget->isTargetDarwin() &&Subtarget->useFPVMLx()); 53964 case 103: return (Subtarget->hasFullFP16()) && ((TM.Options.AllowFPOpFusion == FPOpFusion::Fast && Subtarget->hasVFP4Base()) && !Subtarget->isTargetDarwin() &&Subtarget->useFPVMLx()); 53964 case 103: return (Subtarget->hasFullFP16()) && ((TM.Options.AllowFPOpFusion == FPOpFusion::Fast && Subtarget->hasVFP4Base()) && !Subtarget->isTargetDarwin() &&Subtarget->useFPVMLx()); 53964 case 103: return (Subtarget->hasFullFP16()) && ((TM.Options.AllowFPOpFusion == FPOpFusion::Fast && Subtarget->hasVFP4Base()) && !Subtarget->isTargetDarwin() &&Subtarget->useFPVMLx()); 53965 case 104: return (!Subtarget->useNEONForSinglePrecisionFP()) && (Subtarget->hasFullFP16()) && (((Subtarget->useFPVMLx() && TM.Options.AllowFPOpFusion != FPOpFusion::Fast) ||Subtarget->hasMinSize())); 53965 case 104: return (!Subtarget->useNEONForSinglePrecisionFP()) && (Subtarget->hasFullFP16()) && (((Subtarget->useFPVMLx() && TM.Options.AllowFPOpFusion != FPOpFusion::Fast) ||Subtarget->hasMinSize())); 53965 case 104: return (!Subtarget->useNEONForSinglePrecisionFP()) && (Subtarget->hasFullFP16()) && (((Subtarget->useFPVMLx() && TM.Options.AllowFPOpFusion != FPOpFusion::Fast) ||Subtarget->hasMinSize())); 53965 case 104: return (!Subtarget->useNEONForSinglePrecisionFP()) && (Subtarget->hasFullFP16()) && (((Subtarget->useFPVMLx() && TM.Options.AllowFPOpFusion != FPOpFusion::Fast) ||Subtarget->hasMinSize())); 53966 case 105: return (!Subtarget->useNEONForSinglePrecisionFP()) && (Subtarget->hasFullFP16()) && ((TM.Options.AllowFPOpFusion == FPOpFusion::Fast && Subtarget->hasVFP4Base()) && !Subtarget->isTargetDarwin() &&Subtarget->useFPVMLx()); 53966 case 105: return (!Subtarget->useNEONForSinglePrecisionFP()) && (Subtarget->hasFullFP16()) && ((TM.Options.AllowFPOpFusion == FPOpFusion::Fast && Subtarget->hasVFP4Base()) && !Subtarget->isTargetDarwin() &&Subtarget->useFPVMLx()); 53966 case 105: return (!Subtarget->useNEONForSinglePrecisionFP()) && (Subtarget->hasFullFP16()) && ((TM.Options.AllowFPOpFusion == FPOpFusion::Fast && Subtarget->hasVFP4Base()) && !Subtarget->isTargetDarwin() &&Subtarget->useFPVMLx()); 53966 case 105: return (!Subtarget->useNEONForSinglePrecisionFP()) && (Subtarget->hasFullFP16()) && ((TM.Options.AllowFPOpFusion == FPOpFusion::Fast && Subtarget->hasVFP4Base()) && !Subtarget->isTargetDarwin() &&Subtarget->useFPVMLx()); 53966 case 105: return (!Subtarget->useNEONForSinglePrecisionFP()) && (Subtarget->hasFullFP16()) && ((TM.Options.AllowFPOpFusion == FPOpFusion::Fast && Subtarget->hasVFP4Base()) && !Subtarget->isTargetDarwin() &&Subtarget->useFPVMLx()); 53967 case 106: return (Subtarget->hasNEON()) && (((Subtarget->useFPVMLx() && TM.Options.AllowFPOpFusion != FPOpFusion::Fast) ||Subtarget->hasMinSize())) && (Subtarget->useNEONForSinglePrecisionFP()); 53967 case 106: return (Subtarget->hasNEON()) && (((Subtarget->useFPVMLx() && TM.Options.AllowFPOpFusion != FPOpFusion::Fast) ||Subtarget->hasMinSize())) && (Subtarget->useNEONForSinglePrecisionFP()); 53967 case 106: return (Subtarget->hasNEON()) && (((Subtarget->useFPVMLx() && TM.Options.AllowFPOpFusion != FPOpFusion::Fast) ||Subtarget->hasMinSize())) && (Subtarget->useNEONForSinglePrecisionFP()); 53967 case 106: return (Subtarget->hasNEON()) && (((Subtarget->useFPVMLx() && TM.Options.AllowFPOpFusion != FPOpFusion::Fast) ||Subtarget->hasMinSize())) && (Subtarget->useNEONForSinglePrecisionFP()); 53968 case 107: return (Subtarget->hasVFP4Base()) && ((TM.Options.AllowFPOpFusion == FPOpFusion::Fast && Subtarget->hasVFP4Base()) && !Subtarget->isTargetDarwin() &&Subtarget->useFPVMLx()) && (Subtarget->useNEONForSinglePrecisionFP()); 53968 case 107: return (Subtarget->hasVFP4Base()) && ((TM.Options.AllowFPOpFusion == FPOpFusion::Fast && Subtarget->hasVFP4Base()) && !Subtarget->isTargetDarwin() &&Subtarget->useFPVMLx()) && (Subtarget->useNEONForSinglePrecisionFP()); 53968 case 107: return (Subtarget->hasVFP4Base()) && ((TM.Options.AllowFPOpFusion == FPOpFusion::Fast && Subtarget->hasVFP4Base()) && !Subtarget->isTargetDarwin() &&Subtarget->useFPVMLx()) && (Subtarget->useNEONForSinglePrecisionFP()); 53968 case 107: return (Subtarget->hasVFP4Base()) && ((TM.Options.AllowFPOpFusion == FPOpFusion::Fast && Subtarget->hasVFP4Base()) && !Subtarget->isTargetDarwin() &&Subtarget->useFPVMLx()) && (Subtarget->useNEONForSinglePrecisionFP()); 53968 case 107: return (Subtarget->hasVFP4Base()) && ((TM.Options.AllowFPOpFusion == FPOpFusion::Fast && Subtarget->hasVFP4Base()) && !Subtarget->isTargetDarwin() &&Subtarget->useFPVMLx()) && (Subtarget->useNEONForSinglePrecisionFP()); 53969 case 108: return (Subtarget->hasNEON()) && (((Subtarget->useFPVMLx() && TM.Options.AllowFPOpFusion != FPOpFusion::Fast) ||Subtarget->hasMinSize())); 53969 case 108: return (Subtarget->hasNEON()) && (((Subtarget->useFPVMLx() && TM.Options.AllowFPOpFusion != FPOpFusion::Fast) ||Subtarget->hasMinSize())); 53969 case 108: return (Subtarget->hasNEON()) && (((Subtarget->useFPVMLx() && TM.Options.AllowFPOpFusion != FPOpFusion::Fast) ||Subtarget->hasMinSize())); 53970 case 109: return (Subtarget->hasFullFP16()) && (Subtarget->hasNEON()) && (((Subtarget->useFPVMLx() && TM.Options.AllowFPOpFusion != FPOpFusion::Fast) ||Subtarget->hasMinSize())); 53970 case 109: return (Subtarget->hasFullFP16()) && (Subtarget->hasNEON()) && (((Subtarget->useFPVMLx() && TM.Options.AllowFPOpFusion != FPOpFusion::Fast) ||Subtarget->hasMinSize())); 53970 case 109: return (Subtarget->hasFullFP16()) && (Subtarget->hasNEON()) && (((Subtarget->useFPVMLx() && TM.Options.AllowFPOpFusion != FPOpFusion::Fast) ||Subtarget->hasMinSize())); 53970 case 109: return (Subtarget->hasFullFP16()) && (Subtarget->hasNEON()) && (((Subtarget->useFPVMLx() && TM.Options.AllowFPOpFusion != FPOpFusion::Fast) ||Subtarget->hasMinSize())); 53971 case 110: return (Subtarget->hasNEON()) && (Subtarget->hasVFP4Base()) && ((TM.Options.AllowFPOpFusion == FPOpFusion::Fast && Subtarget->hasVFP4Base()) && !Subtarget->isTargetDarwin() &&Subtarget->useFPVMLx()); 53971 case 110: return (Subtarget->hasNEON()) && (Subtarget->hasVFP4Base()) && ((TM.Options.AllowFPOpFusion == FPOpFusion::Fast && Subtarget->hasVFP4Base()) && !Subtarget->isTargetDarwin() &&Subtarget->useFPVMLx()); 53971 case 110: return (Subtarget->hasNEON()) && (Subtarget->hasVFP4Base()) && ((TM.Options.AllowFPOpFusion == FPOpFusion::Fast && Subtarget->hasVFP4Base()) && !Subtarget->isTargetDarwin() &&Subtarget->useFPVMLx()); 53971 case 110: return (Subtarget->hasNEON()) && (Subtarget->hasVFP4Base()) && ((TM.Options.AllowFPOpFusion == FPOpFusion::Fast && Subtarget->hasVFP4Base()) && !Subtarget->isTargetDarwin() &&Subtarget->useFPVMLx()); 53971 case 110: return (Subtarget->hasNEON()) && (Subtarget->hasVFP4Base()) && ((TM.Options.AllowFPOpFusion == FPOpFusion::Fast && Subtarget->hasVFP4Base()) && !Subtarget->isTargetDarwin() &&Subtarget->useFPVMLx()); 53972 case 111: return (Subtarget->hasFullFP16()) && (Subtarget->hasNEON()) && ((TM.Options.AllowFPOpFusion == FPOpFusion::Fast && Subtarget->hasVFP4Base()) && !Subtarget->isTargetDarwin() &&Subtarget->useFPVMLx()); 53972 case 111: return (Subtarget->hasFullFP16()) && (Subtarget->hasNEON()) && ((TM.Options.AllowFPOpFusion == FPOpFusion::Fast && Subtarget->hasVFP4Base()) && !Subtarget->isTargetDarwin() &&Subtarget->useFPVMLx()); 53972 case 111: return (Subtarget->hasFullFP16()) && (Subtarget->hasNEON()) && ((TM.Options.AllowFPOpFusion == FPOpFusion::Fast && Subtarget->hasVFP4Base()) && !Subtarget->isTargetDarwin() &&Subtarget->useFPVMLx()); 53972 case 111: return (Subtarget->hasFullFP16()) && (Subtarget->hasNEON()) && ((TM.Options.AllowFPOpFusion == FPOpFusion::Fast && Subtarget->hasVFP4Base()) && !Subtarget->isTargetDarwin() &&Subtarget->useFPVMLx()); 53972 case 111: return (Subtarget->hasFullFP16()) && (Subtarget->hasNEON()) && ((TM.Options.AllowFPOpFusion == FPOpFusion::Fast && Subtarget->hasVFP4Base()) && !Subtarget->isTargetDarwin() &&Subtarget->useFPVMLx()); 53973 case 112: return (Subtarget->hasMVEFloatOps()) && ((TM.Options.AllowFPOpFusion == FPOpFusion::Fast && Subtarget->hasVFP4Base()) && !Subtarget->isTargetDarwin() &&Subtarget->useFPVMLx()); 53973 case 112: return (Subtarget->hasMVEFloatOps()) && ((TM.Options.AllowFPOpFusion == FPOpFusion::Fast && Subtarget->hasVFP4Base()) && !Subtarget->isTargetDarwin() &&Subtarget->useFPVMLx()); 53973 case 112: return (Subtarget->hasMVEFloatOps()) && ((TM.Options.AllowFPOpFusion == FPOpFusion::Fast && Subtarget->hasVFP4Base()) && !Subtarget->isTargetDarwin() &&Subtarget->useFPVMLx()); 53973 case 112: return (Subtarget->hasMVEFloatOps()) && ((TM.Options.AllowFPOpFusion == FPOpFusion::Fast && Subtarget->hasVFP4Base()) && !Subtarget->isTargetDarwin() &&Subtarget->useFPVMLx()); 53974 case 113: return (Subtarget->hasFP64()) && (Subtarget->hasVFP4Base()); 53974 case 113: return (Subtarget->hasFP64()) && (Subtarget->hasVFP4Base()); 53975 case 114: return (Subtarget->hasVFP4Base()); 53976 case 115: return (Subtarget->hasNEON()) && (Subtarget->hasVFP4Base()); 53976 case 115: return (Subtarget->hasNEON()) && (Subtarget->hasVFP4Base()); 53977 case 116: return (Subtarget->hasFP64()) && (!TM.Options.HonorSignDependentRoundingFPMath()); 53979 case 118: return (Subtarget->hasFP64()) && (Subtarget->hasVFP3Base()); 53979 case 118: return (Subtarget->hasFP64()) && (Subtarget->hasVFP3Base()); 53980 case 119: return (Subtarget->hasVFP3Base()); 53981 case 120: return (Subtarget->hasVFP2Base()) && (Subtarget->preferVMOVSR() ||!Subtarget->useNEONForSinglePrecisionFP()); 53981 case 120: return (Subtarget->hasVFP2Base()) && (Subtarget->preferVMOVSR() ||!Subtarget->useNEONForSinglePrecisionFP()); 53981 case 120: return (Subtarget->hasVFP2Base()) && (Subtarget->preferVMOVSR() ||!Subtarget->useNEONForSinglePrecisionFP()); 53982 case 121: return (Subtarget->hasZeroCycleZeroing()); 53983 case 122: return (!Subtarget->hasSlowVDUP32()) && (Subtarget->hasNEON()); 53983 case 122: return (!Subtarget->hasSlowVDUP32()) && (Subtarget->hasNEON()); 53984 case 123: return (Subtarget->hasNEON()) && (Subtarget->hasSlowVDUP32()); 53984 case 123: return (Subtarget->hasNEON()) && (Subtarget->hasSlowVDUP32()); 54724 if (Subtarget->useMovt())lib/Target/ARM/ARMISelDAGToDAG.cpp
63 Subtarget = &MF.getSubtarget<ARMSubtarget>(); 347 if (!Subtarget->hasV6T2Ops()) 350 bool isThumb2 = Subtarget->isThumb(); 436 if (!Subtarget->hasVMLxHazards()) 477 if (!Subtarget->isLikeA9() && !Subtarget->isSwift()) 477 if (!Subtarget->isLikeA9() && !Subtarget->isSwift()) 483 (ShAmt == 2 || (Subtarget->isSwift() && ShAmt == 1)); 515 unsigned OldCost = ConstantMaterializationCost(MulConstVal, Subtarget); 516 unsigned NewCost = ConstantMaterializationCost(NewMulConstVal, Subtarget); 656 ((!Subtarget->isLikeA9() && !Subtarget->isSwift()) || N.hasOneUse())) { 656 ((!Subtarget->isLikeA9() && !Subtarget->isSwift()) || N.hasOneUse())) { 720 !(Subtarget->isLikeA9() || Subtarget->isSwift() || 720 !(Subtarget->isLikeA9() || Subtarget->isSwift() || 1639 bool IsLE = Subtarget->isLittle(); 2634 if (!Subtarget->hasV6T2Ops()) 2638 ? (Subtarget->isThumb() ? ARM::t2SBFX : ARM::SBFX) 2639 : (Subtarget->isThumb() ? ARM::t2UBFX : ARM::UBFX); 2669 if (Subtarget->isThumb()) { 2784 if (Subtarget->isThumb1Only()) 2801 unsigned Opcode = Subtarget->isThumb2() ? ARM::t2ABS : ARM::ABS; 2849 if (!Subtarget->isThumb()) 2877 if (Subtarget->isThumb2()) { 2906 } else if (!Subtarget->hasV6T2Ops()) { 2940 if (Subtarget->isThumb1Only() && ST->isUnindexed()) { 2987 if (ConstantMaterializationCost(Val, Subtarget) > 2) { 2993 if (Subtarget->isThumb()) { 3035 if (Subtarget->isThumb1Only()) { 3045 unsigned Opc = ((Subtarget->isThumb() && Subtarget->hasThumb2()) ? 3045 unsigned Opc = ((Subtarget->isThumb() && Subtarget->hasThumb2()) ? 3064 if (Subtarget->isThumb1Only()) 3077 if (Subtarget->isThumb()) { 3096 if (Subtarget->isThumb()) { 3118 if (N1C && N1C->hasOneUse() && Subtarget->isThumb()) { 3126 Subtarget->hasThumb2() && (is_t2_so_imm(Imm) || is_t2_so_imm_not(Imm)); 3128 ConstantMaterializationCost(Imm, Subtarget) > 3129 ConstantMaterializationCost(~Imm, Subtarget)) { 3139 if (!Subtarget->hasThumb2()) { 3164 unsigned Opc = (Subtarget->isThumb() && Subtarget->hasThumb2()) 3164 unsigned Opc = (Subtarget->isThumb() && Subtarget->hasThumb2()) 3166 : (Subtarget->hasV6T2Ops() ? ARM::MOVTi16 : 0); 3195 unsigned Opc = Subtarget->isThumb() ? ARM::t2UMAAL : ARM::UMAAL; 3204 if (Subtarget->isThumb()) { 3217 Subtarget->hasV6Ops() ? ARM::UMLAL : ARM::UMLALv5, dl, 3223 if (Subtarget->isThumb()) { 3236 Subtarget->hasV6Ops() ? ARM::SMLAL : ARM::SMLALv5, dl, 3242 if (!Subtarget->hasV6Ops() || !Subtarget->hasDSP()) 3242 if (!Subtarget->hasV6Ops() || !Subtarget->hasDSP()) 3251 if (Subtarget->isThumb()) 3252 assert(Subtarget->hasThumb2() && 3265 unsigned Opc = Subtarget->isThumb2() ? ARM::t2SMMLS : ARM::SMMLS; 3273 if (Subtarget->hasMVEIntegerOps() && tryMVEIndexedLoad(N)) 3275 if (Subtarget->isThumb() && Subtarget->hasThumb2()) { 3275 if (Subtarget->isThumb() && Subtarget->hasThumb2()) { 3278 } else if (Subtarget->isThumb()) { 3322 unsigned Opc = Subtarget->isThumb() ? 3323 ((Subtarget->hasThumb2()) ? ARM::t2Bcc : ARM::tBcc) : ARM::Bcc; 3405 if (C && C->getSExtValue() < 0 && Subtarget->isThumb()) { 3414 if (Subtarget->isThumb2()) { 3809 if (Subtarget->isThumb()) 3840 bool isThumb = Subtarget->isThumb() && Subtarget->hasV8MBaselineOps(); 3840 bool isThumb = Subtarget->isThumb() && Subtarget->hasV8MBaselineOps(); 3907 bool isThumb = Subtarget->isThumb() && Subtarget->hasThumb2(); 3907 bool isThumb = Subtarget->isThumb() && Subtarget->hasThumb2(); 4417 bool IsThumb2 = Subtarget->isThumb2(); 4476 if (!Subtarget->hasVFP2Base()) 4478 if (Opcode == ARM::VMRS_MVFR2 && !Subtarget->hasFPARMv8Base()) 4491 if (Subtarget->isMClass()) { 4492 int SYSmValue = getMClassRegisterMask(SpecialReg, Subtarget); 4532 bool IsThumb2 = Subtarget->isThumb2(); 4587 if (!Subtarget->hasVFP2Base()) 4602 if (Subtarget->isMClass()) { 4603 int SYSmValue = getMClassRegisterMask(SpecialReg, Subtarget);