Define LDBL_NBIT to be a mask indicating the position of the integer
bit in a long double. For architectures that don't have such a bit, LDBL_NBIT is 0. This makes it possible to say `mantissa & ~LDBL_NBIT' in places that previously used an #ifdef to select the right expression. The optimizer should dispense with the extra arithmetic when LDBL_NBIT is 0.
This commit is contained in:
parent
e0fe8e4440
commit
1dfab5edec
@ -38,6 +38,7 @@ union IEEEl2bits {
|
||||
|
||||
#define mask_nbit_l(u) ((void)0)
|
||||
#define LDBL_IMPLICIT_NBIT
|
||||
#define LDBL_NBIT 0
|
||||
|
||||
#define LDBL_MANH_SIZE 20
|
||||
#define LDBL_MANL_SIZE 32
|
||||
|
@ -38,7 +38,8 @@ union IEEEl2bits {
|
||||
} bits;
|
||||
};
|
||||
|
||||
#define mask_nbit_l(u) ((u).bits.manh &= 0x7fffffff)
|
||||
#define LDBL_NBIT 0x80000000
|
||||
#define mask_nbit_l(u) ((u).bits.manh &= ~LDBL_NBIT)
|
||||
|
||||
#define LDBL_MANH_SIZE 32
|
||||
#define LDBL_MANL_SIZE 32
|
||||
|
@ -37,7 +37,8 @@ union IEEEl2bits {
|
||||
} bits;
|
||||
};
|
||||
|
||||
#define mask_nbit_l(u) ((u).bits.manh &= 0x7fffffff)
|
||||
#define LDBL_NBIT 0x80000000
|
||||
#define mask_nbit_l(u) ((u).bits.manh &= ~LDBL_NBIT)
|
||||
|
||||
#define LDBL_MANH_SIZE 32
|
||||
#define LDBL_MANL_SIZE 32
|
||||
|
@ -37,7 +37,8 @@ union IEEEl2bits {
|
||||
} bits;
|
||||
};
|
||||
|
||||
#define mask_nbit_l(u) ((u).bits.manh &= 0x7fffffff)
|
||||
#define LDBL_NBIT 0x80000000
|
||||
#define mask_nbit_l(u) ((u).bits.manh &= ~LDBL_NBIT)
|
||||
|
||||
#define LDBL_MANH_SIZE 32
|
||||
#define LDBL_MANL_SIZE 32
|
||||
|
@ -38,6 +38,7 @@ union IEEEl2bits {
|
||||
|
||||
#define mask_nbit_l(u) ((void)0)
|
||||
#define LDBL_IMPLICIT_NBIT
|
||||
#define LDBL_NBIT 0
|
||||
|
||||
#define LDBL_MANH_SIZE 20
|
||||
#define LDBL_MANL_SIZE 32
|
||||
|
@ -39,6 +39,7 @@ union IEEEl2bits {
|
||||
|
||||
#define mask_nbit_l(u) ((void)0)
|
||||
#define LDBL_IMPLICIT_NBIT
|
||||
#define LDBL_NBIT 0
|
||||
|
||||
#define LDBL_MANH_SIZE 48
|
||||
#define LDBL_MANL_SIZE 64
|
||||
|
Loading…
x
Reference in New Issue
Block a user