diff options
author | Tom Tromey <tromey@redhat.com> | 2007-08-17 15:19:39 +0000 |
---|---|---|
committer | Tom Tromey <tromey@gcc.gnu.org> | 2007-08-17 15:19:39 +0000 |
commit | 3d4e2766256df1da1986d4819ed1d184a7b1856b (patch) | |
tree | b4740b1c9b8809e0eb41a3c75d252ad2c54600a1 /gcc/java/java-tree.h | |
parent | 4bf6c438d2117f8473b36b84eb8bd44487631efa (diff) | |
download | gcc-3d4e2766256df1da1986d4819ed1d184a7b1856b.zip gcc-3d4e2766256df1da1986d4819ed1d184a7b1856b.tar.gz gcc-3d4e2766256df1da1986d4819ed1d184a7b1856b.tar.bz2 |
tree.h (struct tree_label_decl): Removed old "java" fields.
gcc:
* tree.h (struct tree_label_decl): Removed old "java" fields.
gcc/java:
* java-tree.h (LABEL_TYPE_STATE): Removed.
(load_type_state): Removed.
(LABEL_PC): Removed.
(LABEL_VERIFIED): Removed.
(type_states): Declare.
* expr.c (type_states): New global.
(load_type_state): Now static. Use type_states. Changed
argument.
(lookup_label): Don't set LABEL_PC.
(expand_byte_code): Don't use LABEL_VERIFIED.
(note_instructions): Initialize type_states.
* verify-glue.c (vfy_note_stack_depth): Rewrote.
(vfy_note_stack_type): Use type_states.
(vfy_note_local_type): Likewise.
From-SVN: r127587
Diffstat (limited to 'gcc/java/java-tree.h')
-rw-r--r-- | gcc/java/java-tree.h | 14 |
1 files changed, 3 insertions, 11 deletions
diff --git a/gcc/java/java-tree.h b/gcc/java/java-tree.h index 34fe5c0..29902de 100644 --- a/gcc/java/java-tree.h +++ b/gcc/java/java-tree.h @@ -771,16 +771,6 @@ union lang_tree_node FIELD_LOCAL_ALIAS. */ #define FIELD_THISN(DECL) DECL_LANG_FLAG_7 (VAR_OR_FIELD_CHECK (DECL)) -/* In a LABEL_DECL, a TREE_VEC that saves the type_map at that point. */ -#define LABEL_TYPE_STATE(NODE) (LABEL_DECL_CHECK (NODE)->label_decl.java_field_1) - -/* In a LABEL_DECL, the corresponding bytecode program counter. */ -#define LABEL_PC(NODE) (LABEL_DECL_CHECK (NODE)->label_decl.java_field_4) - -/* In a LABEL_DECL, true if we have verified instructions starting here. */ -#define LABEL_VERIFIED(NODE) \ - (instruction_bits[LABEL_PC (NODE)] & BCODE_VERIFIED) - /* The slot number for this local variable. */ #define DECL_LOCAL_SLOT_NUMBER(NODE) \ (DECL_LANG_SPECIFIC (NODE)->u.v.slot_number) @@ -1248,7 +1238,6 @@ extern void set_local_type (int, tree); extern int merge_type_state (tree); extern int push_type_0 (tree); extern void push_type (tree); -extern void load_type_state (tree); extern void add_interface (tree, tree); extern tree force_evaluation_order (tree); extern tree java_create_object (tree); @@ -1418,6 +1407,9 @@ extern void rewrite_reflection_indexes (void *); /* Use CLASS_LOADED_P? FIXME */ #define CLASS_COMPLETE_P(DECL) DECL_LANG_FLAG_2 (DECL) +/* A vector used to track type states for the current method. */ +extern VEC(tree, gc) *type_states; + /* This maps a bytecode offset (PC) to various flags, listed below (starting with BCODE_). */ extern char *instruction_bits; |