diff options
Diffstat (limited to 'gcc/ada/layout.adb')
-rw-r--r-- | gcc/ada/layout.adb | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/gcc/ada/layout.adb b/gcc/ada/layout.adb index 45cc66247bb..c6dec0aa379 100644 --- a/gcc/ada/layout.adb +++ b/gcc/ada/layout.adb @@ -6,7 +6,7 @@ -- -- -- B o d y -- -- -- --- Copyright (C) 2001-2007, Free Software Foundation, Inc. -- +-- Copyright (C) 2001-2008, Free Software Foundation, Inc. -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -2807,7 +2807,7 @@ package body Layout is -- have an alignment of 1. But don't do anything for atomic records -- since we may need higher alignment for indivisible access. - if Optimize_Alignment = 'S' + if Optimize_Alignment_Space (E) and then Is_Record_Type (E) and then Is_Packed (E) and then not Is_Atomic (E) @@ -2848,7 +2848,7 @@ package body Layout is -- alignment matches the size, for example, if the size is 17 -- bytes then we want an alignment of 1 for the type. - elsif Optimize_Alignment = 'S' then + elsif Optimize_Alignment_Space (E) then if Siz mod (8 * System_Storage_Unit) = 0 then Align := 8; elsif Siz mod (4 * System_Storage_Unit) = 0 then @@ -2864,7 +2864,7 @@ package body Layout is -- alignment of 4. Note that this matches the old VMS behavior -- in versions of GNAT prior to 6.1.1. - elsif Optimize_Alignment = 'T' + elsif Optimize_Alignment_Time (E) and then Siz > System_Storage_Unit and then Siz <= 8 * System_Storage_Unit then @@ -2902,7 +2902,7 @@ package body Layout is -- since conceivably we may be able to do better. if Align > System_Word_Size / System_Storage_Unit - and then Optimize_Alignment /= 'T' + and then not Optimize_Alignment_Time (E) then Align := System_Word_Size / System_Storage_Unit; end if; @@ -2912,7 +2912,7 @@ package body Layout is -- we have Optimize_Alignment set to Space. Note that that covers -- the case of packed records, where we already set alignment to 1. - if Optimize_Alignment /= 'S' then + if not Optimize_Alignment_Space (E) then declare Comp : Entity_Id; |