From 5da8c011067c5514c5e891fd8b4d854eb4fc2e71 Mon Sep 17 00:00:00 2001 From: Eric Botcazou Date: Sun, 19 Aug 2012 14:17:22 +0000 Subject: layout.adb (Set_Elem_Alignment): Cap the alignment of access types to that of a regular access type for... * layout.adb (Set_Elem_Alignment): Cap the alignment of access types to that of a regular access type for non-strict-alignment platforms. * gcc-interface/utils.c (finish_fat_pointer_type): Do not set the alignment for non-strict-alignment platforms. From-SVN: r190515 --- gcc/ada/gcc-interface/utils.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'gcc/ada/gcc-interface/utils.c') diff --git a/gcc/ada/gcc-interface/utils.c b/gcc/ada/gcc-interface/utils.c index c9b29ad..4cca41b 100644 --- a/gcc/ada/gcc-interface/utils.c +++ b/gcc/ada/gcc-interface/utils.c @@ -1369,7 +1369,8 @@ void finish_fat_pointer_type (tree record_type, tree field_list) { /* Make sure we can put it into a register. */ - TYPE_ALIGN (record_type) = MIN (BIGGEST_ALIGNMENT, 2 * POINTER_SIZE); + if (STRICT_ALIGNMENT) + TYPE_ALIGN (record_type) = MIN (BIGGEST_ALIGNMENT, 2 * POINTER_SIZE); /* Show what it really is. */ TYPE_FAT_POINTER_P (record_type) = 1; -- cgit v1.1