diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 2f8c80c..05840b2 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2010-06-17  Sebastian Andrzej Siewior  <bigeasy@linutronix.de>
+
+	* config/rs6000/crtresfpr.asm: Put __NO_FPRS__ around FPU opcodes
+	* config/rs6000/crtresxfpr.asm: Likewies.
+	* config/rs6000/crtsavfpr.asm: Likewies.
+
 2010-06-17  Nathan Froyd  <froydnj@codesourcery.com>
 
 	* tree.h (vec_member): Declare.
diff --git a/gcc/config/rs6000/crtresfpr.asm b/gcc/config/rs6000/crtresfpr.asm
index 9fb228c..a4f85d7 100644
--- a/gcc/config/rs6000/crtresfpr.asm
+++ b/gcc/config/rs6000/crtresfpr.asm
@@ -33,6 +33,7 @@
 
 /* On PowerPC64 Linux, these functions are provided by the linker.  */
 #ifndef __powerpc64__
+#ifndef __NO_FPRS__
 
 /* Routines for restoring floating point registers, called by the compiler.  */
 /* Called with r11 pointing to the stack header word of the caller of the */
@@ -79,3 +80,4 @@ FUNC_END(_restfpr_14)
 CFI_ENDPROC
 
 #endif
+#endif
diff --git a/gcc/config/rs6000/crtresxfpr.asm b/gcc/config/rs6000/crtresxfpr.asm
index 633f2db..ae251bf 100644
--- a/gcc/config/rs6000/crtresxfpr.asm
+++ b/gcc/config/rs6000/crtresxfpr.asm
@@ -33,6 +33,7 @@
 
 /* On PowerPC64 Linux, these functions are provided by the linker.  */
 #ifndef __powerpc64__
+#ifndef __NO_FPRS__
 
 /* Routines for restoring floating point registers, called by the compiler.  */
 /* Called with r11 pointing to the stack header word of the caller of the */
@@ -124,3 +125,4 @@ FUNC_END(_restfpr_14_x)
 CFI_ENDPROC
 
 #endif
+#endif
diff --git a/gcc/config/rs6000/crtsavfpr.asm b/gcc/config/rs6000/crtsavfpr.asm
index 3cdb250..b041ae9 100644
--- a/gcc/config/rs6000/crtsavfpr.asm
+++ b/gcc/config/rs6000/crtsavfpr.asm
@@ -33,7 +33,7 @@
 
 /* On PowerPC64 Linux, these functions are provided by the linker.  */
 #ifndef __powerpc64__
-
+#ifndef __NO_FPRS__
 /* Routines for saving floating point registers, called by the compiler.  */
 /* Called with r11 pointing to the stack header word of the caller of the */
 /* function, just beyond the end of the floating point save area.  */
@@ -79,3 +79,4 @@ FUNC_END(_savefpr_14)
 CFI_ENDPROC
 
 #endif
+#endif
