From 8c74fb06c66b569a26f93c0d569d4437fdcfd415 Mon Sep 17 00:00:00 2001 From: Richard Sandiford Date: Fri, 27 Apr 2007 11:39:47 +0000 Subject: reload.h (elimination_target_reg_p): Declare. gcc/ * reload.h (elimination_target_reg_p): Declare. * reload.c (find_reloads): Don't apply the reg_rtx move optimization if the SET_DEST satisfies elimination_target_reg_p. * reload1.c (elimination_target_reg_p): New function. (gen_reload): In the move/add2 fallback, make sure that op0 does not overlap the destination register. From-SVN: r124215 --- gcc/reload.h | 1 + 1 file changed, 1 insertion(+) (limited to 'gcc/reload.h') diff --git a/gcc/reload.h b/gcc/reload.h index 6de5e847..38d340f 100644 --- a/gcc/reload.h +++ b/gcc/reload.h @@ -342,6 +342,7 @@ extern void mark_home_live (int); /* Scan X and replace any eliminable registers (such as fp) with a replacement (such as sp), plus an offset. */ extern rtx eliminate_regs (rtx, enum machine_mode, rtx); +extern bool elimination_target_reg_p (rtx); /* Deallocate the reload register used by reload number R. */ extern void deallocate_reload_reg (int r); -- cgit v1.1