• Home
  • Raw
  • Download

Lines Matching refs:FRB

40   : AForm_1<opcode, xo, (outs qfrc:$FRT), (ins qfrc:$FRA, qfrc:$FRB, qfrc:$FRC),
41 !strconcat(opc, " $FRT, $FRA, $FRC, $FRB"), IIC_FPFused,
42 [(set v4f64:$FRT, (IntID v4f64:$FRA, v4f64:$FRB, v4f64:$FRC))]>;
45 : AForm_1<opcode, xo, (outs qfrc:$FRT), (ins qfrc:$FRA, qfrc:$FRB, qfrc:$FRC),
46 !strconcat(opc, " $FRT, $FRA, $FRC, $FRB"), IIC_VecPerm,
47 [(set v4f64:$FRT, (IntID v4f64:$FRA, v4f64:$FRB, v4f64:$FRC))]>;
50 : AForm_2<opcode, xo, (outs qfrc:$FRT), (ins qfrc:$FRA, qfrc:$FRB),
51 !strconcat(opc, " $FRT, $FRA, $FRB"), IIC_FPGeneral,
52 [(set v4f64:$FRT, (IntID v4f64:$FRA, v4f64:$FRB))]>;
60 : AForm_4a<opcode, xo, (outs qfrc:$FRT), (ins qfrc:$FRB),
61 !strconcat(opc, " $FRT, $FRB"), IIC_FPGeneral,
62 [(set v4f64:$FRT, (IntID v4f64:$FRB))]>;
65 : XForm_18<opcode, xo, (outs qfrc:$FRT), (ins qfrc:$FRA, qfrc:$FRB),
66 !strconcat(opc, " $FRT, $FRA, $FRB"), IIC_FPCompare,
67 [(set v4f64:$FRT, (IntID v4f64:$FRA, v4f64:$FRB))]>;
70 : XForm_19<opcode, xo, (outs qfrc:$FRT), (ins qfrc:$FRB),
71 !strconcat(opc, " $FRT, $FRB"), IIC_FPGeneral,
72 [(set v4f64:$FRT, (IntID v4f64:$FRB))]>;
113 (outs qfrc:$FRT), (ins qfrc:$FRA, qfrc:$FRB),
114 "qvfadd $FRT, $FRA, $FRB", IIC_FPGeneral,
115 [(set v4f64:$FRT, (fadd v4f64:$FRA, v4f64:$FRB))]>;
119 (outs qsrc:$FRT), (ins qsrc:$FRA, qsrc:$FRB),
120 "qvfadds $FRT, $FRA, $FRB", IIC_FPGeneral,
121 [(set v4f32:$FRT, (fadd v4f32:$FRA, v4f32:$FRB))]>;
124 (outs qfrc:$FRT), (ins qfrc:$FRA, qfrc:$FRB),
125 "qvfsub $FRT, $FRA, $FRB", IIC_FPGeneral,
126 [(set v4f64:$FRT, (fsub v4f64:$FRA, v4f64:$FRB))]>;
130 (outs qsrc:$FRT), (ins qsrc:$FRA, qsrc:$FRB),
131 "qvfsubs $FRT, $FRA, $FRB", IIC_FPGeneral,
132 [(set v4f32:$FRT, (fsub v4f32:$FRA, v4f32:$FRB))]>;
135 def QVFRE : AForm_4a<4, 24, (outs qfrc:$FRT), (ins qfrc:$FRB),
136 "qvfre $FRT, $FRB", IIC_FPGeneral,
137 [(set v4f64:$FRT, (PPCfre v4f64:$FRB))]>;
140 def QVFRESs : AForm_4a<0, 24, (outs qsrc:$FRT), (ins qsrc:$FRB),
141 "qvfres $FRT, $FRB", IIC_FPGeneral,
142 [(set v4f32:$FRT, (PPCfre v4f32:$FRB))]>;
144 def QVFRSQRTE : AForm_4a<4, 26, (outs qfrc:$FRT), (ins qfrc:$FRB),
145 "qvfrsqrte $FRT, $FRB", IIC_FPGeneral,
146 [(set v4f64:$FRT, (PPCfrsqrte v4f64:$FRB))]>;
149 def QVFRSQRTESs : AForm_4a<0, 26, (outs qsrc:$FRT), (ins qsrc:$FRB),
150 "qvfrsqrtes $FRT, $FRB", IIC_FPGeneral,
151 [(set v4f32:$FRT, (PPCfrsqrte v4f32:$FRB))]>;
171 (outs qfrc:$FRT), (ins qfrc:$FRA, qfrc:$FRB, qfrc:$FRC),
172 "qvfmadd $FRT, $FRA, $FRC, $FRB", IIC_FPFused,
173 [(set v4f64:$FRT, (fma v4f64:$FRA, v4f64:$FRC, v4f64:$FRB))]>;
177 (outs qsrc:$FRT), (ins qsrc:$FRA, qsrc:$FRB, qsrc:$FRC),
178 "qvfmadds $FRT, $FRA, $FRC, $FRB", IIC_FPFused,
179 [(set v4f32:$FRT, (fma v4f32:$FRA, v4f32:$FRC, v4f32:$FRB))]>;
181 (outs qfrc:$FRT), (ins qfrc:$FRA, qfrc:$FRB, qfrc:$FRC),
182 "qvfnmadd $FRT, $FRA, $FRC, $FRB", IIC_FPFused,
184 v4f64:$FRB)))]>;
188 (outs qsrc:$FRT), (ins qsrc:$FRA, qsrc:$FRB, qsrc:$FRC),
189 "qvfnmadds $FRT, $FRA, $FRC, $FRB", IIC_FPFused,
191 v4f32:$FRB)))]>;
193 (outs qfrc:$FRT), (ins qfrc:$FRA, qfrc:$FRB, qfrc:$FRC),
194 "qvfmsub $FRT, $FRA, $FRC, $FRB", IIC_FPFused,
196 (fneg v4f64:$FRB)))]>;
200 (outs qsrc:$FRT), (ins qsrc:$FRA, qsrc:$FRB, qsrc:$FRC),
201 "qvfmsubs $FRT, $FRA, $FRC, $FRB", IIC_FPFused,
203 (fneg v4f32:$FRB)))]>;
205 (outs qfrc:$FRT), (ins qfrc:$FRA, qfrc:$FRB, qfrc:$FRC),
206 "qvfnmsub $FRT, $FRA, $FRC, $FRB", IIC_FPFused,
208 (fneg v4f64:$FRB))))]>;
212 (outs qsrc:$FRT), (ins qsrc:$FRA, qsrc:$FRB, qsrc:$FRC),
213 "qvfnmsubs $FRT, $FRA, $FRC, $FRB", IIC_FPFused,
215 (fneg v4f32:$FRB))))]>;
229 (ins qbrc:$FRA, qfrc:$FRB, qfrc:$FRC),
230 "qvfsel $FRT, $FRA, $FRC, $FRB", IIC_VecPerm,
232 v4f64:$FRC, v4f64:$FRB))]>;
235 (ins qbrc:$FRA, qsrc:$FRB, qsrc:$FRC),
236 "qvfsel $FRT, $FRA, $FRC, $FRB", IIC_VecPerm,
238 v4f32:$FRC, v4f32:$FRB))]>;
241 (ins qbrc:$FRA, qbrc:$FRB, qbrc:$FRC),
242 "qvfsel $FRT, $FRA, $FRC, $FRB", IIC_VecPerm,
244 v4i1:$FRC, v4i1:$FRB))]>;
278 def QVFCTIDb : XForm_19<4, 814, (outs qbrc:$FRT), (ins qbrc:$FRB),
279 "qvfctid $FRT, $FRB", IIC_FPGeneral, []>;
290 def QVFCFIDb : XForm_19<4, 846, (outs qbrc:$FRT), (ins qbrc:$FRB),
291 "qvfcfid $FRT, $FRB", IIC_FPGeneral, []>;
300 (outs qsrc:$FRT), (ins qfrc:$FRB),
301 "qvfrsp $FRT, $FRB", IIC_FPGeneral,
302 [(set v4f32:$FRT, (fround_inexact v4f64:$FRB))]>;
304 def QVFRIZ : XForm_19<4, 424, (outs qfrc:$FRT), (ins qfrc:$FRB),
305 "qvfriz $FRT, $FRB", IIC_FPGeneral,
306 [(set v4f64:$FRT, (ftrunc v4f64:$FRB))]>;
308 def QVFRIZs : XForm_19<4, 424, (outs qsrc:$FRT), (ins qsrc:$FRB),
309 "qvfriz $FRT, $FRB", IIC_FPGeneral,
310 [(set v4f32:$FRT, (ftrunc v4f32:$FRB))]>;
312 def QVFRIN : XForm_19<4, 392, (outs qfrc:$FRT), (ins qfrc:$FRB),
313 "qvfrin $FRT, $FRB", IIC_FPGeneral,
314 [(set v4f64:$FRT, (frnd v4f64:$FRB))]>;
316 def QVFRINs : XForm_19<4, 392, (outs qsrc:$FRT), (ins qsrc:$FRB),
317 "qvfrin $FRT, $FRB", IIC_FPGeneral,
318 [(set v4f32:$FRT, (frnd v4f32:$FRB))]>;
320 def QVFRIP : XForm_19<4, 456, (outs qfrc:$FRT), (ins qfrc:$FRB),
321 "qvfrip $FRT, $FRB", IIC_FPGeneral,
322 [(set v4f64:$FRT, (fceil v4f64:$FRB))]>;
324 def QVFRIPs : XForm_19<4, 456, (outs qsrc:$FRT), (ins qsrc:$FRB),
325 "qvfrip $FRT, $FRB", IIC_FPGeneral,
326 [(set v4f32:$FRT, (fceil v4f32:$FRB))]>;
328 def QVFRIM : XForm_19<4, 488, (outs qfrc:$FRT), (ins qfrc:$FRB),
329 "qvfrim $FRT, $FRB", IIC_FPGeneral,
330 [(set v4f64:$FRT, (ffloor v4f64:$FRB))]>;
332 def QVFRIMs : XForm_19<4, 488, (outs qsrc:$FRT), (ins qsrc:$FRB),
333 "qvfrim $FRT, $FRB", IIC_FPGeneral,
334 [(set v4f32:$FRT, (ffloor v4f32:$FRB))]>;
338 (outs qfrc:$FRT), (ins qfrc:$FRB),
339 "qvfmr $FRT, $FRB", IIC_VecPerm,
340 [/* (set v4f64:$FRT, v4f64:$FRB) */]>;
343 (outs qsrc:$FRT), (ins qsrc:$FRB),
344 "qvfmr $FRT, $FRB", IIC_VecPerm,
345 [/* (set v4f32:$FRT, v4f32:$FRB) */]>;
347 (outs qbrc:$FRT), (ins qbrc:$FRB),
348 "qvfmr $FRT, $FRB", IIC_VecPerm,
349 [/* (set v4i1:$FRT, v4i1:$FRB) */]>;
352 (outs qfrc:$FRT), (ins qfrc:$FRB),
353 "qvfneg $FRT, $FRB", IIC_VecPerm,
354 [(set v4f64:$FRT, (fneg v4f64:$FRB))]>;
357 (outs qsrc:$FRT), (ins qsrc:$FRB),
358 "qvfneg $FRT, $FRB", IIC_VecPerm,
359 [(set v4f32:$FRT, (fneg v4f32:$FRB))]>;
361 (outs qfrc:$FRT), (ins qfrc:$FRB),
362 "qvfabs $FRT, $FRB", IIC_VecPerm,
363 [(set v4f64:$FRT, (fabs v4f64:$FRB))]>;
366 (outs qsrc:$FRT), (ins qsrc:$FRB),
367 "qvfabs $FRT, $FRB", IIC_VecPerm,
368 [(set v4f32:$FRT, (fabs v4f32:$FRB))]>;
370 (outs qfrc:$FRT), (ins qfrc:$FRB),
371 "qvfnabs $FRT, $FRB", IIC_VecPerm,
372 [(set v4f64:$FRT, (fneg (fabs v4f64:$FRB)))]>;
375 (outs qsrc:$FRT), (ins qsrc:$FRB),
376 "qvfnabs $FRT, $FRB", IIC_VecPerm,
377 [(set v4f32:$FRT, (fneg (fabs v4f32:$FRB)))]>;
379 (outs qfrc:$FRT), (ins qfrc:$FRA, qfrc:$FRB),
380 "qvfcpsgn $FRT, $FRA, $FRB", IIC_VecPerm,
381 [(set v4f64:$FRT, (fcopysign v4f64:$FRB, v4f64:$FRA))]>;
384 (outs qsrc:$FRT), (ins qsrc:$FRA, qsrc:$FRB),
385 "qvfcpsgn $FRT, $FRA, $FRB", IIC_VecPerm,
386 [(set v4f32:$FRT, (fcopysign v4f32:$FRB, v4f32:$FRA))]>;
389 (outs qfrc:$FRT), (ins qfrc:$FRA, qfrc:$FRB, u2imm:$idx),
390 "qvaligni $FRT, $FRA, $FRB, $idx", IIC_VecPerm,
392 (PPCqvaligni v4f64:$FRA, v4f64:$FRB,
396 (outs qsrc:$FRT), (ins qsrc:$FRA, qsrc:$FRB, u2imm:$idx),
397 "qvaligni $FRT, $FRA, $FRB, $idx", IIC_VecPerm,
399 (PPCqvaligni v4f32:$FRA, v4f32:$FRB,
403 (outs qbrc:$FRT), (ins qbrc:$FRA, qbrc:$FRB, u2imm:$idx),
404 "qvaligni $FRT, $FRA, $FRB, $idx", IIC_VecPerm,
406 (PPCqvaligni v4i1:$FRA, v4i1:$FRB,
428 (outs qfrc:$FRT), (ins qfrc:$FRA, qfrc:$FRB, qfrc:$FRC),
429 "qvfperm $FRT, $FRA, $FRB, $FRC", IIC_VecPerm,
431 (PPCqvfperm v4f64:$FRA, v4f64:$FRB, v4f64:$FRC))]>;
434 (outs qsrc:$FRT), (ins qsrc:$FRA, qsrc:$FRB, qfrc:$FRC),
435 "qvfperm $FRT, $FRA, $FRB, $FRC", IIC_VecPerm,
437 (PPCqvfperm v4f32:$FRA, v4f32:$FRB, v4f64:$FRC))]>;
448 def QVFTSTNANb : XForm_18<4, 64, (outs qbrc:$FRT), (ins qfrc:$FRA, qfrc:$FRB),
449 "qvftstnan $FRT, $FRA, $FRB", IIC_FPCompare,
451 (setcc v4f64:$FRA, v4f64:$FRB, SETUO))]>;
453 def QVFTSTNANbs : XForm_18<4, 64, (outs qbrc:$FRT), (ins qsrc:$FRA, qsrc:$FRB),
454 "qvftstnan $FRT, $FRA, $FRB", IIC_FPCompare,
456 (setcc v4f32:$FRA, v4f32:$FRB, SETUO))]>;
459 def QVFCMPLTb : XForm_18<4, 96, (outs qbrc:$FRT), (ins qfrc:$FRA, qfrc:$FRB),
460 "qvfcmplt $FRT, $FRA, $FRB", IIC_FPCompare,
462 (setcc v4f64:$FRA, v4f64:$FRB, SETOLT))]>;
464 def QVFCMPLTbs : XForm_18<4, 96, (outs qbrc:$FRT), (ins qsrc:$FRA, qsrc:$FRB),
465 "qvfcmplt $FRT, $FRA, $FRB", IIC_FPCompare,
467 (setcc v4f32:$FRA, v4f32:$FRB, SETOLT))]>;
470 def QVFCMPGTb : XForm_18<4, 32, (outs qbrc:$FRT), (ins qfrc:$FRA, qfrc:$FRB),
471 "qvfcmpgt $FRT, $FRA, $FRB", IIC_FPCompare,
473 (setcc v4f64:$FRA, v4f64:$FRB, SETOGT))]>;
475 def QVFCMPGTbs : XForm_18<4, 32, (outs qbrc:$FRT), (ins qsrc:$FRA, qsrc:$FRB),
476 "qvfcmpgt $FRT, $FRA, $FRB", IIC_FPCompare,
478 (setcc v4f32:$FRA, v4f32:$FRB, SETOGT))]>;
481 def QVFCMPEQb : XForm_18<4, 0, (outs qbrc:$FRT), (ins qfrc:$FRA, qfrc:$FRB),
482 "qvfcmpeq $FRT, $FRA, $FRB", IIC_FPCompare,
484 (setcc v4f64:$FRA, v4f64:$FRB, SETOEQ))]>;
486 def QVFCMPEQbs : XForm_18<4, 0, (outs qbrc:$FRT), (ins qsrc:$FRA, qsrc:$FRB),
487 "qvfcmpeq $FRT, $FRA, $FRB", IIC_FPCompare,
489 (setcc v4f32:$FRA, v4f32:$FRB, SETOEQ))]>;
493 (outs qfrc:$FRT), (ins qfrc:$FRA, qfrc:$FRB, u12imm:$tttt),
494 "qvflogical $FRT, $FRA, $FRB, $tttt", IIC_VecPerm, []>;
496 (outs qbrc:$FRT), (ins qbrc:$FRA, qbrc:$FRB, u12imm:$tttt),
497 "qvflogical $FRT, $FRA, $FRB, $tttt", IIC_VecPerm, []>;
500 (outs qbrc:$FRT), (ins qbrc:$FRA, qbrc:$FRB, u12imm:$tttt),
501 "qvflogical $FRT, $FRA, $FRB, $tttt", IIC_VecPerm, []>;
810 def : InstAlias<"qvfand $FRT, $FRA, $FRB",
811 (QVFLOGICALb qbrc:$FRT, qbrc:$FRA, qbrc:$FRB, 1)>;
812 def : InstAlias<"qvfandc $FRT, $FRA, $FRB",
813 (QVFLOGICALb qbrc:$FRT, qbrc:$FRA, qbrc:$FRB, 4)>;
816 def : InstAlias<"qvfxor $FRT, $FRA, $FRB",
817 (QVFLOGICALb qbrc:$FRT, qbrc:$FRA, qbrc:$FRB, 6)>;
818 def : InstAlias<"qvfor $FRT, $FRA, $FRB",
819 (QVFLOGICALb qbrc:$FRT, qbrc:$FRA, qbrc:$FRB, 7)>;
820 def : InstAlias<"qvfnor $FRT, $FRA, $FRB",
821 (QVFLOGICALb qbrc:$FRT, qbrc:$FRA, qbrc:$FRB, 8)>;
822 def : InstAlias<"qvfequ $FRT, $FRA, $FRB",
823 (QVFLOGICALb qbrc:$FRT, qbrc:$FRA, qbrc:$FRB, 9)>;
826 def : InstAlias<"qvforc $FRT, $FRA, $FRB",
827 (QVFLOGICALb qbrc:$FRT, qbrc:$FRA, qbrc:$FRB, 13)>;
828 def : InstAlias<"qvfnand $FRT, $FRA, $FRB",
829 (QVFLOGICALb qbrc:$FRT, qbrc:$FRA, qbrc:$FRB, 14)>;
992 def : Pat<(setcc v4f64:$FRA, v4f64:$FRB, SETOGE),
993 (QVFLOGICALb (QVFCMPLTb $FRA, $FRB),
994 (QVFTSTNANb $FRA, $FRB), (i32 8))>;
995 def : Pat<(setcc v4f64:$FRA, v4f64:$FRB, SETOLE),
996 (QVFLOGICALb (QVFCMPGTb $FRA, $FRB),
997 (QVFTSTNANb $FRA, $FRB), (i32 8))>;
998 def : Pat<(setcc v4f64:$FRA, v4f64:$FRB, SETONE),
999 (QVFLOGICALb (QVFCMPEQb $FRA, $FRB),
1000 (QVFTSTNANb $FRA, $FRB), (i32 8))>;
1001 def : Pat<(setcc v4f64:$FRA, v4f64:$FRB, SETO),
1002 (QVFLOGICALb (QVFTSTNANb $FRA, $FRB),
1003 (QVFTSTNANb $FRA, $FRB), (i32 10))>;
1004 def : Pat<(setcc v4f64:$FRA, v4f64:$FRB, SETUEQ),
1005 (QVFLOGICALb (QVFCMPEQb $FRA, $FRB),
1006 (QVFTSTNANb $FRA, $FRB), (i32 7))>;
1007 def : Pat<(setcc v4f64:$FRA, v4f64:$FRB, SETUGT),
1008 (QVFLOGICALb (QVFCMPGTb $FRA, $FRB),
1009 (QVFTSTNANb $FRA, $FRB), (i32 7))>;
1010 def : Pat<(setcc v4f64:$FRA, v4f64:$FRB, SETUGE),
1011 (QVFLOGICALb (QVFTSTNANb $FRA, $FRB),
1012 (QVFCMPLTb $FRA, $FRB), (i32 13))>;
1013 def : Pat<(setcc v4f64:$FRA, v4f64:$FRB, SETULT),
1014 (QVFLOGICALb (QVFCMPLTb $FRA, $FRB),
1015 (QVFTSTNANb $FRA, $FRB), (i32 7))>;
1016 def : Pat<(setcc v4f64:$FRA, v4f64:$FRB, SETULE),
1017 (QVFLOGICALb (QVFTSTNANb $FRA, $FRB),
1018 (QVFCMPGTb $FRA, $FRB), (i32 13))>;
1019 def : Pat<(setcc v4f64:$FRA, v4f64:$FRB, SETUNE),
1020 (QVFLOGICALb (QVFTSTNANb $FRA, $FRB),
1021 (QVFCMPEQb $FRA, $FRB), (i32 13))>;
1023 def : Pat<(setcc v4f64:$FRA, v4f64:$FRB, SETEQ),
1024 (QVFCMPEQb $FRA, $FRB)>;
1025 def : Pat<(setcc v4f64:$FRA, v4f64:$FRB, SETGT),
1026 (QVFCMPGTb $FRA, $FRB)>;
1027 def : Pat<(setcc v4f64:$FRA, v4f64:$FRB, SETGE),
1028 (QVFLOGICALb (QVFCMPLTb $FRA, $FRB),
1029 (QVFCMPLTb $FRA, $FRB), (i32 10))>;
1030 def : Pat<(setcc v4f64:$FRA, v4f64:$FRB, SETLT),
1031 (QVFCMPLTb $FRA, $FRB)>;
1032 def : Pat<(setcc v4f64:$FRA, v4f64:$FRB, SETLE),
1033 (QVFLOGICALb (QVFCMPGTb $FRA, $FRB),
1034 (QVFCMPGTb $FRA, $FRB), (i32 10))>;
1035 def : Pat<(setcc v4f64:$FRA, v4f64:$FRB, SETNE),
1036 (QVFLOGICALb (QVFCMPEQb $FRA, $FRB),
1037 (QVFCMPEQb $FRA, $FRB), (i32 10))>;
1039 def : Pat<(setcc v4f32:$FRA, v4f32:$FRB, SETOGE),
1040 (QVFLOGICALb (QVFCMPLTbs $FRA, $FRB),
1041 (QVFTSTNANbs $FRA, $FRB), (i32 8))>;
1042 def : Pat<(setcc v4f32:$FRA, v4f32:$FRB, SETOLE),
1043 (QVFLOGICALb (QVFCMPGTbs $FRA, $FRB),
1044 (QVFTSTNANbs $FRA, $FRB), (i32 8))>;
1045 def : Pat<(setcc v4f32:$FRA, v4f32:$FRB, SETONE),
1046 (QVFLOGICALb (QVFCMPEQbs $FRA, $FRB),
1047 (QVFTSTNANbs $FRA, $FRB), (i32 8))>;
1048 def : Pat<(setcc v4f32:$FRA, v4f32:$FRB, SETO),
1049 (QVFLOGICALb (QVFTSTNANbs $FRA, $FRB),
1050 (QVFTSTNANbs $FRA, $FRB), (i32 10))>;
1051 def : Pat<(setcc v4f32:$FRA, v4f32:$FRB, SETUEQ),
1052 (QVFLOGICALb (QVFCMPEQbs $FRA, $FRB),
1053 (QVFTSTNANbs $FRA, $FRB), (i32 7))>;
1054 def : Pat<(setcc v4f32:$FRA, v4f32:$FRB, SETUGT),
1055 (QVFLOGICALb (QVFCMPGTbs $FRA, $FRB),
1056 (QVFTSTNANbs $FRA, $FRB), (i32 7))>;
1057 def : Pat<(setcc v4f32:$FRA, v4f32:$FRB, SETUGE),
1058 (QVFLOGICALb (QVFTSTNANbs $FRA, $FRB),
1059 (QVFCMPLTbs $FRA, $FRB), (i32 13))>;
1060 def : Pat<(setcc v4f32:$FRA, v4f32:$FRB, SETULT),
1061 (QVFLOGICALb (QVFCMPLTbs $FRA, $FRB),
1062 (QVFTSTNANbs $FRA, $FRB), (i32 7))>;
1063 def : Pat<(setcc v4f32:$FRA, v4f32:$FRB, SETULE),
1064 (QVFLOGICALb (QVFTSTNANbs $FRA, $FRB),
1065 (QVFCMPGTbs $FRA, $FRB), (i32 13))>;
1066 def : Pat<(setcc v4f32:$FRA, v4f32:$FRB, SETUNE),
1067 (QVFLOGICALb (QVFTSTNANbs $FRA, $FRB),
1068 (QVFCMPEQbs $FRA, $FRB), (i32 13))>;
1070 def : Pat<(setcc v4f32:$FRA, v4f32:$FRB, SETEQ),
1071 (QVFCMPEQbs $FRA, $FRB)>;
1072 def : Pat<(setcc v4f32:$FRA, v4f32:$FRB, SETGT),
1073 (QVFCMPGTbs $FRA, $FRB)>;
1074 def : Pat<(setcc v4f32:$FRA, v4f32:$FRB, SETGE),
1075 (QVFLOGICALb (QVFCMPLTbs $FRA, $FRB),
1076 (QVFCMPLTbs $FRA, $FRB), (i32 10))>;
1077 def : Pat<(setcc v4f32:$FRA, v4f32:$FRB, SETLT),
1078 (QVFCMPLTbs $FRA, $FRB)>;
1079 def : Pat<(setcc v4f32:$FRA, v4f32:$FRB, SETLE),
1080 (QVFLOGICALb (QVFCMPGTbs $FRA, $FRB),
1081 (QVFCMPGTbs $FRA, $FRB), (i32 10))>;
1082 def : Pat<(setcc v4f32:$FRA, v4f32:$FRB, SETNE),
1083 (QVFLOGICALb (QVFCMPEQbs $FRA, $FRB),
1084 (QVFCMPEQbs $FRA, $FRB), (i32 10))>;
1086 def : Pat<(and v4i1:$FRA, (not v4i1:$FRB)),
1087 (QVFLOGICALb $FRA, $FRB, (i32 4))>;
1088 def : Pat<(not (or v4i1:$FRA, v4i1:$FRB)),
1089 (QVFLOGICALb $FRA, $FRB, (i32 8))>;
1090 def : Pat<(not (xor v4i1:$FRA, v4i1:$FRB)),
1091 (QVFLOGICALb $FRA, $FRB, (i32 9))>;
1092 def : Pat<(or v4i1:$FRA, (not v4i1:$FRB)),
1093 (QVFLOGICALb $FRA, $FRB, (i32 13))>;
1094 def : Pat<(not (and v4i1:$FRA, v4i1:$FRB)),
1095 (QVFLOGICALb $FRA, $FRB, (i32 14))>;
1097 def : Pat<(and v4i1:$FRA, v4i1:$FRB),
1098 (QVFLOGICALb $FRA, $FRB, (i32 1))>;
1099 def : Pat<(or v4i1:$FRA, v4i1:$FRB),
1100 (QVFLOGICALb $FRA, $FRB, (i32 7))>;
1101 def : Pat<(xor v4i1:$FRA, v4i1:$FRB),
1102 (QVFLOGICALb $FRA, $FRB, (i32 6))>;
1183 def : Pat<(fminnum v4f64:$FRA, v4f64:$FRB),
1184 (QVFSELb (QVFCMPLTb $FRA, $FRB), $FRB, $FRA)>;
1185 def : Pat<(fmaxnum v4f64:$FRA, v4f64:$FRB),
1186 (QVFSELb (QVFCMPGTb $FRA, $FRB), $FRB, $FRA)>;
1188 def : Pat<(fminnum v4f32:$FRA, v4f32:$FRB),
1189 (QVFSELbs (QVFCMPLTbs $FRA, $FRB), $FRB, $FRA)>;
1190 def : Pat<(fmaxnum v4f32:$FRA, v4f32:$FRB),
1191 (QVFSELbs (QVFCMPGTbs $FRA, $FRB), $FRB, $FRA)>;
1198 def : Pat<(fminnum v4f64:$FRA, v4f64:$FRB),
1199 (QVFSELb (QVFLOGICALb (QVFCMPLTb $FRA, $FRB),
1200 (QVFTSTNANb $FRB, $FRB), (i32 7)),
1201 $FRB, $FRA)>;
1202 def : Pat<(fmaxnum v4f64:$FRA, v4f64:$FRB),
1203 (QVFSELb (QVFLOGICALb (QVFCMPGTb $FRA, $FRB),
1204 (QVFTSTNANb $FRB, $FRB), (i32 7)),
1205 $FRB, $FRA)>;
1207 def : Pat<(fminnum v4f32:$FRA, v4f32:$FRB),
1208 (QVFSELbs (QVFLOGICALb (QVFCMPLTbs $FRA, $FRB),
1209 (QVFTSTNANbs $FRB, $FRB), (i32 7)),
1210 $FRB, $FRA)>;
1211 def : Pat<(fmaxnum v4f32:$FRA, v4f32:$FRB),
1212 (QVFSELbs (QVFLOGICALb (QVFCMPGTbs $FRA, $FRB),
1213 (QVFTSTNANbs $FRB, $FRB), (i32 7)),
1214 $FRB, $FRA)>;