aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRichard Henderson <rth@gcc.gnu.org>2001-12-21 16:52:30 -0800
committerRichard Henderson <rth@gcc.gnu.org>2001-12-21 16:52:30 -0800
commit9a07cfaf9f9d67cbc41624904ee1f833eb81e2b9 (patch)
treea877417b0b3f685c894a76459939bd13797420ef /gcc
parent4585ae3de289f2174e3c294c6cad953d086d8a8f (diff)
downloadgcc-9a07cfaf9f9d67cbc41624904ee1f833eb81e2b9.zip
gcc-9a07cfaf9f9d67cbc41624904ee1f833eb81e2b9.tar.gz
gcc-9a07cfaf9f9d67cbc41624904ee1f833eb81e2b9.tar.bz2
boehm.c (PROCEDURE_OBJECT_DESCRIPTOR): Merge into ..
* boehm.c (PROCEDURE_OBJECT_DESCRIPTOR): Merge into .. (get_boehm_type_descriptor): ... here. Arrange for the TREE_TYPE to get set properly. From-SVN: r48261
Diffstat (limited to 'gcc')
-rw-r--r--gcc/java/ChangeLog26
-rw-r--r--gcc/java/boehm.c23
2 files changed, 28 insertions, 21 deletions
diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog
index 6c0a6d7..a1773a3 100644
--- a/gcc/java/ChangeLog
+++ b/gcc/java/ChangeLog
@@ -1,5 +1,11 @@
2001-12-21 Richard Henderson <rth@redhat.com>
+ * boehm.c (PROCEDURE_OBJECT_DESCRIPTOR): Merge into ..
+ (get_boehm_type_descriptor): ... here. Arrange for the
+ TREE_TYPE to get set properly.
+
+2001-12-21 Richard Henderson <rth@redhat.com>
+
* class.c (compile_resource_file): Set TREE_PUBLIC on the constructor
only if the target requires collect2.
@@ -774,7 +780,7 @@ Tue Oct 23 14:02:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2001-08-28 Per Bothner <per@bothner.com>
* jcf-write.c (generate_bytecode_insns): For increments and
- decrements just recurse to push constant. Improvement on Mark's patch.
+ decrements just recurse to push constant. Improvement on Mark's patch.
2001-08-28 Mark Mitchell <mark@codesourcery.com>
@@ -981,7 +987,7 @@ Tue Oct 23 14:02:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2001-08-06 Richard Henderson <rth@redhat.com>
- * class.c (emit_register_classes): Pass a symbol_ref and priority
+ * class.c (emit_register_classes): Pass a symbol_ref and priority
to assemble_constructor.
2001-08-02 Alexandre Petit-Bianco <apbianco@redhat.com>
@@ -993,8 +999,8 @@ Tue Oct 23 14:02:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2001-08-01 Jeff Sturm <jsturm@one-point.com>
- * java-tree.h (BUILD_FILENAME_IDENTIFIER_NODE):
- Use ggc_add_tree_root to register roots.
+ * java-tree.h (BUILD_FILENAME_IDENTIFIER_NODE):
+ Use ggc_add_tree_root to register roots.
2001-07-31 Alexandre Petit-Bianco <apbianco@redhat.com>
@@ -1252,7 +1258,7 @@ Tue Oct 23 14:02:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2001-05-18 Per Bothner <per@bothner.com>
* jvspec.c (lang_specific_pre_link): Re-arrange the linker
- command line so the jvgenmain-generated main program comes first.
+ command line so the jvgenmain-generated main program comes first.
2001-05-15 Tom Tromey <tromey@redhat.com>
@@ -1287,7 +1293,7 @@ Tue Oct 23 14:02:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2001-05-03 Mo DeJong <mdejong@redhat.com>
- * lex.c (java_new_lexer): Call iconv_close on temp handle used to
+ * lex.c (java_new_lexer): Call iconv_close on temp handle used to
check for byte swap.
2000-05-02 Jeff Sturm <jsturm@one-point.com>
@@ -1744,8 +1750,8 @@ Tue Oct 23 14:02:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2001-03-19 Andrew Haley <aph@cambridge.redhat.com>
- * class.c (build_static_field_ref): Call make_decl_rtl() after
- setting the DECL_EXTERNAL flag.
+ * class.c (build_static_field_ref): Call make_decl_rtl() after
+ setting the DECL_EXTERNAL flag.
2001-03-17 Per Bothner <per@bothner.com>
@@ -1918,7 +1924,7 @@ Fri Feb 23 15:28:39 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* Make-lang.in (jvspec.o): Modify rule to match that of cp/g++spec.o.
2001-02-14 Tom Tromey <tromey@redhat.com>
- Alexandre Petit-Bianco <apbianco@cygnus.com>
+ Alexandre Petit-Bianco <apbianco@cygnus.com>
Fix for PR java/1261.
* typeck.c (build_java_array_type): Add public `clone' method to
@@ -2545,7 +2551,7 @@ Sun Feb 4 15:52:44 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* gen-table.pl: new file.
2000-11-20 Tom Tromey <tromey@cygnus.com>
- Alexandre Petit-Bianco <apbianco@cygnus.com>
+ Alexandre Petit-Bianco <apbianco@cygnus.com>
* parse.y (java_complete_lhs): Only allow compound assignment of
reference type if type is String.
diff --git a/gcc/java/boehm.c b/gcc/java/boehm.c
index e92b440..3eb2043 100644
--- a/gcc/java/boehm.c
+++ b/gcc/java/boehm.c
@@ -43,14 +43,6 @@ static void set_bit PARAMS ((unsigned HOST_WIDE_INT *,
unsigned HOST_WIDE_INT *,
unsigned int));
-/* Compute a procedure-based object descriptor. We know that our
- `kind' is 0, and `env' is likewise 0, so we have a simple
- computation. From the GC sources:
- (((((env) << LOG_MAX_MARK_PROCS) | (proc_index)) << DS_TAG_BITS) \
- | DS_PROC)
- Here DS_PROC == 2. */
-#define PROCEDURE_OBJECT_DESCRIPTOR build_int_2 (2, 0)
-
/* Treat two HOST_WIDE_INT's as a contiguous bitmap, with bit 0 being
the least significant. This function sets bit N in the bitmap. */
static void
@@ -167,7 +159,7 @@ get_boehm_type_descriptor (tree type)
/* If we have a type of unknown size, use a proc. */
if (int_size_in_bytes (type) == -1)
- return PROCEDURE_OBJECT_DESCRIPTOR;
+ goto procedure_object_descriptor;
bit = POINTER_SIZE / BITS_PER_UNIT;
/* The size of this node has to be known. And, we only support 32
@@ -187,7 +179,7 @@ get_boehm_type_descriptor (tree type)
ubit = (unsigned int) bit;
if (type == class_type_node)
- return PROCEDURE_OBJECT_DESCRIPTOR;
+ goto procedure_object_descriptor;
field = TYPE_FIELDS (type);
mark_reference_fields (field, &low, &high, ubit,
@@ -227,7 +219,16 @@ get_boehm_type_descriptor (tree type)
value = build_int_2 (low, high);
}
else
- value = PROCEDURE_OBJECT_DESCRIPTOR;
+ {
+ /* Compute a procedure-based object descriptor. We know that our
+ `kind' is 0, and `env' is likewise 0, so we have a simple
+ computation. From the GC sources:
+ (((((env) << LOG_MAX_MARK_PROCS) | (proc_index)) << DS_TAG_BITS) \
+ | DS_PROC)
+ Here DS_PROC == 2. */
+ procedure_object_descriptor:
+ value = build_int_2 (2, 0);
+ }
TREE_TYPE (value) = type_for_mode (ptr_mode, 1);
return value;