Check for librt earlier
[openal-soft.git] / alc / fpu_modes.h
blob5465e9cfcc471c3199ccb8119e2d7346a47edcaa
1 #ifndef FPU_MODES_H
2 #define FPU_MODES_H
4 class FPUCtl {
5 #if defined(HAVE_SSE_INTRINSICS) || (defined(__GNUC__) && defined(HAVE_SSE))
6 unsigned int sse_state{};
7 #endif
8 bool in_mode{};
10 public:
11 FPUCtl();
12 /* HACK: 32-bit targets for GCC seem to have a problem here with certain
13 * noexcept methods (which destructors are) causing an internal compiler
14 * error. No idea why it's these methods specifically, but this is needed
15 * to get it to compile.
17 ~FPUCtl() noexcept(false) { leave(); }
19 FPUCtl(const FPUCtl&) = delete;
20 FPUCtl& operator=(const FPUCtl&) = delete;
22 void leave();
25 #endif /* FPU_MODES_H */