Hi. One obvious thinko I did when I convert the endp into a new enum. The patch survives tests and bootstrap on x86_64-linux-gnu and fixes the ICE in s390x bootstrap. I'm going to install it.
Martin gcc/ChangeLog: 2018-11-29 Martin Liska <mli...@suse.cz> PR middle-end/88246 * builtins.c (expand_movstr): Fix thinko introduced when switching to the new enum. --- gcc/builtins.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/gcc/builtins.c b/gcc/builtins.c index dcac49d8be1..537228cf3be 100644 --- a/gcc/builtins.c +++ b/gcc/builtins.c @@ -3931,7 +3931,7 @@ expand_movstr (tree dest, tree src, rtx target, memop_ret retmode) dest_mem = get_memory_rtx (dest, NULL); src_mem = get_memory_rtx (src, NULL); - if (retmode != RETURN_BEGIN) + if (retmode == RETURN_BEGIN) { target = force_reg (Pmode, XEXP (dest_mem, 0)); dest_mem = replace_equiv_address (dest_mem, target);