blob: ea9468d12a50339cef25941646b979644774e60e [file] [log] [blame]
/* APPLE LOCAL file 5813921 */
/* { dg-do compile { target powerpc-*-* i?86-*-* x86_64-*-* } } */
/* { dg-options { -Os } } */
/* { dg-final { scan-assembler "cntlzw" { target powerpc-*-* } } } */
/* { dg-final { scan-assembler "bsr" { target i?86-*-* x86_64-*-* } } } */
typedef long unsigned int __darwin_size_t;
typedef __darwin_size_t size_t;
typedef enum RoundingMode {
kRoundTowardNearestEven = 1, kRoundTowardZero = 2, kRoundTowardInf = 4,
kRoundTowardMinusInf = 8,
kRoundAll = kRoundTowardNearestEven | kRoundTowardZero | kRoundTowardInf
| kRoundTowardMinusInf } RoundingMode;
extern const int roundingModes[4];
void SetRoundingMode( RoundingMode mode ) {
long m = mode;
size_t r = (8*sizeof(long)-1) - __builtin_clzl( m );
fesetround( roundingModes[ r ] );
}