diff options
author | Bernd Schmidt <bernds@redhat.com> | 2016-03-04 22:36:42 -0700 |
---|---|---|
committer | Jeff Law <law@gcc.gnu.org> | 2016-03-04 22:36:42 -0700 |
commit | b6b552fd01d723df6a9b71e3b11bff5c8965ea0e (patch) | |
tree | bd223937391def1d523dfcc565a4be8ee9bc67d7 /gcc/targhooks.c | |
parent | 201d49e91faff2a580e7e3efdf2458e5fe5a5bf9 (diff) | |
download | gcc-b6b552fd01d723df6a9b71e3b11bff5c8965ea0e.zip gcc-b6b552fd01d723df6a9b71e3b11bff5c8965ea0e.tar.gz gcc-b6b552fd01d723df6a9b71e3b11bff5c8965ea0e.tar.bz2 |
re PR c/69973 (ICE on excessive attribute vector_size)
PR c/69973
* targhooks.c (default_vector_alignment): Limit to MAX_OFILE_ALIGNMENT.
PR c/69973
* gcc.dg/pr69973.c: New test.
From-SVN: r234002
Diffstat (limited to 'gcc/targhooks.c')
-rw-r--r-- | gcc/targhooks.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/gcc/targhooks.c b/gcc/targhooks.c index 74af91a..a342277 100644 --- a/gcc/targhooks.c +++ b/gcc/targhooks.c @@ -1031,7 +1031,10 @@ tree default_mangle_decl_assembler_name (tree decl ATTRIBUTE_UNUSED, HOST_WIDE_INT default_vector_alignment (const_tree type) { - return tree_to_shwi (TYPE_SIZE (type)); + HOST_WIDE_INT align = tree_to_shwi (TYPE_SIZE (type)); + if (align > MAX_OFILE_ALIGNMENT) + align = MAX_OFILE_ALIGNMENT; + return align; } bool |