diff options
author | Bryce McKinlay <bryce@waitaki.otago.ac.nz> | 2002-04-17 23:13:11 +0000 |
---|---|---|
committer | Bryce McKinlay <bryce@gcc.gnu.org> | 2002-04-18 00:13:11 +0100 |
commit | b798d8b64db189b0d3481263de714817ede0e4ce (patch) | |
tree | 586cfa68033482cd0f99fe79ca195bd293bb4892 /gcc/java/expr.c | |
parent | b7403f10f2892ac2f2f4f09f9635d41043f728d9 (diff) | |
download | gcc-b798d8b64db189b0d3481263de714817ede0e4ce.zip gcc-b798d8b64db189b0d3481263de714817ede0e4ce.tar.gz gcc-b798d8b64db189b0d3481263de714817ede0e4ce.tar.bz2 |
class.c (make_class_data): Set DECL_ALIGN on static class data, for hash synchronization.
* class.c (make_class_data): Set DECL_ALIGN on static class data,
for hash synchronization.
* expr.c (java_expand_expr): Set DECL_ALIGN on static array objects.
* decl.c (java_init_decl_processing): Don't set TYPE_ALIGN for
class_type_node.
From-SVN: r52448
Diffstat (limited to 'gcc/java/expr.c')
-rw-r--r-- | gcc/java/expr.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/java/expr.c b/gcc/java/expr.c index bba81d5..dd736c7 100644 --- a/gcc/java/expr.c +++ b/gcc/java/expr.c @@ -2526,6 +2526,9 @@ java_expand_expr (exp, target, tmode, modifier) DECL_INITIAL (init_decl) = value; DECL_IGNORED_P (init_decl) = 1; TREE_READONLY (init_decl) = 1; + /* Hash synchronization requires at least 64-bit alignment. */ + if (flag_hash_synchronization && POINTER_SIZE < 64) + DECL_ALIGN (init_decl) = 64; rest_of_decl_compilation (init_decl, NULL, 1, 0); TREE_SYMBOL_REFERENCED (DECL_ASSEMBLER_NAME (init_decl)) = 1; init = build1 (ADDR_EXPR, TREE_TYPE (exp), init_decl); |