Commit d405dc23 by Bernd Edlinger Committed by Bernd Edlinger

arm.c (arm_block_set_aligned_non_vect): Use gen_unaligned_storedi for 4-byte aligned addresses.

2019-09-07  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        * config/arm/arm.c (arm_block_set_aligned_non_vect): Use
        gen_unaligned_storedi for 4-byte aligned addresses.

testsuite:
2019-09-07  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        * gcc.target/arm/pr91684.c: New test.

From-SVN: r275483
parent 73974885
2019-09-07 Bernd Edlinger <bernd.edlinger@hotmail.de>
* config/arm/arm.c (arm_block_set_aligned_non_vect): Use
gen_unaligned_storedi for 4-byte aligned addresses.
2019-09-06 Jim Wilson <jimw@sifive.com>
* config/riscv/riscv.c (riscv_option_override): Revert 2019-08-30
......
......@@ -30352,7 +30352,10 @@ arm_block_set_aligned_non_vect (rtx dstbase,
{
addr = plus_constant (Pmode, dst, i);
mem = adjust_automodify_address (dstbase, DImode, addr, i);
emit_move_insn (mem, reg);
if (MEM_ALIGN (mem) >= 2 * BITS_PER_WORD)
emit_move_insn (mem, reg);
else
emit_insn (gen_unaligned_storedi (mem, reg));
}
}
else
......
2019-09-07 Bernd Edlinger <bernd.edlinger@hotmail.de>
* gcc.target/arm/pr91684.c: New test.
2019-09-06 Ian Lance Taylor <iant@golang.org>
* go.test/test/fixedbugs/bug369.go: Update to match libgo update
......
/* { dg-do compile } */
/* { dg-require-effective-target arm_ldrd_strd_ok } */
/* { dg-options "-O3" } */
typedef struct { int a, b, c; } S;
void g (S *s);
void bug1 (void)
{
S s;
__builtin_memset (&s, 0, sizeof (S));
g (&s);
}
/* { dg-final { scan-assembler-times "strd" 1 } } */
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment