llvm-6502/test/C++Frontend/2003-05-21-UnionBitfields.c
Chris Lattner 45aebdd04a New testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6278 91177308-0d34-0410-b5e6-96231b3b80d8
2003-05-21 23:01:50 +00:00

23 lines
462 B
C

#include <stdio.h>
#include <math.h>
int target_isinf(double x) {
union {
double d;
struct {
unsigned mantissa2;
unsigned mantissa1 : 20;
unsigned exponent : 11;
unsigned sign : 1;
} big_endian;
} u;
u.d = x;
return (u.big_endian.exponent == 2047 && u.big_endian.mantissa1 == 0 && u.big_endian.mantissa2 == 0);
}
int main() {
printf("%d %d\n", target_isinf(1234.42), target_isinf(INFINITY));
return 0;
}