• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1; RUN: llc < %s -march=x86 -mcpu=pentium -mtriple=x86-linux-gnu -float-abi=soft | FileCheck %s
2
3define i1 @test1(double %d) #0 {
4entry:
5  %cmp = fcmp ule double %d, 0.000000e+00
6  ret i1 %cmp
7}
8; CHECK-LABEL: test1:
9; CHECK: calll __gtdf2
10; CHECK: setle
11; CHECK: retl
12
13define i1 @test2(double %d) #0 {
14entry:
15  %cmp = fcmp ult double %d, 0.000000e+00
16  ret i1 %cmp
17}
18; CHECK-LABEL: test2:
19; CHECK: calll __gedf2
20; CHECK: sets
21; CHECK: retl
22
23define i1 @test3(double %d) #0 {
24entry:
25  %cmp = fcmp ugt double %d, 0.000000e+00
26  ret i1 %cmp
27}
28; CHECK-LABEL: test3:
29; CHECK: calll __ledf2
30; CHECK: setg
31; CHECK: retl
32
33define i1 @test4(double %d) #0 {
34entry:
35  %cmp = fcmp uge double %d, 0.000000e+00
36  ret i1 %cmp
37}
38; CHECK-LABEL: test4:
39; CHECK: calll __ltdf2
40; CHECK: setns
41; CHECK: retl
42
43define i1 @test5(double %d) #0 {
44entry:
45  %cmp = fcmp ole double %d, 0.000000e+00
46  ret i1 %cmp
47}
48; CHECK-LABEL: test5:
49; CHECK: calll __ledf2
50; CHECK: setle
51; CHECK: retl
52
53define i1 @test6(double %d) #0 {
54entry:
55  %cmp = fcmp olt double %d, 0.000000e+00
56  ret i1 %cmp
57}
58; CHECK-LABEL: test6:
59; CHECK: calll __ltdf2
60; CHECK: sets
61; CHECK: retl
62
63define i1 @test7(double %d) #0 {
64entry:
65  %cmp = fcmp ogt double %d, 0.000000e+00
66  ret i1 %cmp
67}
68; CHECK-LABEL: test7:
69; CHECK: calll __gtdf2
70; CHECK: setg
71; CHECK: retl
72
73define i1 @test8(double %d) #0 {
74entry:
75  %cmp = fcmp oge double %d, 0.000000e+00
76  ret i1 %cmp
77}
78; CHECK-LABEL: test8:
79; CHECK: calll __gedf2
80; CHECK: setns
81; CHECK: retl
82
83define i1 @test9(double %d) #0 {
84entry:
85  %cmp = fcmp oeq double %d, 0.000000e+00
86  ret i1 %cmp
87}
88; CHECK-LABEL: test9:
89; CHECK: calll __eqdf2
90; CHECK: sete
91; CHECK: retl
92
93define i1 @test10(double %d) #0 {
94entry:
95  %cmp = fcmp ueq double %d, 0.000000e+00
96  ret i1 %cmp
97}
98; CHECK-LABEL: test10:
99; CHECK: calll __eqdf2
100; CHECK: sete
101; CHECK: calll __unorddf2
102; CHECK: setne
103; CHECK: retl
104
105define i1 @test11(double %d) #0 {
106entry:
107  %cmp = fcmp one double %d, 0.000000e+00
108  ret i1 %cmp
109}
110; CHECK-LABEL: test11:
111; CHECK: calll __gtdf2
112; CHECK: setg
113; CHECK: calll __ltdf2
114; CHECK: sets
115; CHECK: retl
116
117define i1 @test12(double %d) #0 {
118entry:
119  %cmp = fcmp une double %d, 0.000000e+00
120  ret i1 %cmp
121}
122; CHECK-LABEL: test12:
123; CHECK: calll __nedf2
124; CHECK: setne
125; CHECK: retl
126
127attributes #0 = { "use-soft-float"="true" }
128