annotate gcc/testsuite/gcc.dg/builtins-49.c @ 131:84e7813d76e9

gcc-8.2
author mir3636
date Thu, 25 Oct 2018 07:37:49 +0900
parents 04ced10e8804
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
111
kono
parents:
diff changeset
1 /* { dg-do run } */
kono
parents:
diff changeset
2 /* { dg-options "-O2" } */
kono
parents:
diff changeset
3
kono
parents:
diff changeset
4 extern double fabs(double);
kono
parents:
diff changeset
5 extern float fabsf(float);
kono
parents:
diff changeset
6 extern void abort(void);
kono
parents:
diff changeset
7
kono
parents:
diff changeset
8
kono
parents:
diff changeset
9 double test1(double x)
kono
parents:
diff changeset
10 {
kono
parents:
diff changeset
11 return fabs(-x);
kono
parents:
diff changeset
12 }
kono
parents:
diff changeset
13
kono
parents:
diff changeset
14 float test1f(float x)
kono
parents:
diff changeset
15 {
kono
parents:
diff changeset
16 return fabsf(-x);
kono
parents:
diff changeset
17 }
kono
parents:
diff changeset
18
kono
parents:
diff changeset
19 double test2(double x)
kono
parents:
diff changeset
20 {
kono
parents:
diff changeset
21 return fabs(fabs(x));
kono
parents:
diff changeset
22 }
kono
parents:
diff changeset
23
kono
parents:
diff changeset
24 float test2f(float x)
kono
parents:
diff changeset
25 {
kono
parents:
diff changeset
26 return fabsf(fabsf(x));
kono
parents:
diff changeset
27 }
kono
parents:
diff changeset
28
kono
parents:
diff changeset
29 double test3(double x, double y)
kono
parents:
diff changeset
30 {
kono
parents:
diff changeset
31 return fabs(x*-y);
kono
parents:
diff changeset
32 }
kono
parents:
diff changeset
33
kono
parents:
diff changeset
34 float test3f(float x, float y)
kono
parents:
diff changeset
35 {
kono
parents:
diff changeset
36 return fabsf(x*-y);
kono
parents:
diff changeset
37 }
kono
parents:
diff changeset
38
kono
parents:
diff changeset
39 double test4(double x, double y)
kono
parents:
diff changeset
40 {
kono
parents:
diff changeset
41 return fabs(x/-y);
kono
parents:
diff changeset
42 }
kono
parents:
diff changeset
43
kono
parents:
diff changeset
44 float test4f(float x, float y)
kono
parents:
diff changeset
45 {
kono
parents:
diff changeset
46 return fabsf(x/-y);
kono
parents:
diff changeset
47 }
kono
parents:
diff changeset
48
kono
parents:
diff changeset
49 int main()
kono
parents:
diff changeset
50 {
kono
parents:
diff changeset
51 if (test1(1.0) != 1.0)
kono
parents:
diff changeset
52 abort();
kono
parents:
diff changeset
53 if (test1(2.0) != 2.0)
kono
parents:
diff changeset
54 abort();
kono
parents:
diff changeset
55 if (test1(0.0) != 0.0)
kono
parents:
diff changeset
56 abort();
kono
parents:
diff changeset
57 if (test1(-1.0) != 1.0)
kono
parents:
diff changeset
58 abort();
kono
parents:
diff changeset
59 if (test1(-2.0) != 2.0)
kono
parents:
diff changeset
60 abort();
kono
parents:
diff changeset
61
kono
parents:
diff changeset
62 if (test1f(1.0f) != 1.0f)
kono
parents:
diff changeset
63 abort();
kono
parents:
diff changeset
64 if (test1f(2.0f) != 2.0f)
kono
parents:
diff changeset
65 abort();
kono
parents:
diff changeset
66 if (test1f(0.0f) != 0.0f)
kono
parents:
diff changeset
67 abort();
kono
parents:
diff changeset
68 if (test1f(-1.0f) != 1.0f)
kono
parents:
diff changeset
69 abort();
kono
parents:
diff changeset
70 if (test1f(-2.0f) != 2.0f)
kono
parents:
diff changeset
71 abort();
kono
parents:
diff changeset
72
kono
parents:
diff changeset
73 if (test2(1.0) != 1.0)
kono
parents:
diff changeset
74 abort();
kono
parents:
diff changeset
75 if (test2(2.0) != 2.0)
kono
parents:
diff changeset
76 abort();
kono
parents:
diff changeset
77 if (test2(0.0) != 0.0)
kono
parents:
diff changeset
78 abort();
kono
parents:
diff changeset
79 if (test2(-1.0) != 1.0)
kono
parents:
diff changeset
80 abort();
kono
parents:
diff changeset
81 if (test2(-2.0) != 2.0)
kono
parents:
diff changeset
82 abort();
kono
parents:
diff changeset
83
kono
parents:
diff changeset
84 if (test2f(1.0f) != 1.0f)
kono
parents:
diff changeset
85 abort();
kono
parents:
diff changeset
86 if (test2f(2.0f) != 2.0f)
kono
parents:
diff changeset
87 abort();
kono
parents:
diff changeset
88 if (test2f(0.0f) != 0.0f)
kono
parents:
diff changeset
89 abort();
kono
parents:
diff changeset
90 if (test2f(-1.0f) != 1.0f)
kono
parents:
diff changeset
91 abort();
kono
parents:
diff changeset
92 if (test2f(-2.0f) != 2.0f)
kono
parents:
diff changeset
93 abort();
kono
parents:
diff changeset
94
kono
parents:
diff changeset
95 if (test3(1.0,1.0) != 1.0)
kono
parents:
diff changeset
96 abort();
kono
parents:
diff changeset
97 if (test3(1.0,-1.0) != 1.0)
kono
parents:
diff changeset
98 abort();
kono
parents:
diff changeset
99 if (test3(1.0,2.0) != 2.0)
kono
parents:
diff changeset
100 abort();
kono
parents:
diff changeset
101 if (test3(1.0,-2.0) != 2.0)
kono
parents:
diff changeset
102 abort();
kono
parents:
diff changeset
103 if (test3(2.0,1.0) != 2.0)
kono
parents:
diff changeset
104 abort();
kono
parents:
diff changeset
105 if (test3(2.0,-1.0) != 2.0)
kono
parents:
diff changeset
106 abort();
kono
parents:
diff changeset
107 if (test3(2.0,2.0) != 4.0)
kono
parents:
diff changeset
108 abort();
kono
parents:
diff changeset
109 if (test3(2.0,-2.0) != 4.0)
kono
parents:
diff changeset
110 abort();
kono
parents:
diff changeset
111 if (test3(-2.0,1.0) != 2.0)
kono
parents:
diff changeset
112 abort();
kono
parents:
diff changeset
113 if (test3(-2.0,-1.0) != 2.0)
kono
parents:
diff changeset
114 abort();
kono
parents:
diff changeset
115 if (test3(-2.0,2.0) != 4.0)
kono
parents:
diff changeset
116 abort();
kono
parents:
diff changeset
117 if (test3(-2.0,-2.0) != 4.0)
kono
parents:
diff changeset
118 abort();
kono
parents:
diff changeset
119
kono
parents:
diff changeset
120 if (test3f(1.0f,1.0f) != 1.0f)
kono
parents:
diff changeset
121 abort();
kono
parents:
diff changeset
122 if (test3f(1.0f,-1.0f) != 1.0f)
kono
parents:
diff changeset
123 abort();
kono
parents:
diff changeset
124 if (test3f(1.0f,2.0f) != 2.0f)
kono
parents:
diff changeset
125 abort();
kono
parents:
diff changeset
126 if (test3f(1.0f,-2.0f) != 2.0f)
kono
parents:
diff changeset
127 abort();
kono
parents:
diff changeset
128 if (test3f(2.0f,1.0f) != 2.0f)
kono
parents:
diff changeset
129 abort();
kono
parents:
diff changeset
130 if (test3f(2.0f,-1.0f) != 2.0f)
kono
parents:
diff changeset
131 abort();
kono
parents:
diff changeset
132 if (test3f(2.0f,2.0f) != 4.0f)
kono
parents:
diff changeset
133 abort();
kono
parents:
diff changeset
134 if (test3f(2.0f,-2.0f) != 4.0f)
kono
parents:
diff changeset
135 abort();
kono
parents:
diff changeset
136 if (test3f(-2.0f,1.0f) != 2.0f)
kono
parents:
diff changeset
137 abort();
kono
parents:
diff changeset
138 if (test3f(-2.0f,-1.0f) != 2.0f)
kono
parents:
diff changeset
139 abort();
kono
parents:
diff changeset
140 if (test3f(-2.0f,2.0f) != 4.0f)
kono
parents:
diff changeset
141 abort();
kono
parents:
diff changeset
142 if (test3f(-2.0f,-2.0f) != 4.0f)
kono
parents:
diff changeset
143 abort();
kono
parents:
diff changeset
144
kono
parents:
diff changeset
145 if (test4(1.0,1.0) != 1.0)
kono
parents:
diff changeset
146 abort();
kono
parents:
diff changeset
147 if (test4(1.0,-1.0) != 1.0)
kono
parents:
diff changeset
148 abort();
kono
parents:
diff changeset
149 if (test4(-1.0,1.0) != 1.0)
kono
parents:
diff changeset
150 abort();
kono
parents:
diff changeset
151 if (test4(-1.0,-1.0) != 1.0)
kono
parents:
diff changeset
152 abort();
kono
parents:
diff changeset
153 if (test4(6.0,3.0) != 2.0)
kono
parents:
diff changeset
154 abort();
kono
parents:
diff changeset
155 if (test4(6.0,-3.0) != 2.0)
kono
parents:
diff changeset
156 abort();
kono
parents:
diff changeset
157 if (test4(-6.0,3.0) != 2.0)
kono
parents:
diff changeset
158 abort();
kono
parents:
diff changeset
159 if (test4(-6.0,-3.0) != 2.0)
kono
parents:
diff changeset
160 abort();
kono
parents:
diff changeset
161
kono
parents:
diff changeset
162 if (test4f(1.0f,1.0f) != 1.0f)
kono
parents:
diff changeset
163 abort();
kono
parents:
diff changeset
164 if (test4f(1.0f,-1.0f) != 1.0f)
kono
parents:
diff changeset
165 abort();
kono
parents:
diff changeset
166 if (test4f(-1.0f,1.0f) != 1.0f)
kono
parents:
diff changeset
167 abort();
kono
parents:
diff changeset
168 if (test4f(-1.0f,-1.0f) != 1.0f)
kono
parents:
diff changeset
169 abort();
kono
parents:
diff changeset
170 if (test4f(6.0f,3.0f) != 2.0f)
kono
parents:
diff changeset
171 abort();
kono
parents:
diff changeset
172 if (test4f(6.0f,-3.0f) != 2.0f)
kono
parents:
diff changeset
173 abort();
kono
parents:
diff changeset
174 if (test4f(-6.0f,3.0f) != 2.0f)
kono
parents:
diff changeset
175 abort();
kono
parents:
diff changeset
176 if (test4f(-6.0f,-3.0f) != 2.0f)
kono
parents:
diff changeset
177 abort();
kono
parents:
diff changeset
178
kono
parents:
diff changeset
179 return 0;
kono
parents:
diff changeset
180 }
kono
parents:
diff changeset
181