blob: b3a85b55ad7cbad1aec5d3140eea033932414f04 [file] [log] [blame]
/* { dg-do compile } */
typedef __UINT64_TYPE__ UINT64;
typedef union {
struct {
unsigned short lo4;
unsigned short lo3;
unsigned short lo2;
unsigned short lo1;
} i;
long double f;
} BID_BINARY80LDOUBLE;
UINT64 __binary80_to_bid32 (long double x)
{
BID_BINARY80LDOUBLE x_in;
x_in.f = x;
return (x_in.i.lo4
+ ((UINT64)x_in.i.lo3 << 16)
+ ((UINT64)x_in.i.lo2 << 32)
+ ((UINT64)x_in.i.lo1 << 48));
}