diff --git a/lisp/Config.FreeBSD_gencgc b/lisp/Config.FreeBSD_gencgc
index 2b9db2d44bb1def4de5f30c77116e8e055bf16a5..86fe4e9417637f66fc9f3bdbb0d3b5511083da93 100644
--- a/lisp/Config.FreeBSD_gencgc
+++ b/lisp/Config.FreeBSD_gencgc
@@ -20,3 +20,7 @@ OS_SRC = FreeBSD-os.c os-common.c elf.c e_rem_pio2.c k_rem_pio2.c
 OS_LINK_FLAGS = -dynamic -export-dynamic
 OS_LIBS =
 GC_SRC = gencgc.c
+
+# This has aliasing problems, so turn off aliasing.
+e_rem_pio2.o : e_rem_pio2.c
+	$(CC) -c -fno-strict-aliasing -ffloat-store $(CFLAGS)  $<
diff --git a/lisp/Config.ppc_darwin b/lisp/Config.ppc_darwin
index 352110d20efb8e1fe7b3c99277eab8eaea4e17d2..decd700dd416c33ea7d780507067ee52a9644e0d 100644
--- a/lisp/Config.ppc_darwin
+++ b/lisp/Config.ppc_darwin
@@ -45,3 +45,7 @@ OS_LIBS = -lSystem -lc -lm
 #	true
 
 #darwin-lispadjuster: darwin-lispadjuster.c
+
+# This has aliasing problems, so turn off aliasing.
+e_rem_pio2.o : e_rem_pio2.c
+	$(CC) -c -fno-strict-aliasing -ffloat-store $(CFLAGS)  $<
diff --git a/lisp/Config.x86_darwin b/lisp/Config.x86_darwin
index 4697e842205267690795e2421345efc105e106e8..4309122526572113ef484b4a01c2b83449fc6479 100644
--- a/lisp/Config.x86_darwin
+++ b/lisp/Config.x86_darwin
@@ -17,3 +17,7 @@ OS_SRC = Darwin-os.c os-common.c e_rem_pio2.c k_rem_pio2.c
 # OS_LINK_FLAGS = -dynamic -export-dynamic
 OS_LIBS =
 GC_SRC = gencgc.c
+
+# This has aliasing problems, so turn off aliasing.
+e_rem_pio2.o : e_rem_pio2.c
+	$(CC) -c -fno-strict-aliasing -ffloat-store $(CFLAGS)  $<