Lines Matching refs:Pat
837 def : Pat<(v4f64 (scalar_to_vector f64:$A)),
839 def : Pat<(v4f32 (scalar_to_vector f32:$A)),
842 def : Pat<(f64 (extractelt v4f64:$S, 0)),
844 def : Pat<(f32 (extractelt v4f32:$S, 0)),
847 def : Pat<(f64 (extractelt v4f64:$S, 1)),
849 def : Pat<(f64 (extractelt v4f64:$S, 2)),
851 def : Pat<(f64 (extractelt v4f64:$S, 3)),
854 def : Pat<(f32 (extractelt v4f32:$S, 1)),
856 def : Pat<(f32 (extractelt v4f32:$S, 2)),
858 def : Pat<(f32 (extractelt v4f32:$S, 3)),
861 def : Pat<(f64 (extractelt v4f64:$S, i64:$F)),
866 def : Pat<(f32 (extractelt v4f32:$S, i64:$F)),
872 def : Pat<(int_ppc_qpx_qvfperm v4f64:$A, v4f64:$B, v4f64:$C),
875 def : Pat<(int_ppc_qpx_qvfcpsgn v4f64:$A, v4f64:$B),
879 def : Pat<(fcopysign v4f64:$frB, v4f32:$frA),
881 def : Pat<(fcopysign QSRC:$frB, QFRC:$frA),
884 def : Pat<(int_ppc_qpx_qvfneg v4f64:$A), (QVFNEG $A)>;
885 def : Pat<(int_ppc_qpx_qvfabs v4f64:$A), (QVFABS $A)>;
886 def : Pat<(int_ppc_qpx_qvfnabs v4f64:$A), (QVFNABS $A)>;
888 def : Pat<(int_ppc_qpx_qvfriz v4f64:$A), (QVFRIZ $A)>;
889 def : Pat<(int_ppc_qpx_qvfrin v4f64:$A), (QVFRIN $A)>;
890 def : Pat<(int_ppc_qpx_qvfrip v4f64:$A), (QVFRIP $A)>;
891 def : Pat<(int_ppc_qpx_qvfrim v4f64:$A), (QVFRIM $A)>;
893 def : Pat<(int_ppc_qpx_qvfre v4f64:$A), (QVFRE $A)>;
894 def : Pat<(int_ppc_qpx_qvfrsqrte v4f64:$A), (QVFRSQRTE $A)>;
896 def : Pat<(int_ppc_qpx_qvfadd v4f64:$A, v4f64:$B),
898 def : Pat<(int_ppc_qpx_qvfsub v4f64:$A, v4f64:$B),
900 def : Pat<(int_ppc_qpx_qvfmul v4f64:$A, v4f64:$B),
904 def : Pat<(fma (fneg v4f64:$A), v4f64:$C, v4f64:$B),
906 def : Pat<(fma v4f64:$A, (fneg v4f64:$C), v4f64:$B),
908 def : Pat<(fma (fneg v4f32:$A), v4f32:$C, v4f32:$B),
910 def : Pat<(fma v4f32:$A, (fneg v4f32:$C), v4f32:$B),
913 def : Pat<(int_ppc_qpx_qvfmadd v4f64:$A, v4f64:$B, v4f64:$C),
915 def : Pat<(int_ppc_qpx_qvfnmadd v4f64:$A, v4f64:$B, v4f64:$C),
917 def : Pat<(int_ppc_qpx_qvfmsub v4f64:$A, v4f64:$B, v4f64:$C),
919 def : Pat<(int_ppc_qpx_qvfnmsub v4f64:$A, v4f64:$B, v4f64:$C),
922 def : Pat<(int_ppc_qpx_qvlfd xoaddr:$src),
924 def : Pat<(int_ppc_qpx_qvlfda xoaddr:$src),
926 def : Pat<(int_ppc_qpx_qvlfs xoaddr:$src),
928 def : Pat<(int_ppc_qpx_qvlfsa xoaddr:$src),
930 def : Pat<(int_ppc_qpx_qvlfcda xoaddr:$src),
932 def : Pat<(int_ppc_qpx_qvlfcd xoaddr:$src),
934 def : Pat<(int_ppc_qpx_qvlfcsa xoaddr:$src),
936 def : Pat<(int_ppc_qpx_qvlfcs xoaddr:$src),
938 def : Pat<(int_ppc_qpx_qvlfda xoaddr:$src),
940 def : Pat<(int_ppc_qpx_qvlfiwaa xoaddr:$src),
942 def : Pat<(int_ppc_qpx_qvlfiwa xoaddr:$src),
944 def : Pat<(int_ppc_qpx_qvlfiwza xoaddr:$src),
946 def : Pat<(int_ppc_qpx_qvlfiwz xoaddr:$src),
948 def : Pat<(int_ppc_qpx_qvlfsa xoaddr:$src),
950 def : Pat<(int_ppc_qpx_qvlpcld xoaddr:$src),
952 def : Pat<(int_ppc_qpx_qvlpcls xoaddr:$src),
954 def : Pat<(int_ppc_qpx_qvlpcrd xoaddr:$src),
956 def : Pat<(int_ppc_qpx_qvlpcrs xoaddr:$src),
959 def : Pat<(int_ppc_qpx_qvstfd v4f64:$T, xoaddr:$dst),
961 def : Pat<(int_ppc_qpx_qvstfs v4f64:$T, xoaddr:$dst),
963 def : Pat<(int_ppc_qpx_qvstfcda v4f64:$T, xoaddr:$dst),
965 def : Pat<(int_ppc_qpx_qvstfcd v4f64:$T, xoaddr:$dst),
967 def : Pat<(int_ppc_qpx_qvstfcsa v4f64:$T, xoaddr:$dst),
969 def : Pat<(int_ppc_qpx_qvstfcs v4f64:$T, xoaddr:$dst),
971 def : Pat<(int_ppc_qpx_qvstfda v4f64:$T, xoaddr:$dst),
973 def : Pat<(int_ppc_qpx_qvstfiwa v4f64:$T, xoaddr:$dst),
975 def : Pat<(int_ppc_qpx_qvstfiw v4f64:$T, xoaddr:$dst),
977 def : Pat<(int_ppc_qpx_qvstfsa v4f64:$T, xoaddr:$dst),
980 def : Pat<(pre_store v4f64:$rS, iPTR:$ptrreg, iPTR:$ptroff),
982 def : Pat<(pre_store v4f32:$rS, iPTR:$ptrreg, iPTR:$ptroff),
984 def : Pat<(pre_truncstv4f32 v4f64:$rS, iPTR:$ptrreg, iPTR:$ptroff),
987 def : Pat<(int_ppc_qpx_qvflogical v4f64:$A, v4f64:$B, (i32 imm:$idx)),
989 def : Pat<(int_ppc_qpx_qvgpci (u12:$idx)),
992 def : Pat<(setcc v4f64:$FRA, v4f64:$FRB, SETOGE),
995 def : Pat<(setcc v4f64:$FRA, v4f64:$FRB, SETOLE),
998 def : Pat<(setcc v4f64:$FRA, v4f64:$FRB, SETONE),
1001 def : Pat<(setcc v4f64:$FRA, v4f64:$FRB, SETO),
1004 def : Pat<(setcc v4f64:$FRA, v4f64:$FRB, SETUEQ),
1007 def : Pat<(setcc v4f64:$FRA, v4f64:$FRB, SETUGT),
1010 def : Pat<(setcc v4f64:$FRA, v4f64:$FRB, SETUGE),
1013 def : Pat<(setcc v4f64:$FRA, v4f64:$FRB, SETULT),
1016 def : Pat<(setcc v4f64:$FRA, v4f64:$FRB, SETULE),
1019 def : Pat<(setcc v4f64:$FRA, v4f64:$FRB, SETUNE),
1023 def : Pat<(setcc v4f64:$FRA, v4f64:$FRB, SETEQ),
1025 def : Pat<(setcc v4f64:$FRA, v4f64:$FRB, SETGT),
1027 def : Pat<(setcc v4f64:$FRA, v4f64:$FRB, SETGE),
1030 def : Pat<(setcc v4f64:$FRA, v4f64:$FRB, SETLT),
1032 def : Pat<(setcc v4f64:$FRA, v4f64:$FRB, SETLE),
1035 def : Pat<(setcc v4f64:$FRA, v4f64:$FRB, SETNE),
1039 def : Pat<(setcc v4f32:$FRA, v4f32:$FRB, SETOGE),
1042 def : Pat<(setcc v4f32:$FRA, v4f32:$FRB, SETOLE),
1045 def : Pat<(setcc v4f32:$FRA, v4f32:$FRB, SETONE),
1048 def : Pat<(setcc v4f32:$FRA, v4f32:$FRB, SETO),
1051 def : Pat<(setcc v4f32:$FRA, v4f32:$FRB, SETUEQ),
1054 def : Pat<(setcc v4f32:$FRA, v4f32:$FRB, SETUGT),
1057 def : Pat<(setcc v4f32:$FRA, v4f32:$FRB, SETUGE),
1060 def : Pat<(setcc v4f32:$FRA, v4f32:$FRB, SETULT),
1063 def : Pat<(setcc v4f32:$FRA, v4f32:$FRB, SETULE),
1066 def : Pat<(setcc v4f32:$FRA, v4f32:$FRB, SETUNE),
1070 def : Pat<(setcc v4f32:$FRA, v4f32:$FRB, SETEQ),
1072 def : Pat<(setcc v4f32:$FRA, v4f32:$FRB, SETGT),
1074 def : Pat<(setcc v4f32:$FRA, v4f32:$FRB, SETGE),
1077 def : Pat<(setcc v4f32:$FRA, v4f32:$FRB, SETLT),
1079 def : Pat<(setcc v4f32:$FRA, v4f32:$FRB, SETLE),
1082 def : Pat<(setcc v4f32:$FRA, v4f32:$FRB, SETNE),
1086 def : Pat<(and v4i1:$FRA, (not v4i1:$FRB)),
1088 def : Pat<(not (or v4i1:$FRA, v4i1:$FRB)),
1090 def : Pat<(not (xor v4i1:$FRA, v4i1:$FRB)),
1092 def : Pat<(or v4i1:$FRA, (not v4i1:$FRB)),
1094 def : Pat<(not (and v4i1:$FRA, v4i1:$FRB)),
1097 def : Pat<(and v4i1:$FRA, v4i1:$FRB),
1099 def : Pat<(or v4i1:$FRA, v4i1:$FRB),
1101 def : Pat<(xor v4i1:$FRA, v4i1:$FRB),
1103 def : Pat<(not v4i1:$FRA),
1106 def : Pat<(v4f64 (fextend v4f32:$src)),
1109 def : Pat<(v4f32 (fround_exact v4f64:$src)),
1114 def : Pat<(v4f64 (PPCqbflt v4i1:$src)),
1117 def : Pat<(v4f64 (selectcc i1:$lhs, i1:$rhs, v4f64:$tval, v4f64:$fval, SETLT)),
1119 def : Pat<(v4f64 (selectcc i1:$lhs, i1:$rhs, v4f64:$tval, v4f64:$fval, SETULT)),
1121 def : Pat<(v4f64 (selectcc i1:$lhs, i1:$rhs, v4f64:$tval, v4f64:$fval, SETLE)),
1123 def : Pat<(v4f64 (selectcc i1:$lhs, i1:$rhs, v4f64:$tval, v4f64:$fval, SETULE)),
1125 def : Pat<(v4f64 (selectcc i1:$lhs, i1:$rhs, v4f64:$tval, v4f64:$fval, SETEQ)),
1127 def : Pat<(v4f64 (selectcc i1:$lhs, i1:$rhs, v4f64:$tval, v4f64:$fval, SETGE)),
1129 def : Pat<(v4f64 (selectcc i1:$lhs, i1:$rhs, v4f64:$tval, v4f64:$fval, SETUGE)),
1131 def : Pat<(v4f64 (selectcc i1:$lhs, i1:$rhs, v4f64:$tval, v4f64:$fval, SETGT)),
1133 def : Pat<(v4f64 (selectcc i1:$lhs, i1:$rhs, v4f64:$tval, v4f64:$fval, SETUGT)),
1135 def : Pat<(v4f64 (selectcc i1:$lhs, i1:$rhs, v4f64:$tval, v4f64:$fval, SETNE)),
1138 def : Pat<(v4f32 (selectcc i1:$lhs, i1:$rhs, v4f32:$tval, v4f32:$fval, SETLT)),
1140 def : Pat<(v4f32 (selectcc i1:$lhs, i1:$rhs, v4f32:$tval, v4f32:$fval, SETULT)),
1142 def : Pat<(v4f32 (selectcc i1:$lhs, i1:$rhs, v4f32:$tval, v4f32:$fval, SETLE)),
1144 def : Pat<(v4f32 (selectcc i1:$lhs, i1:$rhs, v4f32:$tval, v4f32:$fval, SETULE)),
1146 def : Pat<(v4f32 (selectcc i1:$lhs, i1:$rhs, v4f32:$tval, v4f32:$fval, SETEQ)),
1148 def : Pat<(v4f32 (selectcc i1:$lhs, i1:$rhs, v4f32:$tval, v4f32:$fval, SETGE)),
1150 def : Pat<(v4f32 (selectcc i1:$lhs, i1:$rhs, v4f32:$tval, v4f32:$fval, SETUGE)),
1152 def : Pat<(v4f32 (selectcc i1:$lhs, i1:$rhs, v4f32:$tval, v4f32:$fval, SETGT)),
1154 def : Pat<(v4f32 (selectcc i1:$lhs, i1:$rhs, v4f32:$tval, v4f32:$fval, SETUGT)),
1156 def : Pat<(v4f32 (selectcc i1:$lhs, i1:$rhs, v4f32:$tval, v4f32:$fval, SETNE)),
1159 def : Pat<(v4i1 (selectcc i1:$lhs, i1:$rhs, v4i1:$tval, v4i1:$fval, SETLT)),
1161 def : Pat<(v4i1 (selectcc i1:$lhs, i1:$rhs, v4i1:$tval, v4i1:$fval, SETULT)),
1163 def : Pat<(v4i1 (selectcc i1:$lhs, i1:$rhs, v4i1:$tval, v4i1:$fval, SETLE)),
1165 def : Pat<(v4i1 (selectcc i1:$lhs, i1:$rhs, v4i1:$tval, v4i1:$fval, SETULE)),
1167 def : Pat<(v4i1 (selectcc i1:$lhs, i1:$rhs, v4i1:$tval, v4i1:$fval, SETEQ)),
1169 def : Pat<(v4i1 (selectcc i1:$lhs, i1:$rhs, v4i1:$tval, v4i1:$fval, SETGE)),
1171 def : Pat<(v4i1 (selectcc i1:$lhs, i1:$rhs, v4i1:$tval, v4i1:$fval, SETUGE)),
1173 def : Pat<(v4i1 (selectcc i1:$lhs, i1:$rhs, v4i1:$tval, v4i1:$fval, SETGT)),
1175 def : Pat<(v4i1 (selectcc i1:$lhs, i1:$rhs, v4i1:$tval, v4i1:$fval, SETUGT)),
1177 def : Pat<(v4i1 (selectcc i1:$lhs, i1:$rhs, v4i1:$tval, v4i1:$fval, SETNE)),
1183 def : Pat<(fminnum v4f64:$FRA, v4f64:$FRB),
1185 def : Pat<(fmaxnum v4f64:$FRA, v4f64:$FRB),
1188 def : Pat<(fminnum v4f32:$FRA, v4f32:$FRB),
1190 def : Pat<(fmaxnum v4f32:$FRA, v4f32:$FRB),
1198 def : Pat<(fminnum v4f64:$FRA, v4f64:$FRB),
1202 def : Pat<(fmaxnum v4f64:$FRA, v4f64:$FRB),
1207 def : Pat<(fminnum v4f32:$FRA, v4f32:$FRB),
1211 def : Pat<(fmaxnum v4f32:$FRA, v4f32:$FRB),