Lines Matching refs:ninf
21 ; CHECK-NEXT: [[CMP:%.*]] = fcmp ninf ogt float [[A:%.*]], 1.000000e+00
25 %cmp = fcmp ninf ogt double %ext, 1.000000e+00
191 ; CHECK-NEXT: [[CMP:%.*]] = fcmp ninf ogt <2 x float> [[X:%.*]], [[Y:%.*]]
196 %cmp = fcmp ninf olt <2 x float> %neg1, %neg2
202 ; CHECK-NEXT: [[CMP:%.*]] = fcmp ninf ogt <2 x float> [[X:%.*]], [[Y:%.*]]
207 %cmp = fcmp ninf olt <2 x float> %neg1, %neg2
213 ; CHECK-NEXT: [[CMP:%.*]] = fcmp ninf ogt <2 x float> [[X:%.*]], [[Y:%.*]]
218 %cmp = fcmp ninf olt <2 x float> %neg1, %neg2
224 ; CHECK-NEXT: [[CMP:%.*]] = fcmp ninf ogt <2 x float> [[X:%.*]], [[Y:%.*]]
229 %cmp = fcmp ninf olt <2 x float> %neg1, %neg2
310 ; CHECK-NEXT: [[CMP:%.*]] = fcmp ninf oeq <2 x float> [[A:%.*]], zeroinitializer
314 %cmp = fcmp ninf ole <2 x float> %call, zeroinitializer
320 ; CHECK-NEXT: [[CMP:%.*]] = fcmp ninf arcp ueq <2 x float> [[A:%.*]], zeroinitializer
324 %cmp = fcmp ninf arcp ule <2 x float> %call, zeroinitializer
340 ; CHECK-NEXT: [[CMP:%.*]] = fcmp reassoc ninf une double [[A:%.*]], 0.000000e+00
344 %cmp = fcmp ninf reassoc ugt double %call, 0.0
379 ; CHECK-NEXT: [[CMP:%.*]] = fcmp ninf une half [[A:%.*]], 0xH0000
383 %cmp = fcmp ninf une half %call, 0.0
389 ; CHECK-NEXT: [[CMP:%.*]] = fcmp reassoc ninf oeq double [[A:%.*]], 0.000000e+00
393 %cmp = fcmp ninf reassoc oeq double %call, 0.0
491 ; Can fold 1.0 / X < 0.0 --> X < 0 with ninf
494 ; CHECK-NEXT: [[CMP:%.*]] = fcmp ninf olt float [[X:%.*]], 0.000000e+00
497 %div = fdiv ninf float 1.0, %X
498 %cmp = fcmp ninf olt float %div, 0.0
502 ; Can fold -2.0 / X <= 0.0 --> X >= 0 with ninf
505 ; CHECK-NEXT: [[CMP:%.*]] = fcmp ninf oge float [[X:%.*]], 0.000000e+00
508 %div = fdiv ninf float -2.0, %X
509 %cmp = fcmp ninf ole float %div, 0.0
513 ; Can fold 2.0 / X > 0.0 --> X > 0 with ninf
516 ; CHECK-NEXT: [[CMP:%.*]] = fcmp ninf ogt float [[X:%.*]], 0.000000e+00
519 %div = fdiv ninf float 2.0, %X
520 %cmp = fcmp ninf ogt float %div, 0.0
524 ; Can fold -1.0 / X >= 0.0 --> X <= 0 with ninf
527 ; CHECK-NEXT: [[CMP:%.*]] = fcmp ninf ole float [[X:%.*]], 0.000000e+00
530 %div = fdiv ninf float -1.0, %X
531 %cmp = fcmp ninf oge float %div, 0.0
535 ; Do not fold 1.0 / X > 0.0 when ninf is missing
538 ; CHECK-NEXT: [[DIV:%.*]] = fdiv ninf float 2.000000e+00, [[X:%.*]]
542 %div = fdiv ninf float 2.0, %X
547 ; Do not fold 1.0 / X > 0.0 when ninf is missing
551 ; CHECK-NEXT: [[CMP:%.*]] = fcmp ninf ogt float [[DIV]], 0.000000e+00
555 %cmp = fcmp ninf ogt float %div, 0.0
562 ; CHECK-NEXT: [[DIV:%.*]] = fdiv ninf float 2.000000e+00, [[X:%.*]]
563 ; CHECK-NEXT: [[CMP:%.*]] = fcmp ninf ugt float [[DIV]], 0.000000e+00
566 %div = fdiv ninf float 2.0, %X
567 %cmp = fcmp ninf ugt float %div, 0.0
574 ; CHECK-NEXT: [[CMP:%.*]] = fcmp ninf olt <2 x float> [[X:%.*]], zeroinitializer
577 %div = fdiv ninf <2 x float> <float -1.0, float -1.0>, %X
578 %cmp = fcmp ninf ogt <2 x float> %div, <float -0.0, float -0.0>