This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[DATAFLOW] Handle PRE_MODIFY addresses in lwa_operand


	The dataflow branch's improvements to auto-increment addressing
adds support for PRE_MODIFY addresses on PowerPC.  The architecture does
not support the constant form of update for sign-extended loads.  The
predicate for the pattern was missing the PRE_MODIFY case and the appended
patch adds that support.

Bootstrapped on powerpc64-linux and committed to dataflow branch.

David

	* config/rs6000/predicates.md (lwa_operand): Exclude PRE_MODIFY
	addresses.

Index: predicates.md
===================================================================
--- predicates.md       (revision 119620)
+++ predicates.md       (working copy)
@@ -652,6 +652,7 @@
     || (memory_operand (inner, mode)
        && GET_CODE (XEXP (inner, 0)) != PRE_INC
        && GET_CODE (XEXP (inner, 0)) != PRE_DEC
+       && GET_CODE (XEXP (inner, 0)) != PRE_MODIFY
        && (GET_CODE (XEXP (inner, 0)) != PLUS
            || GET_CODE (XEXP (XEXP (inner, 0), 1)) != CONST_INT
            || INTVAL (XEXP (XEXP (inner, 0), 1)) % 4 == 0));


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]