From 92f6e625321d576fdcafebd2ad540f8709508a35 Mon Sep 17 00:00:00 2001 From: Jeff Sturm Date: Tue, 23 Sep 2003 03:05:30 +0000 Subject: decl.c (java_init_decl_processing): Don't emit otable decls if flag_indirect_dispatch is not set. * decl.c (java_init_decl_processing): Don't emit otable decls if flag_indirect_dispatch is not set. From-SVN: r71674 --- gcc/java/decl.c | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-) (limited to 'gcc/java/decl.c') diff --git a/gcc/java/decl.c b/gcc/java/decl.c index 7ddf704..858e082 100644 --- a/gcc/java/decl.c +++ b/gcc/java/decl.c @@ -634,17 +634,21 @@ java_init_decl_processing (void) method_symbols_array_ptr_type = build_pointer_type (method_symbols_array_type); - otable_decl = build_decl (VAR_DECL, get_identifier ("otable"), otable_type); - DECL_EXTERNAL (otable_decl) = 1; - TREE_STATIC (otable_decl) = 1; - TREE_READONLY (otable_decl) = 1; - pushdecl (otable_decl); + if (flag_indirect_dispatch) + { + otable_decl = build_decl (VAR_DECL, get_identifier ("otable"), + otable_type); + DECL_EXTERNAL (otable_decl) = 1; + TREE_STATIC (otable_decl) = 1; + TREE_READONLY (otable_decl) = 1; + pushdecl (otable_decl); - otable_syms_decl = build_decl (VAR_DECL, get_identifier ("otable_syms"), - method_symbols_array_type); - TREE_STATIC (otable_syms_decl) = 1; - TREE_CONSTANT (otable_syms_decl) = 1; - pushdecl (otable_syms_decl); + otable_syms_decl = build_decl (VAR_DECL, get_identifier ("otable_syms"), + method_symbols_array_type); + TREE_STATIC (otable_syms_decl) = 1; + TREE_CONSTANT (otable_syms_decl) = 1; + pushdecl (otable_syms_decl); + } PUSH_FIELD (object_type_node, field, "vtable", dtable_ptr_type); /* This isn't exactly true, but it is what we have in the source. -- cgit v1.1