diff options
author | Tom Tromey <tromey@cygnus.com> | 2000-03-16 18:32:45 +0000 |
---|---|---|
committer | Tom Tromey <tromey@gcc.gnu.org> | 2000-03-16 18:32:45 +0000 |
commit | 64aa33dd9c7353a00780a6c6a45c4f835adc2996 (patch) | |
tree | a9a67b3bdebd8b47728643d12e9e3d6dffc0f055 /gcc/java/decl.c | |
parent | 3c0fca12828829ee5a8c277c1792f59dfd868fef (diff) | |
download | gcc-64aa33dd9c7353a00780a6c6a45c4f835adc2996.zip gcc-64aa33dd9c7353a00780a6c6a45c4f835adc2996.tar.gz gcc-64aa33dd9c7353a00780a6c6a45c4f835adc2996.tar.bz2 |
lang.c (flag_hash_synchronization): New global.
* lang.c (flag_hash_synchronization): New global.
(lang_f_options): Added `hash-synchronization'.
* lang-options.h: Mention -fhash-synchronization.
* java-tree.h (flag_hash_synchronization): Declare.
* expr.c (java_lang_expand_expr): Only push `sync_info' value when
hash table synchronization is disabled.
* decl.c (init_decl_processing): Only push `sync_info' value when
hash table synchronization is disabled.
* class.c (make_class_data): Only push `sync_info' field when hash
table synchronization is disabled. Removed dead code.
From-SVN: r32593
Diffstat (limited to 'gcc/java/decl.c')
-rw-r--r-- | gcc/java/decl.c | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/gcc/java/decl.c b/gcc/java/decl.c index a0c3734..bd2514a 100644 --- a/gcc/java/decl.c +++ b/gcc/java/decl.c @@ -349,7 +349,8 @@ tree double_zero_node; tree empty_stmt_node; /* Nodes for boolean constants TRUE and FALSE. */ -tree boolean_true_node, boolean_false_node; +tree boolean_true_node; +tree boolean_false_node; tree TYPE_identifier_node; tree init_identifier_node; @@ -413,7 +414,8 @@ push_promoted_type (name, actual_type) } /* Nodes for integer constants. */ -tree integer_two_node, integer_four_node; +tree integer_two_node; +tree integer_four_node; tree integer_negative_one_node; /* Return a definition for a builtin function named NAME and whose data type @@ -629,8 +631,9 @@ init_decl_processing () /* This isn't exactly true, but it is what we have in the source. There is an unresolved issue here, which is whether the vtable should be marked by the GC. */ - PUSH_FIELD (object_type_node, field, "sync_info", - build_pointer_type (object_type_node)); + if (! flag_hash_synchronization) + PUSH_FIELD (object_type_node, field, "sync_info", + build_pointer_type (object_type_node)); for (t = TYPE_FIELDS (object_type_node); t != NULL_TREE; t = TREE_CHAIN (t)) FIELD_PRIVATE (t) = 1; FINISH_RECORD (object_type_node); @@ -1082,6 +1085,7 @@ pushdecl (x) return x; } + void pushdecl_force_head (x) tree x; @@ -1125,8 +1129,7 @@ getdecls () /* Create a new `struct binding_level'. */ -static -struct binding_level * +static struct binding_level * make_binding_level () { /* NOSTRICT */ |