diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 2510e1372992e53990e76be642612d953e2876b2..0bc5892f8f0f1335c8da6bcc9caafbbf4563a67c 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,7 @@
+2004-05-13  Paul Brook  <paul@codesourcery.com>
+
+	* config/arm/arm.h (PCC_BITFIELD_TYPE_MATTERS): Define.
+
 2004-05-13  Paul Brook  <paul@codesourcery.com>
 
 	* config/arm/arm.c (arm_default_short_enums): New function.
diff --git a/gcc/config/arm/arm.h b/gcc/config/arm/arm.h
index 518e387bba8dbc71b784a9728bdc8b3b1264a260..fe693a83ce150aae20f03a82a0311c2d7edebe78 100644
--- a/gcc/config/arm/arm.h
+++ b/gcc/config/arm/arm.h
@@ -729,6 +729,12 @@ extern const char * structure_size_string;
 #ifndef SIZE_TYPE
 #define SIZE_TYPE (TARGET_AAPCS_BASED ? "unsigned int" : "long unsigned int")
 #endif
+
+/* AAPCS requires that structure alignment is affected by bitfields.  */
+#ifndef PCC_BITFIELD_TYPE_MATTERS
+#define PCC_BITFIELD_TYPE_MATTERS TARGET_AAPCS_BASED
+#endif
+
 
 /* Standard register usage.  */