aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/java/ChangeLog6
-rw-r--r--gcc/java/expr.c1
-rw-r--r--gcc/java/java-tree.h10
3 files changed, 9 insertions, 8 deletions
diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog
index e140a52..9e83445 100644
--- a/gcc/java/ChangeLog
+++ b/gcc/java/ChangeLog
@@ -1,3 +1,9 @@
+2002-04-23 Per Bothner <per@bothner.com>
+
+ * expr.c (PRE_JSR): Call NOTE_LABEL for return address.
+ * java-tree.h (BCODE_RETURN_TARGET): Removed - never set.
+ (BCODE_TARGET): Remove BCODE_RETURN_TARGET.
+
2002-04-23 Tom Tromey <tromey@redhat.com>
For PR java/6314:
diff --git a/gcc/java/expr.c b/gcc/java/expr.c
index dd736c7..f17fef8 100644
--- a/gcc/java/expr.c
+++ b/gcc/java/expr.c
@@ -2774,6 +2774,7 @@ note_instructions (jcf, method)
if (!saw_index) NOTE_LABEL(oldpc + INT_temp);
#define PRE_JSR(OPERAND_TYPE, OPERAND_VALUE) \
saw_index = 0; INT_temp = (OPERAND_VALUE); \
+ NOTE_LABEL (PC); \
if (!saw_index) NOTE_LABEL(oldpc + INT_temp);
#define PRE_RET(OPERAND_TYPE, OPERAND_VALUE) (void)(OPERAND_VALUE)
diff --git a/gcc/java/java-tree.h b/gcc/java/java-tree.h
index 84a2afb..d6d698c 100644
--- a/gcc/java/java-tree.h
+++ b/gcc/java/java-tree.h
@@ -1343,20 +1343,14 @@ extern char *instruction_bits;
/* True iff the byte is the start of an instruction. */
#define BCODE_INSTRUCTION_START 1
-/* True iff there is a jump to this location. */
+/* True iff there is a jump or a return to this location. */
#define BCODE_JUMP_TARGET 2
-/* True iff there is a return to this location.
- (I.e. the preceding instruction was a call.) */
-#define BCODE_RETURN_TARGET 4
-
/* True iff this is the start of an exception handler. */
#define BCODE_EXCEPTION_TARGET 16
/* True iff there is a jump to this location (and it needs a label). */
-#define BCODE_TARGET \
- (BCODE_JUMP_TARGET|BCODE_RETURN_TARGET \
- | BCODE_EXCEPTION_TARGET)
+#define BCODE_TARGET (BCODE_JUMP_TARGET| BCODE_EXCEPTION_TARGET)
/* True iff there is an entry in the linenumber table for this location. */
#define BCODE_HAS_LINENUMBER 32