В Mac OS X это довольно сложно. OS X использует модуль SSE для всей математики FP по умолчанию, а не модуль x87 FP. Модуль SSE не учитывает параметры прерывания, поэтому это означает, что в дополнение к разрешению прерываний вы должны обязательно скомпилировать весь свой код, чтобы не использовать математику SSE.
Вы можете отключить математику, добавив "-mno-sse -mno-sse2 -mno-sse3" к своим CFLAGS. После этого вы можете использовать встроенную сборку для настройки исключений FP, в основном с теми же флагами, что и в Linux.
short fpflags = 0x1332 // Default FP flags, change this however you want.
asm("fnclex");
asm("fldcw _fpflags");
Единственный улов, который вы можете обнаружить, заключается в том, что, поскольку OS X построена полностью с использованием sse, могут быть необработанные ошибки. Я знаю, что раньше была большая проблема с обработчиком сигнала, который не передавал правильные коды, но это было несколько лет назад, надеюсь, это исправлено.