re PR tree-optimization/79256 (FAIL: gcc.dg/vect/pr25413a.c execution test)
authorRichard Biener <rguenther@suse.de>
Tue, 7 Feb 2017 11:29:06 +0000 (11:29 +0000)
committerRichard Biener <rguenth@gcc.gnu.org>
Tue, 7 Feb 2017 11:29:06 +0000 (11:29 +0000)
commita4cf4b647cd239cc57d88ed82f7243e7efdf43f5
tree9fc890de85ab3e01588ab9bf2c29333aec48c2bb
parent7af4b20d83a8ce3033148f0d14c2e725791a7afd
re PR tree-optimization/79256 (FAIL: gcc.dg/vect/pr25413a.c execution test)

2017-02-07  Richard Biener  <rguenther@suse.de>

PR tree-optimization/79256
PR middle-end/79278
* builtins.c (get_object_alignment_2): Use min_align_of_type
to extract alignment for MEM_REFs to honor BIGGEST_FIELD_ALIGNMENT
and ADJUST_FIELD_ALIGN.

* doc/tm.texi.in (ADJUST_FIELD_ALIGN): Adjust to take additional
type parameter.
* doc/tm.texi: Regenerate.
* stor-layout.c (layout_decl): Adjust.
(update_alignment_for_field): Likewise.
(place_field): Likewise.
(min_align_of_type): Likewise.
* config/arc/arc.h (ADJUST_FIELD_ALIGN): Adjust.
* config/epiphany/epiphany.h (ADJUST_FIELD_ALIGN): Likewise.
* config/epiphany/epiphany.c (epiphany_adjust_field_align): Likewise.
* config/frv/frv.h (ADJUST_FIELD_ALIGN): Likewise.
* config/frv/frv.c (frv_adjust_field_align): Likewise.
* config/i386/i386.h (ADJUST_FIELD_ALIGN): Likewise.
* config/i386/i386.c (x86_field_alignment): Likewise.
* config/rs6000/aix.h (ADJUST_FIELD_ALIGN): Likewise.
* config/rs6000/darwin.h (ADJUST_FIELD_ALIGN): Likewise.
* config/rs6000/freebsd64.h (ADJUST_FIELD_ALIGN): Likewise.
* config/rs6000/linux64.h (ADJUST_FIELD_ALIGN): Likewise.
* config/rs6000/sysv4.h (ADJUST_FIELD_ALIGN): Likewise.
* config/rs6000/rs6000.c (rs6000_special_adjust_field_align_p):
 Likewise.

go/
* go-backend.c (go_field_alignment): Adjust.

libobjc/
* encoding.c (objc_layout_structure_next_member): Adjust
ADJUST_FIELD_ALIGN usage.

Revert
2017-01-30  Richard Biener  <rguenther@suse.de>

PR tree-optimization/79256
* targhooks.c (default_builtin_vector_alignment_reachable): Honor
BIGGEST_FIELD_ALIGNMENT and ADJUST_FIELD_ALIGN to fix up bogus
alignment on TYPE.

From-SVN: r245245
23 files changed:
gcc/ChangeLog
gcc/builtins.c
gcc/config/arc/arc.h
gcc/config/epiphany/epiphany.c
gcc/config/epiphany/epiphany.h
gcc/config/frv/frv.c
gcc/config/frv/frv.h
gcc/config/i386/i386.c
gcc/config/i386/i386.h
gcc/config/rs6000/aix.h
gcc/config/rs6000/darwin.h
gcc/config/rs6000/freebsd64.h
gcc/config/rs6000/linux64.h
gcc/config/rs6000/rs6000.c
gcc/config/rs6000/sysv4.h
gcc/doc/tm.texi
gcc/doc/tm.texi.in
gcc/go/ChangeLog
gcc/go/go-backend.c
gcc/stor-layout.c
gcc/targhooks.c
libobjc/ChangeLog
libobjc/encoding.c