summaryrefslogtreecommitdiff
path: root/gcc/config/rs6000/darwin.h
diff options
context:
space:
mode:
authoriains <iains@138bc75d-0d04-0410-961f-82ee72b054a4>2014-01-20 11:20:24 +0000
committeriains <iains@138bc75d-0d04-0410-961f-82ee72b054a4>2014-01-20 11:20:24 +0000
commit8ef52e3527d8e7094ec1e841a6b2d5aecfa4b45b (patch)
treecfcfb0e8927b0bc1b008c8350555da8e4ae69be3 /gcc/config/rs6000/darwin.h
parentd4addd98c9c1883eb246beb667b805b3ac2d5711 (diff)
downloadgcc-8ef52e3527d8e7094ec1e841a6b2d5aecfa4b45b.tar.gz
gcc:
PR bootstrap/59496 * config/rs6000/darwin.h (ADJUST_FIELD_ALIGN): Fix unused variable warning. Amend comment to reflect current functionality. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206802 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/rs6000/darwin.h')
-rw-r--r--gcc/config/rs6000/darwin.h23
1 files changed, 13 insertions, 10 deletions
diff --git a/gcc/config/rs6000/darwin.h b/gcc/config/rs6000/darwin.h
index 43a2ab514dc..0329f3f621b 100644
--- a/gcc/config/rs6000/darwin.h
+++ b/gcc/config/rs6000/darwin.h
@@ -321,16 +321,19 @@ extern int darwin_emit_branch_islands;
? 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. */