diff options
author | Jan Hubicka <hubicka@ucw.cz> | 2014-05-24 03:42:22 +0200 |
---|---|---|
committer | Jan Hubicka <hubicka@gcc.gnu.org> | 2014-05-24 01:42:22 +0000 |
commit | c517fc92b5dc6e19712c25bc13b73b5ab760ea01 (patch) | |
tree | 9a645ca6b02bcb5e4345eddab35afba6b328d966 /gcc/cp/rtti.c | |
parent | 8ce8d98e74b3c9e8a03443a936624f46f00e5cde (diff) | |
download | gcc-c517fc92b5dc6e19712c25bc13b73b5ab760ea01.zip gcc-c517fc92b5dc6e19712c25bc13b73b5ab760ea01.tar.gz gcc-c517fc92b5dc6e19712c25bc13b73b5ab760ea01.tar.bz2 |
rtti.c: Include tm_p.h
* rtti.c: Include tm_p.h
(emit_tinfo_decl): Force RTTI data to be aligned to required
ABI alignment only.
From-SVN: r210887
Diffstat (limited to 'gcc/cp/rtti.c')
-rw-r--r-- | gcc/cp/rtti.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/gcc/cp/rtti.c b/gcc/cp/rtti.c index e9e2c44..b665a8d 100644 --- a/gcc/cp/rtti.c +++ b/gcc/cp/rtti.c @@ -24,6 +24,7 @@ along with GCC; see the file COPYING3. If not see #include "coretypes.h" #include "tm.h" #include "tree.h" +#include "tm_p.h" #include "stringpool.h" #include "stor-layout.h" #include "cp-tree.h" @@ -1596,6 +1597,12 @@ emit_tinfo_decl (tree decl) DECL_INITIAL (decl) = init; mark_used (decl); cp_finish_decl (decl, init, false, NULL_TREE, 0); + /* Avoid targets optionally bumping up the alignment to improve + vector instruction accesses, tinfo are never accessed this way. */ +#ifdef DATA_ABI_ALIGNMENT + DECL_ALIGN (decl) = DATA_ABI_ALIGNMENT (decl, TYPE_ALIGN (TREE_TYPE (decl))); + DECL_USER_ALIGN (decl) = true; +#endif return true; } else |