On 20 Jan 2014, at 08:45, Jakub Jelinek wrote:

> On Tue, Jan 14, 2014 at 05:59:11PM +0100, Jan-Benedict Glaw wrote:
>> 2014-01-14  Jan-Benedict Glaw  <jbg...@lug-owl.de>
>> 
>>      PR bootstrap/59496
>>      * config/rs6000/darwin.h (ADJUST_FIELD_ALIGN): Fix unused variable
>>      warning.
> 
> Ok, thanks.

As discussed on irc, I have applied a slightly modified version (differs in 
whitespace and amends the comment to explain the dummy use of FIELD).
Iain

r206802:

Index: gcc/ChangeLog
===================================================================
--- gcc/ChangeLog       (revision 206801)
+++ gcc/ChangeLog       (working copy)
@@ -1,3 +1,10 @@
+2014-01-20  Jan-Benedict Glaw  <jbg...@lug-owl.de>
+           Iain Sandoe  <i...@codesourcery.com>
+
+       PR bootstrap/59496
+       * config/rs6000/darwin.h (ADJUST_FIELD_ALIGN): Fix unused variable
+       warning.  Amend comment to reflect current functionality.
+
 2014-01-20  Richard Biener  <rguent...@suse.de>
 
        PR middle-end/59860
Index: gcc/config/rs6000/darwin.h
===================================================================
--- gcc/config/rs6000/darwin.h  (revision 206801)
+++ gcc/config/rs6000/darwin.h  (working copy)
@@ -321,16 +321,19 @@
    ? GENERAL_REGS                                              \
    : (CLASS))
 
-/* Compute field alignment.  This is similar to the version of the
-   macro in the Apple version of GCC, except that version supports
-   'mac68k' alignment, and that version uses the computed alignment
-   always for the first field of a structure.  The first-field
-   behavior is dealt with by
-   darwin_rs6000_special_round_type_align.  */
-#define ADJUST_FIELD_ALIGN(FIELD, COMPUTED)    \
-  (TARGET_ALIGN_NATURAL ? (COMPUTED)           \
-   : (COMPUTED) == 128 ? 128                   \
-   : MIN ((COMPUTED), 32))
+/* Compute field alignment.
+   This implements the 'power' alignment rule by pegging the alignment of
+   items (beyond the first aggregate field) to 32 bits.  The pegging is
+   suppressed for vector and long double items (both 128 in size).
+   There is a dummy use of the FIELD argument to avoid an unused variable
+   warning (see PR59496).  */
+#define ADJUST_FIELD_ALIGN(FIELD, COMPUTED)                    \
+  ((void) (FIELD),                                             \
+    (TARGET_ALIGN_NATURAL                                      \
+     ? (COMPUTED)                                              \
+     : (COMPUTED) == 128                                       \
+       ? 128                                                   \
+       : MIN ((COMPUTED), 32)))
 
 /* Darwin increases natural record alignment to doubleword if the first
    field is an FP double while the FP fields remain word aligned.  */

Reply via email to