diff options
author | Richard Henderson <rth@gcc.gnu.org> | 2001-08-17 11:28:06 -0700 |
---|---|---|
committer | Richard Henderson <rth@gcc.gnu.org> | 2001-08-17 11:28:06 -0700 |
commit | 51084e13c01c0f6ddf298c444bca9674d28e644a (patch) | |
tree | 6137f5210fae2ff6c6a7a6aee1797c7450a4bfbf /gcc/varasm.c | |
parent | d1356866eba98f8d8473cfcb6f8cd97740b9328c (diff) | |
download | gcc-51084e13c01c0f6ddf298c444bca9674d28e644a.zip gcc-51084e13c01c0f6ddf298c444bca9674d28e644a.tar.gz gcc-51084e13c01c0f6ddf298c444bca9674d28e644a.tar.bz2 |
varasm.c (assemble_variable): Don't overalign if DECL_USER_ALIGN.
* varasm.c (assemble_variable): Don't overalign if DECL_USER_ALIGN.
* crtstuff.c (__CTOR_LIST__, __DTOR_LIST__, __EH_FRAME_BEGIN__,
__JCR_LIST__, __CTOR_END__, __DTOR_END__, __FRAME_END__,__JCR_END__):
Add aligned attribute.
From-SVN: r44966
Diffstat (limited to 'gcc/varasm.c')
-rw-r--r-- | gcc/varasm.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/gcc/varasm.c b/gcc/varasm.c index 6cb2fb8..8b752dc 100644 --- a/gcc/varasm.c +++ b/gcc/varasm.c @@ -1474,13 +1474,16 @@ assemble_variable (decl, top_level, at_end, dont_output_data) } /* On some machines, it is good to increase alignment sometimes. */ + if (! DECL_USER_ALIGN (decl)) + { #ifdef DATA_ALIGNMENT - align = DATA_ALIGNMENT (TREE_TYPE (decl), align); + align = DATA_ALIGNMENT (TREE_TYPE (decl), align); #endif #ifdef CONSTANT_ALIGNMENT - if (DECL_INITIAL (decl) != 0 && DECL_INITIAL (decl) != error_mark_node) - align = CONSTANT_ALIGNMENT (DECL_INITIAL (decl), align); + if (DECL_INITIAL (decl) != 0 && DECL_INITIAL (decl) != error_mark_node) + align = CONSTANT_ALIGNMENT (DECL_INITIAL (decl), align); #endif + } /* Reset the alignment in case we have made it tighter, so we can benefit from it in get_pointer_alignment. */ |