I managed to get the last obvious fix wrong: mode is M1, GET_MODE (op)
is M2.  Checking this in as obvious fix (to the obvious fix).  Let's
hope it ends here.  Tested on powerpc64-linux and powerpc64le-linux.


Segher


2016-12-02  Segher Boessenkool  <seg...@kernel.crashing.org>

        * simplify-rtx.c (simplify_truncation): M2 is not mode, it is
        GET_MODE (op).  Fix this.

---
 gcc/simplify-rtx.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gcc/simplify-rtx.c b/gcc/simplify-rtx.c
index 7ed849f..165af23 100644
--- a/gcc/simplify-rtx.c
+++ b/gcc/simplify-rtx.c
@@ -752,7 +752,7 @@ simplify_truncation (machine_mode mode, rtx op,
      changing len.  */
   if ((GET_CODE (op) == ZERO_EXTRACT || GET_CODE (op) == SIGN_EXTRACT)
       && REG_P (XEXP (op, 0))
-      && GET_MODE (XEXP (op, 0)) == mode
+      && GET_MODE (XEXP (op, 0)) == GET_MODE (op)
       && CONST_INT_P (XEXP (op, 1))
       && CONST_INT_P (XEXP (op, 2)))
     {
-- 
1.9.3

Reply via email to