diff --git a/basis/math/floats/env/ppc/ppc.factor b/basis/math/floats/env/ppc/ppc.factor index dd8fd88b13..d6a6ae6834 100644 --- a/basis/math/floats/env/ppc/ppc.factor +++ b/basis/math/floats/env/ppc/ppc.factor @@ -34,7 +34,7 @@ M: ppc-vmx-env (set-fp-env-register) M: ppc (fp-env-registers) 2array ; -CONSTANT: ppc-exception-flag-bits HEX: fff8,0000 +CONSTANT: ppc-exception-flag-bits HEX: fff8,0700 CONSTANT: ppc-exception-flag>bit H{ { +fp-invalid-operation+ HEX: 2000,0000 } diff --git a/vm/os-macosx-ppc.hpp b/vm/os-macosx-ppc.hpp index 338e3e812f..cd2097a3fd 100644 --- a/vm/os-macosx-ppc.hpp +++ b/vm/os-macosx-ppc.hpp @@ -69,7 +69,7 @@ inline static cell fix_stack_pointer(cell sp) inline static void mach_clear_fpu_status(ppc_float_state_t *float_state) { - FPSCR(float_state) &= 0x0007ffff; + FPSCR(float_state) &= 0x0007f8ff; } inline static void uap_clear_fpu_status(void *uap)