This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[PATCH,rs6000] fix up dataflow branch merge issue
- From: Nathan Froyd <froydnj at codesourcery dot com>
- To: gcc-patches at gcc dot gnu dot org
- Cc: dje at watson dot ibm dot com
- Date: Thu, 5 Jun 2008 08:27:17 -0700
- Subject: [PATCH,rs6000] fix up dataflow branch merge issue
The following patch:
2006-12-08 Mark Shinwell <shinwell@codesourcery.com>
* recog.c (mode_dependent_address_p): Identify pre-increment,
pre-decrement, post-increment and post-decrement addressing as always
being mode-dependent.
...lots backend changes
removed PRE_INC and PRE_DEC cases from rs6000_mode_dependent_address,
since those cases were pushed into recog. However, the dataflow branch
merge inadvertently restored those cases.
This change shouldn't cause any issues, as PRE_INC and PRE_DEC shouldn't
reach MODE_DEPENDENT_ADDRESS thanks to the above change. We should go
ahead and remove those cases so some poor soul doesn't spend ages trying
to figure out why the rs6000 backend does things differently from
everybody else, though. :) Fixed with the patch below.
Tested on powerpc-none-linux-gnuspe. OK to commit?
-Nathan
2008-06-05 Nathan Froyd <froydnj@codesourcery.com>
* config/rs6000/rs6000.c (rs6000_mode_dependent_address): Remove
PRE_INC and PRE_DEC cases.
Index: gcc/config/rs6000/rs6000.c
===================================================================
--- gcc/config/rs6000/rs6000.c (revision 136357)
+++ gcc/config/rs6000/rs6000.c (working copy)
@@ -4320,8 +4320,7 @@ rs6000_mode_dependent_address (rtx addr)
case LO_SUM:
return true;
- case PRE_INC:
- case PRE_DEC:
+ /* Auto-increment cases are now treated generically in recog.c. */
case PRE_MODIFY:
return TARGET_UPDATE;