pr52132.c: Fix FAIL on 16-bit int platforms.
* gcc.dg/pr52132.c: Fix FAIL on 16-bit int platforms. From-SVN: r184393
This commit is contained in:
parent
a19db3f2e3
commit
ba641b7eda
2 changed files with 13 additions and 0 deletions
|
@ -1,3 +1,7 @@
|
|||
2012-02-20 Georg-Johann Lay <avr@gjlay.de>
|
||||
|
||||
* gcc.dg/pr52132.c: Fix FAIL on 16-bit int platforms.
|
||||
|
||||
2012-02-20 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
PR tree-optimization/52286
|
||||
|
|
|
@ -2,6 +2,11 @@
|
|||
/* { dg-do compile } */
|
||||
/* { dg-options "-std=c99 -O2 -g" } */
|
||||
|
||||
#if (__SIZEOF_INT__ < __SIZEOF_FLOAT__) \
|
||||
&& (__SIZEOF_LONG__ == __SIZEOF_FLOAT__)
|
||||
#define int long
|
||||
#endif
|
||||
|
||||
int l;
|
||||
void bar (void);
|
||||
|
||||
|
@ -10,7 +15,11 @@ foo (int *x, float y)
|
|||
{
|
||||
float b;
|
||||
union { float f; int i; } u = { .f = y };
|
||||
#if (__SIZEOF_INT__ < __SIZEOF_FLOAT__)
|
||||
u.i += 127L << 23;
|
||||
#else
|
||||
u.i += 127 << 23;
|
||||
#endif
|
||||
u.f = ((-1.0f / 3) * u.f + 2) * u.f - 2.0f / 3;
|
||||
b = 0.5 * (u.f + l);
|
||||
if (b >= *x)
|
||||
|
|
Loading…
Add table
Reference in a new issue