aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnatoly Sokolov <aesok@post.ru>2011-02-15 00:31:41 +0300
committerAnatoly Sokolov <aesok@gcc.gnu.org>2011-02-15 00:31:41 +0300
commitb09c308168b572a21c7b540117358f3e2b470ce5 (patch)
tree085736575e9329917583932b235566276d2913fe
parentd634083bd4b4d5ca55b47c3a5f17083e0fba61f3 (diff)
downloadgcc-b09c308168b572a21c7b540117358f3e2b470ce5.zip
gcc-b09c308168b572a21c7b540117358f3e2b470ce5.tar.gz
gcc-b09c308168b572a21c7b540117358f3e2b470ce5.tar.bz2
rx.h (GO_IF_MODE_DEPENDENT_ADDRESS): Remove.
* config/rx/rx.h (GO_IF_MODE_DEPENDENT_ADDRESS): Remove. * config/rx/rx-protos.h (rx_is_mode_dependent_addr): Remove. * config/xtensa/xtensa.c (rx_is_mode_dependent_addr): Rename to... (rx_mode_dependent_address_p): ...this. Make static. Change argument type to const_rtx. (TARGET_MODE_DEPENDENT_ADDRESS_P): Define. From-SVN: r170154
-rw-r--r--gcc/ChangeLog9
-rw-r--r--gcc/config/rx/rx-protos.h3
-rw-r--r--gcc/config/rx/rx.c9
-rw-r--r--gcc/config/rx/rx.h10
4 files changed, 18 insertions, 13 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 1b19140..0814cc8 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,12 @@
+2011-02-14 Anatoly Sokolov <aesok@post.ru>
+
+ * config/rx/rx.h (GO_IF_MODE_DEPENDENT_ADDRESS): Remove.
+ * config/rx/rx-protos.h (rx_is_mode_dependent_addr): Remove.
+ * config/xtensa/xtensa.c (rx_is_mode_dependent_addr): Rename to...
+ (rx_mode_dependent_address_p): ...this. Make static. Change argument
+ type to const_rtx.
+ (TARGET_MODE_DEPENDENT_ADDRESS_P): Define.
+
2011-02-14 Nathan Froyd <froydnj@codesourcery.com>
* config/stormy16/constraints.md: New file.
diff --git a/gcc/config/rx/rx-protos.h b/gcc/config/rx/rx-protos.h
index ad97c59..a6ae416 100644
--- a/gcc/config/rx/rx-protos.h
+++ b/gcc/config/rx/rx-protos.h
@@ -1,5 +1,5 @@
/* Exported function prototypes from the Renesas RX backend.
- Copyright (C) 2008, 2009, 2010 Free Software Foundation, Inc.
+ Copyright (C) 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
Contributed by Red Hat.
This file is part of GCC.
@@ -35,7 +35,6 @@ extern void rx_emit_stack_pushm (rtx *);
extern void rx_expand_epilogue (bool);
extern char * rx_gen_move_template (rtx *, bool);
extern bool rx_is_legitimate_constant (rtx);
-extern bool rx_is_mode_dependent_addr (rtx);
extern bool rx_is_restricted_memory_address (rtx, Mmode);
extern void rx_notice_update_cc (rtx body, rtx insn);
extern void rx_split_cbranch (Mmode, Rcode, rtx, rtx, rtx);
diff --git a/gcc/config/rx/rx.c b/gcc/config/rx/rx.c
index e01f453..6b179e7 100644
--- a/gcc/config/rx/rx.c
+++ b/gcc/config/rx/rx.c
@@ -199,8 +199,10 @@ rx_is_restricted_memory_address (rtx mem, enum machine_mode mode)
}
}
-bool
-rx_is_mode_dependent_addr (rtx addr)
+/* Implement TARGET_MODE_DEPENDENT_ADDRESS_P. */
+
+static bool
+rx_mode_dependent_address_p (const_rtx addr)
{
if (GET_CODE (addr) == CONST)
addr = XEXP (addr, 0);
@@ -2774,6 +2776,9 @@ rx_match_ccmode (rtx insn, enum machine_mode cc_mode)
#undef TARGET_LEGITIMATE_ADDRESS_P
#define TARGET_LEGITIMATE_ADDRESS_P rx_is_legitimate_address
+#undef TARGET_MODE_DEPENDENT_ADDRESS_P
+#define TARGET_MODE_DEPENDENT_ADDRESS_P rx_mode_dependent_address_p
+
#undef TARGET_ALLOCATE_STACK_SLOTS_FOR_ARGS
#define TARGET_ALLOCATE_STACK_SLOTS_FOR_ARGS rx_allocate_stack_slots_for_args
diff --git a/gcc/config/rx/rx.h b/gcc/config/rx/rx.h
index 7acd3ce..99d0106 100644
--- a/gcc/config/rx/rx.h
+++ b/gcc/config/rx/rx.h
@@ -1,5 +1,5 @@
/* GCC backend definitions for the Renesas RX processor.
- Copyright (C) 2008, 2009, 2010 Free Software Foundation, Inc.
+ Copyright (C) 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
Contributed by Red Hat.
This file is part of GCC.
@@ -288,14 +288,6 @@ enum reg_class
( (REG_P (X) \
|| (GET_CODE (X) == SUBREG \
&& REG_P (SUBREG_REG (X))))))
-
-#define GO_IF_MODE_DEPENDENT_ADDRESS(ADDR, LABEL) \
- do \
- { \
- if (rx_is_mode_dependent_addr (ADDR)) \
- goto LABEL; \
- } \
- while (0)
#define RETURN_ADDR_RTX(COUNT, FRAMEADDR) \