PR middle-end/81657
commit2178179991b3d89f790f89a74a38b2e0047114e0
authorjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 13 Apr 2018 08:35:32 +0000 (13 08:35 +0000)
committerjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 13 Apr 2018 08:35:32 +0000 (13 08:35 +0000)
tree2c2fff0f0c8d64c99dc10974991256116f113a2f
parentb60bff0002efa78952687eb7ad259c295197d9a1
PR middle-end/81657
* expr.h (enum block_op_methods): Add BLOCK_OP_NO_LIBCALL_RET.
* expr.c (emit_block_move_hints): Handle BLOCK_OP_NO_LIBCALL_RET.
* builtins.c (expand_builtin_memory_copy_args): Use
BLOCK_OP_NO_LIBCALL_RET method for mempcpy with non-ignored target,
handle dest_addr == pc_rtx.

* gcc.dg/string-opt-1.c: Remove bogus comment.  Expect a mempcpy
call.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@259366 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/builtins.c
gcc/expr.c
gcc/expr.h
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/string-opt-1.c