aboutsummaryrefslogtreecommitdiff
path: root/gcc/reload.c
diff options
context:
space:
mode:
authorHans-Peter Nilsson <hp@axis.com>2005-11-19 21:56:17 +0000
committerHans-Peter Nilsson <hp@gcc.gnu.org>2005-11-19 21:56:17 +0000
commitff0d9879ab0f30316f394523dfa3a1cb94a33a39 (patch)
treea4c70facc1afd964e0a764c2ee6dc7d1a06b87d7 /gcc/reload.c
parent152f76ec3df4c21d3ffe641728cad33336912d8f (diff)
downloadgcc-ff0d9879ab0f30316f394523dfa3a1cb94a33a39.zip
gcc-ff0d9879ab0f30316f394523dfa3a1cb94a33a39.tar.gz
gcc-ff0d9879ab0f30316f394523dfa3a1cb94a33a39.tar.bz2
re PR middle-end/24912 (m68k build failure: ICE: in reload_cse_simplify_operands)
PR middle-end/24912 PR middle-end/24750 * reload.c (find_reloads_address_1): Mention dependency on gen_reload. * reload1.c (gen_reload): For IN with an unary operation, try moving inner expression to OUT if trivial SET is not valid. Confirm that the result is valid. Move common code block into... (emit_insn_if_valid_for_reload): New function. From-SVN: r107231
Diffstat (limited to 'gcc/reload.c')
-rw-r--r--gcc/reload.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/gcc/reload.c b/gcc/reload.c
index 0503f5a..ed8aca5 100644
--- a/gcc/reload.c
+++ b/gcc/reload.c
@@ -5311,7 +5311,9 @@ update_auto_inc_notes (rtx insn ATTRIBUTE_UNUSED, int regno ATTRIBUTE_UNUSED,
occurs as part of an address.
Also, this is not fully machine-customizable; it works for machines
such as VAXen and 68000's and 32000's, but other possible machines
- could have addressing modes that this does not handle right. */
+ could have addressing modes that this does not handle right.
+ If you add push_reload calls here, you need to make sure gen_reload
+ handles those cases gracefully. */
static int
find_reloads_address_1 (enum machine_mode mode, rtx x, int context,