aboutsummaryrefslogtreecommitdiff
path: root/gcc/rtl.h
diff options
context:
space:
mode:
authorJosef Zlomek <zlomekj@suse.cz>2003-03-10 18:23:44 +0100
committerJosef Zlomek <zlomek@gcc.gnu.org>2003-03-10 17:23:44 +0000
commit398111844b4a03cfde294c14f1f88fa9019cfa76 (patch)
treec021b1d48b4b4d70f51f21e7f890c0254cf6de10 /gcc/rtl.h
parent8f474219ec2322556328a1d10e7b6cebed055b78 (diff)
downloadgcc-398111844b4a03cfde294c14f1f88fa9019cfa76.zip
gcc-398111844b4a03cfde294c14f1f88fa9019cfa76.tar.gz
gcc-398111844b4a03cfde294c14f1f88fa9019cfa76.tar.bz2
cfgcleanup.c (outgoing_edges_match): Compare the jump tables.
* cfgcleanup.c (outgoing_edges_match): Compare the jump tables. (try_crossjump_to_edge): Replace refereces to one jump table by references to identical jump table. * loop.c (load_mems): Moved setting the JUMP_LABEL to replace_label. (replace_label): Moved to rtlanal.c. (struct rtx_pair): Moved to rtl.h. * rtl.h (struct rtx_pair): Moved from loop.c. (replace_label): New extern function. (subrtx_p): New extern function. (tablejump_p): New extern function. * rtlanal.c (replace_label): Moved from loop.c. (subrtx_p_1): New static function. (subrtx_p): New function. (tablejump_p): New function. From-SVN: r64096
Diffstat (limited to 'gcc/rtl.h')
-rw-r--r--gcc/rtl.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/gcc/rtl.h b/gcc/rtl.h
index 89f554d..1076cf5 100644
--- a/gcc/rtl.h
+++ b/gcc/rtl.h
@@ -1595,6 +1595,13 @@ extern rtx set_unique_reg_note PARAMS ((rtx, enum reg_note, rtx));
: NULL_RTX)
#define single_set_1(I) single_set_2 (I, PATTERN (I))
+/* Structure used for passing data to REPLACE_LABEL. */
+typedef struct rtx_pair
+{
+ rtx r1;
+ rtx r2;
+} rtx_pair;
+
extern int rtx_addr_can_trap_p PARAMS ((rtx));
extern bool nonzero_address_p PARAMS ((rtx));
extern int rtx_unstable_p PARAMS ((rtx));
@@ -1654,6 +1661,9 @@ extern int inequality_comparisons_p PARAMS ((rtx));
extern rtx replace_rtx PARAMS ((rtx, rtx, rtx));
extern rtx replace_regs PARAMS ((rtx, rtx *, unsigned int,
int));
+extern int replace_label PARAMS ((rtx *, void *));
+extern int subrtx_p PARAMS ((rtx, rtx));
+extern bool tablejump_p PARAMS ((rtx, rtx *, rtx *));
extern int computed_jump_p PARAMS ((rtx));
typedef int (*rtx_function) PARAMS ((rtx *, void *));
extern int for_each_rtx PARAMS ((rtx *, rtx_function, void *));