PR middle-end/90597: gcc_assert ICE in layout_type
authorRoger Sayle <roger@nextmovesoftware.com>
Tue, 1 Sep 2020 11:03:21 +0000 (12:03 +0100)
committerRoger Sayle <roger@nextmovesoftware.com>
Tue, 1 Sep 2020 11:03:21 +0000 (12:03 +0100)
commitb61eaa25b0812a5996024e0ddb3535dde5a89c88
tree2d5b1b9e36d1da76a49eb6593ca4dd7d2f166582
parent3d137b75febd1a4ad70bcc64e0f79198f5571b86
PR middle-end/90597: gcc_assert ICE in layout_type

This patch fixes the default implementation of TARGET_VECTOR_ALIGNMENT,
known as default_vector_alignment, using the same logic as my earlier
nvptx patch, as the ICE caused by TYPE_SIZE(type) being zero during
error handling in gcc.dg/attr-vector_size.c is common among backends,
and is known in bugzilla as PR middle-end/90597, apparently a recent
regression.

2020-09-01  Roger Sayle  <roger@nextmovesoftware.com>

gcc/ChangeLog:
PR middle-end/90597
* targhooks.c (default_vector_alignment): Return at least the
GET_MODE_ALIGNMENT for the type's mode.
gcc/targhooks.c