From e1fd916302dd72a2a4a054cf9f61db2721045011 Mon Sep 17 00:00:00 2001 From: Richard Sandiford Date: Thu, 4 May 2017 11:00:48 +0000 Subject: [PATCH] Remove bogus top-level ChangeLog commit (sorry!) From-SVN: r247587 --- ChangeLog | 4 ---- gcc/config/mips/mips.c | 11 ++++------- gcc/config/mips/mips.md | 5 +++++ gcc/testsuite/gcc.target/powerpc/ppc-pow.c | 1 - 4 files changed, 9 insertions(+), 12 deletions(-) diff --git a/ChangeLog b/ChangeLog index 6b547761ac5..6066ba6e82e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,7 +1,3 @@ -2017-05-03 Richard Sandiford - -Wrap tree-data-ref.h macro arguments - 2017-04-19 Thomas Koenig Tobias Burnus diff --git a/gcc/config/mips/mips.c b/gcc/config/mips/mips.c index 6bfd86a07af..84c36a87210 100644 --- a/gcc/config/mips/mips.c +++ b/gcc/config/mips/mips.c @@ -2590,7 +2590,7 @@ mips_stack_address_p (rtx x, machine_mode mode) return (mips_classify_address (&addr, x, mode, false) && addr.type == ADDRESS_REG - && addr.reg == stack_pointer_rtx); + && rtx_equal_p (addr.reg, stack_pointer_rtx)); } /* Return true if ADDR matches the pattern for the LWXS load scaled indexed @@ -6098,7 +6098,9 @@ mips_function_arg_boundary (machine_mode mode, const_tree type) { unsigned int alignment; - alignment = type ? TYPE_ALIGN (type) : GET_MODE_ALIGNMENT (mode); + alignment = type && mode == BLKmode + ? TYPE_ALIGN (TYPE_MAIN_VARIANT (type)) + : GET_MODE_ALIGNMENT (mode); if (alignment < PARM_BOUNDARY) alignment = PARM_BOUNDARY; if (alignment > STACK_BOUNDARY) @@ -8470,11 +8472,6 @@ and_operands_ok (machine_mode mode, rtx op1, rtx op2) if (memory_operand (op1, mode)) { - if (TARGET_MIPS16) { - struct mips_address_info addr; - if (!mips_classify_address (&addr, op1, mode, false)) - return false; - } return and_load_operand (op2, mode); } else diff --git a/gcc/config/mips/mips.md b/gcc/config/mips/mips.md index 28e0a444ba9..8efc48c2487 100644 --- a/gcc/config/mips/mips.md +++ b/gcc/config/mips/mips.md @@ -3306,7 +3306,12 @@ switch (which_alternative) { case 0: + fprintf (stderr, "-----\n"); + fprintf (stderr, "%d %d %d\n", satisfies_constraint_W (operands[1]), memory_operand (operands[1], SImode), stack_operand (operands[1], SImode)); + debug_rtx (operands[1]); + /* operands[1] = gen_lowpart (QImode, operands[1]); + */ return "lbu\t%0,%1"; case 1: operands[1] = gen_lowpart (HImode, operands[1]); diff --git a/gcc/testsuite/gcc.target/powerpc/ppc-pow.c b/gcc/testsuite/gcc.target/powerpc/ppc-pow.c index df8930d26fb..54565463ea7 100644 --- a/gcc/testsuite/gcc.target/powerpc/ppc-pow.c +++ b/gcc/testsuite/gcc.target/powerpc/ppc-pow.c @@ -3,7 +3,6 @@ /* Check for VSX here, even though we don't use VSX to eliminate SPE, PAIRED and other ppc floating point varients. However, we need to also eliminate Darwin, since it doesn't like -mcpu=power6. */ -/* { dg-require-effective-target powerpc_vsx_ok } */ /* { dg-skip-if "do not override -mcpu" { powerpc*-*-* } { "-mcpu=*" } { "-mcpu=power6" } } */ /* { dg-options "-O2 -ffast-math -mcpu=power6 -mno-vsx -mno-altivec" } */ /* { dg-final { scan-assembler-times "fsqrt" 3 } } */ -- 2.30.2