re PR rtl-optimization/84614 (wrong code with u16->u128 extension at aarch64 -fno...
authorJakub Jelinek <jakub@redhat.com>
Fri, 2 Mar 2018 09:16:50 +0000 (10:16 +0100)
committerJakub Jelinek <jakub@gcc.gnu.org>
Fri, 2 Mar 2018 09:16:50 +0000 (10:16 +0100)
commitec2d71214f90e21675a5abbe5b532273f7b11ded
tree3d15c0641b451c63150370c5e946ac77cb1d82d3
parentbe86d201598e3b653acc6db1542b0c799c401e09
re PR rtl-optimization/84614 (wrong code with u16->u128 extension at aarch64 -fno-split-wide-types -g3 --param=max-combine-insns=3)

PR target/84614
* rtl.h (prev_real_nondebug_insn, next_real_nondebug_insn): New
prototypes.
* emit-rtl.c (next_real_insn, prev_real_insn): Fix up function
comments.
(next_real_nondebug_insn, prev_real_nondebug_insn): New functions.
* cfgcleanup.c (try_head_merge_bb): Use prev_real_nondebug_insn
instead of a loop around prev_real_insn.
* combine.c (move_deaths): Use prev_real_nondebug_insn instead of
prev_real_insn.

* gcc.dg/pr84614.c: New test.

From-SVN: r258129
gcc/ChangeLog
gcc/cfgcleanup.c
gcc/combine.c
gcc/emit-rtl.c
gcc/rtl.h
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/pr84614.c [new file with mode: 0644]