diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index cee23d33b41bb099eb2063fb804fa379fff8b222..92cb754a3c09f015ab197b35124e830071cfb4c1 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2004-04-16  Nick Clifton  <nickc@redhat.com>
+
+	* config/arm/arm.c (arm_override_options): Revert previous patch.
+	* config/arm/t-xscale-elf: Disable iwmmxt multilibs until they can
+	be safely built.
+
 2004-04-16  Kazuhiro Inaoka <inaoka dot kazuhiro at renesas dot com>
 
 	* config/m32r/m32r.h (BIG_ENDIAN_BIT): Deleted to fix endian
diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c
index 4d57e28fbb8db69e2e94ab4e50a07fc3c943a69b..6f340df7a909d2f714a1bb6990076da8fe460376 100644
--- a/gcc/config/arm/arm.c
+++ b/gcc/config/arm/arm.c
@@ -856,12 +856,7 @@ arm_override_options (void)
 	error ("invalid ABI option: -mabi=%s", target_abi_name);
     }
   else
-    {
-      if (TARGET_IWMMXT)
-	arm_abi = ARM_ABI_AAPCS;
-      else
-	arm_abi = ARM_DEFAULT_ABI;
-    }
+    arm_abi = ARM_DEFAULT_ABI;
 
   if (TARGET_IWMMXT && !ARM_DOUBLEWORD_ALIGN)
     error ("iwmmxt requires an AAPCS compatible ABI for proper operation");
diff --git a/gcc/config/arm/t-xscale-elf b/gcc/config/arm/t-xscale-elf
index 03a886c7bfab8c89c208bef1725a35c727567f6c..1b7119a9553f8d9362404cf399c476e6771af6ee 100644
--- a/gcc/config/arm/t-xscale-elf
+++ b/gcc/config/arm/t-xscale-elf
@@ -37,9 +37,15 @@ MULTILIB_EXCEPTIONS += *mhard-float/*mthumb*
 
 MULTILIB_REDUNDANT_DIRS = interwork/thumb=thumb
 
-MULTILIB_OPTIONS    += mcpu=iwmmxt
-MULTILIB_DIRNAMES   += iwmmxt
-MULTILIB_REDUNDANT_DIRS += interwork/thumb/iwmmxt=thumb
+# The iWMMXt multilibs are suppressed for now because gcc only
+# supports generating them with the IWMMXT or AAPCS ABIs, neither of
+# which is the default.  Until GCC can generate code for an iWMMXt
+# which will work with the default ABI it is not possible to safely
+# generate these multilibs.
+#
+# MULTILIB_OPTIONS    += mcpu=iwmmxt
+# MULTILIB_DIRNAMES   += iwmmxt
+# MULTILIB_REDUNDANT_DIRS += interwork/thumb/iwmmxt=thumb
 
 EXTRA_MULTILIB_PARTS = crtbegin.o crtend.o crti.o crtn.o