OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-dev/] [or1k-gcc/] [gcc/] [testsuite/] [gcc.c-torture/] [compile/] [pr48641.c] - Blame information for rev 774

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 688 jeremybenn
/* { dg-options "-O -fno-tree-ccp -fno-tree-copy-prop" } */
2
#define CSF __builtin_copysignf
3
#define CSD __builtin_copysign
4
#define CSL __builtin_copysignl
5
#define MODFF __builtin_modff
6
#define MODFD __builtin_modf
7
#define MODFL __builtin_modfl
8
 
9
extern void link_error (void);
10
 
11
void
12
foo (void)
13
{
14
  float iptrf;
15
  double iptr;
16
  long double iptrl;
17
  long long iptrll;
18
  if ((CSF (1.0F, MODFF (0x1p10F + 0.5f, &iptrf)) != CSF (1.0F, 0.5f))
19
      || (CSF (1.0F, iptrf) != 0x1p10f))
20
    link_error ();
21
  if (MODFD (0x1p10F + 0.5, &iptr) != 0.5
22
      || (CSD (1.0, MODFD (0x1p10F + 0.5, &iptr)) != CSD (1.0, 0.5))
23
      || (CSD (1.0, iptr) != CSD (1.0, 0x1p10)))
24
    link_error ();
25
  if (MODFL (0x1p10F + 0.5l, &iptrl) != 0.5l
26
      || (CSL (1.0L, MODFL (0x1p10F + 0.5l, &iptrl)) != CSL (1.0L, 0.5l))
27
      || (CSL (1.0L, iptrl) != CSL (1.0L, 0x1p10l)))
28
    link_error ();
29
  if ((CSF (1.0F, (MODFF (0x1p10F + 0x1p-10f, &iptrf)))
30
       != CSF (1.0F, 0x1p-10f))
31
      || (CSF (1.0F, iptrf) != CSF (1.0F, 0x1p10f)))
32
    link_error ();
33
  if (MODFD (0x1p10F + 0x1p-10, &iptr) != 0x1p-10
34
      || (CSD (1.0, (MODFD (0x1p10F + 0x1p-10, &iptr)))
35
          != CSD (1.0, 0x1p-10)) || (CSD (1.0, iptr) != CSD (1.0, 0x1p10)))
36
    link_error ();
37
  if (MODFL (0x1p10F + 0x1p-10l, &iptrl) != 0x1p-10l
38
      || (CSL (1.0L, (MODFL (0x1p10F + 0x1p-10l, &iptrl)))
39
          != CSL (1.0L, 0x1p-10l))
40
      || (CSL (1.0L, iptrl) != CSL (1.0L, 0x1p10l)))
41
    link_error ();
42
  if ((CSF (1.0F, (MODFF (12345678L / 17.0f, &iptrf)))
43
       != CSF (1.0F, (-726216L + 12345678L / 17.0f)))
44
      || (CSF (1.0F, iptrf) != CSF (1.0F, 726216.0f)))
45
    link_error ();
46
  if (MODFD (12345678L / 17.0, &iptr) != -726216L + 12345678L / 17.0
47
      || (CSD (1.0, (MODFD (12345678L / 17.0, &iptr)))
48
          != CSD (1.0, (-726216L + 12345678L / 17.0)))
49
      || (CSD (1.0, iptr) != CSD (1.0, 726216.0)))
50
    link_error ();
51
  if ((CSL (1.0L, (MODFL (12345678L / 17.0l, &iptrl)))
52
       != CSL (1.0L, (-726216L + 12345678L / 17.0l)))
53
      || (CSL (1.0L, iptrl) != CSL (1.0L, 726216.0l)))
54
    link_error ();
55
  if (MODFF (555.555f, &iptrf) != -555 + 555.555f
56
      || (CSF (1.0F, iptrf) != CSF (1.0F, 555.0f)))
57
    link_error ();
58
  if (MODFD (555.555, &iptr) != -555 + 555.555
59
      || (CSD (1.0, (MODFD (555.555, &iptr))) != CSD (1.0, (-555 + 555.555)))
60
      || (CSD (1.0, iptr) != CSD (1.0, 555.0)))
61
    link_error ();
62
  if (MODFL (555.555l, &iptrl) != -555 + 555.555l
63
      || (CSL (1.0L, (MODFL (555.555l, &iptrl)))
64
          != CSL (1.0L, (-555 + 555.555l)))
65
      || (CSL (1.0L, iptrl) != CSL (1.0L, 555.0l)))
66
    link_error ();
67
  if (MODFF (5000 / 11.0f, &iptrf) != -454 + 5000 / 11.0f
68
      || (CSF (1.0F, (MODFF (5000 / 11.0f, &iptrf)))
69
          != CSF (1.0F, (-454 + 5000 / 11.0f)))
70
      || (CSF (1.0F, iptrf) != CSF (1.0F, 454.0f)))
71
    link_error ();
72
  if (MODFD (5000 / 11.0, &iptr) != -454 + 5000 / 11.0
73
      || (CSD (1.0, (MODFD (5000 / 11.0, &iptr)))
74
          != CSD (1.0, (-454 + 5000 / 11.0)))
75
      || (CSD (1.0, iptr) != CSD (1.0, 454.0)))
76
    link_error ();
77
  if ((CSL (1.0L, (MODFL (5000 / 11.0l, &iptrl)))
78
       != CSL (1.0L, (-454 + 5000 / 11.0l)))
79
      || (CSL (1.0L, iptrl) != CSL (1.0L, 454.0l)))
80
    link_error ();
81
  if ((CSF (1.0F, (MODFF (1000 / 7.0f, &iptrf)))
82
       != CSF (1.0F, (-142 + 1000 / 7.0f)))
83
      || (CSF (1.0F, iptrf) != CSF (1.0F, 142.0f)))
84
    link_error ();
85
  if ((CSD (1.0, (MODFD (1000 / 7.0, &iptr)))
86
       != CSD (1.0, (-142 + 1000 / 7.0)))
87
      || (CSD (1.0, iptr) != CSD (1.0, 142.0)))
88
    link_error ();
89
  if ((CSL (1.0L, (MODFL (1000 / 7.0l, &iptrl)))
90
       != CSL (1.0L, (-142 + 1000 / 7.0l)))
91
      || (CSL (1.0L, iptrl) != CSL (1.0L, 142.0l)))
92
    link_error ();
93
  if (MODFF (123 / 7.0f, &iptrf) != -17 + 123 / 7.0f
94
      || (CSF (1.0F, iptrf) != CSF (1.0F, 17.0f)))
95
    link_error ();
96
  if (MODFD (123 / 7.0, &iptr) != -17 + 123 / 7.0
97
      || (CSD (1.0, iptr) != CSD (1.0, 17.0)))
98
    link_error ();
99
  if ((CSL (1.0L, (MODFL (123 / 7.0l, &iptrl)))
100
       != CSL (1.0L, (-17 + 123 / 7.0l)))
101
      || (CSL (1.0L, iptrl) != CSL (1.0L, 17.0l)))
102
    link_error ();
103
  if ((CSF (1.0F, (MODFF (117 / 7.0f, &iptrf)))
104
       != CSF (1.0F, (-16 + 117 / 7.0f)))
105
      || (CSF (1.0F, iptrf) != CSF (1.0F, 16.0f)))
106
    link_error ();
107
  if ((CSD (1.0, (MODFD (117 / 7.0, &iptr))) != CSD (1.0, (-16 + 117 / 7.0)))
108
      || (CSD (1.0, iptr) != CSD (1.0, 16.0)))
109
    link_error ();
110
  if (MODFL (117 / 7.0l, &iptrl) != -16 + 117 / 7.0l
111
      || (CSL (1.0L, iptrl) != CSL (1.0L, 16.0l)))
112
    link_error ();
113
  if (MODFF (5.5f, &iptrf) != 0.5f || (CSF (1.0F, iptrf) != CSF (1.0F, 5.0f)))
114
    link_error ();
115
  if (MODFD (5.5, &iptr) != 0.5 || (CSD (1.0, iptr) != CSD (1.0, 5.0)))
116
    link_error ();
117
  if (MODFL (5.5l, &iptrl) != 0.5l || (CSL (1.0L, iptrl) != CSL (1.0L, 5.0l)))
118
    link_error ();
119
  if ((CSF (1.0F, (MODFF (1.5f, &iptrf))) != CSF (1.0F, 0.5f))
120
      || (CSF (1.0F, iptrf) != 1.0f))
121
    link_error ();
122
  if ((CSD (1.0, (MODFD (1.5, &iptr))) != CSD (1.0, 0.5))
123
      || (CSD (1.0, iptr) != 1.0))
124
    link_error ();
125
  if (MODFL (1.5l, &iptrl) != iptrl != 1.0l || (CSL (1.0L, iptrl) != 1.0l))
126
    link_error ();
127
  if (MODFF (4 / 3.0f, &iptrf) != -1 + 4 / 3.0f
128
      || (CSF (1.0F, (MODFF (4 / 3.0f, &iptrf)))
129
          != CSF (1.0F, (-1 + 4 / 3.0f))) || (CSF (1.0F, iptrf) != (1.0F)))
130
    link_error ();
131
  if (MODFD (4 / 3.0, &iptr) != -1 + 4 / 3.0 || (CSD (1.0, iptr) != 1.0))
132
    link_error ();
133
  if (MODFL (4 / 3.0l, &iptrl) != iptrl != 1.0l
134
      || (CSL (1.0L, iptrl) != 1.0l))
135
    link_error ();
136
  if ((((MODFF (1.0f, &iptrf)))) || (CSF (1.0F, iptrf) != 1.0f))
137
    link_error ();
138
  if ((((MODFD (1.0, &iptr))) != 0.0) || (CSD (1.0, iptr) != 1.0))
139
    link_error ();
140
  if ((((MODFL (1.0l, &iptrl))) != 0.0l) || (CSL (1.0L, iptrl) != 1.0l))
141
    link_error ();
142
  if (MODFF (0.5f, &iptrf) != 0.5f || (CSF (1.0F, iptrf) != CSF (1.0F, 0.0f)))
143
    link_error ();
144
  if (MODFD (0.5, &iptr) != 0.5 || (CSD (1.0, iptr) != CSD (1.0, 0.0)))
145
    link_error ();
146
  if ((CSL (1.0L, (MODFL (0.5l, &iptrl))) != CSL (1.0L, 0.5l))
147
      || (CSL (1.0L, iptrl) != CSL (1.0L, 0.0l)))
148
    link_error ();
149
  if (MODFF (4 / 9.0f, &iptrf) != 4 / 9.0f
150
      != (CSF (1.0F, (MODFF (4 / 9.0f, &iptrf))) != CSF (1.0F, (4 / 9.0f)))
151
      || (CSF (1.0F, iptrf) != CSF (1.0F, 0.0f)))
152
    link_error ();
153
  if (MODFD (4 / 9.0, &iptr) != 4 / 9.0
154
      || (CSD (1.0, iptr) != CSD (1.0, 0.0)))
155
    link_error ();
156
  if (MODFL (4 / 9.0l, &iptrl) != 4 / 9.0l
157
      || (CSL (1.0L, iptrl) != CSL (1.0L, 0.0l)))
158
    link_error ();
159
  if (MODFF (1 / 3.0f, &iptrf) != 1 / 3.0f
160
      || (CSF (1.0F, iptrf) != CSF (1.0F, 0.0f)))
161
    link_error ();
162
  if (MODFD (1 / 3.0, &iptr) != 1 / 3.0
163
      || (CSD (1.0, iptr) != CSD (1.0, 0.0)))
164
    link_error ();
165
  if ((CSL (1.0L, (MODFL (1 / 3.0l, &iptrl))) != CSL (1.0L, (1 / 3.0l)))
166
      || (CSL (1.0L, iptrl) != CSL (1.0L, 0.0l)))
167
    link_error ();
168
  if ((CSF (1.0F, (MODFF (1 / 9.0f, &iptrf))) != CSF (1.0F, (1 / 9.0f)))
169
      || (CSF (1.0F, iptrf) != CSF (1.0F, 0.0f)))
170
    link_error ();
171
  if (MODFD (1 / 9.0, &iptr) != 1 / 9.0
172
      || (CSD (1.0, iptr) != CSD (1.0, 0.0)))
173
    link_error ();
174
  if ((CSL (1.0L, (MODFL (1 / 9.0l, &iptrl))) != CSL (1.0L, (1 / 9.0l)))
175
      || (CSL (1.0L, iptrl) != CSL (1.0L, 0.0l)))
176
    link_error ();
177
  if ((((MODFF (0.0f, &iptrf)))) || (CSF (1.0F, iptrf) != CSF (1.0F, 0.0f)))
178
    link_error ();
179
  if ((((MODFD (0.0, &iptr)))) || (CSD (1.0, iptr) != CSD (1.0, 0.0)))
180
    link_error ();
181
  if ((((MODFL (0.0l, &iptrl))) != 0.0l)
182
      || (CSL (1.0L, iptrl) != CSL (1.0L, 0.0l)))
183
    link_error ();
184
  if ((((MODFF (-0.0f, &iptrf)))) || (CSF (1.0F, iptrf) != CSF (1.0F, -0.0f)))
185
    link_error ();
186
  if ((((MODFD (-0.0, &iptr)))) || (CSD (1.0, iptr) != CSD (1.0, -0.0)))
187
    link_error ();
188
  if ((CSL (1.0L, (MODFL (-0.0l, &iptrl))) != CSL (1.0L, -0.0l))
189
      || (CSL (1.0L, iptrl) != CSL (1.0L, -0.0l)))
190
    link_error ();
191
  if (MODFF (-1 / 9.0f, &iptrf) != -1 / 9.0f
192
      || (CSF (1.0F, (MODFF (-1 / 9.0f, &iptrf))) != CSF (1.0F, (-1 / 9.0f)))
193
      || (CSF (1.0F, iptrf) != CSF (1.0F, -0.0f)))
194
    link_error ();
195
  if (MODFD (-1 / 9.0, &iptr) != -1 / 9.0
196
      || (CSD (1.0, iptr) != CSD (1.0, -0.0)))
197
    link_error ();
198
  if ((CSL (1.0L, (MODFL (-1 / 9.0l, &iptrl))) != CSL (1.0L, (-1 / 9.0l)))
199
      || (CSL (1.0L, iptrl) != CSL (1.0L, -0.0l)))
200
    link_error ();
201
  if ((CSF (1.0F, (MODFF (-1 / 3.0f, &iptrf))) != CSF (1.0F, (-1 / 3.0f)))
202
      || (CSF (1.0F, iptrf) != CSF (1.0F, -0.0f)))
203
    link_error ();
204
  if (MODFD (-1 / 3.0, &iptr) != -1 / 3.0
205
      || (CSD (1.0, iptr) != CSD (1.0, -0.0)))
206
    link_error ();
207
  if ((CSL (1.0L, (MODFL (-1 / 3.0l, &iptrl))) != CSL (1.0L, (-1 / 3.0l)))
208
      || (CSL (1.0L, iptrl) != CSL (1.0L, -0.0l)))
209
    link_error ();
210
  if (MODFF (-4 / 9.0f, &iptrf) != -4 / 9.0f
211
      || (CSF (1.0F, (MODFF (-4 / 9.0f, &iptrf))) != CSF (1.0F, (-4 / 9.0f)))
212
      || (CSF (1.0F, iptrf) != CSF (1.0F, -0.0f)))
213
    link_error ();
214
  if (MODFD (-4 / 9.0, &iptr) != -4 / 9.0
215
      || (CSD (1.0, iptr) != CSD (1.0, -0.0)))
216
    link_error ();
217
  if (MODFL (-4 / 9.0l, &iptrl) != -4 / 9.0l
218
      || (CSL (1.0L, (MODFL (-4 / 9.0l, &iptrl))) != CSL (1.0L, (-4 / 9.0l)))
219
      || (CSL (1.0L, iptrl) != CSL (1.0L, -0.0l)))
220
    link_error ();
221
  if (MODFF (-0.5f, &iptrf) != -0.5f
222
      || (CSF (1.0F, iptrf) != CSF (1.0F, -0.0f)))
223
    link_error ();
224
  if (MODFD (-0.5, &iptr) != -0.5
225
      != (CSD (1.0, (MODFD (-0.5, &iptr))) != CSD (1.0, -0.5))
226
      || (CSD (1.0, iptr) != CSD (1.0, -0.0)))
227
    (MODFL (-0.5l, (long double *) &iptrll));
228
  if ((((MODFF (-1.0f, &iptrf)))) || (CSF (1.0F, iptrf) != -1.0f))
229
    link_error ();
230
  if ((((MODFD (-1.0, &iptr))) != -0.0) || (CSD (1.0, iptr) != -1.0))
231
    link_error ();
232
  if ((((MODFL (-1.0l, &iptrl)))) || (CSL (1.0L, iptrl) != -1.0l))
233
    link_error ();
234
  if ((CSF (1.0F, (MODFF (-4 / 3.0f, &iptrf))) != CSF (1.0F, (1 - 4 / 3.0f)))
235
      || (CSF (1.0F, iptrf) != -1.0f))
236
    link_error ();
237
  if (MODFD (-4 / 3.0, &iptr) != 1 - 4 / 3.0 || (CSD (1.0, iptr) != -1.0))
238
    link_error ();
239
  if (MODFL (-4 / 3.0l, &iptrl) != 1 - 4 / 3.0l
240
      || (CSL (1.0L, (MODFL (-4 / 3.0l, &iptrl)))
241
          != CSL (1.0L, (1 - 4 / 3.0l))) || (CSL (1.0L, iptrl) != -1.0l))
242
    link_error ();
243
  if ((CSF (1.0F, (MODFF (-1.5f, &iptrf))) != CSF (1.0F, -0.5f))
244
      || (CSF (1.0F, iptrf) != -1.0f))
245
    link_error ();
246
  if ((CSD (1.0, (MODFD (-1.5, &iptr))) != CSD (1.0, -0.5))
247
      || (CSD (1.0, iptr) != -1.0))
248
    link_error ();
249
}

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.