gcc/gcc6-pr70404.patch

18 lines
596 B
Diff
Raw Normal View History

2016-03-31 13:48:14 +00:00
2016-03-31 Jakub Jelinek <jakub@redhat.com>
PR target/70404
* config/s390/s390.c (s390_expand_insv): Force src to REG
if not nonimmediate_operand.
--- gcc/config/s390/s390.c.jj 2016-03-11 17:37:38.000000000 +0100
+++ gcc/config/s390/s390.c 2016-03-31 10:32:26.424442770 +0200
@@ -6083,6 +6083,8 @@ s390_expand_insv (rtx dest, rtx op1, rtx
src = force_reg (mode_s, src);
src = gen_lowpart (mode, src);
}
+ else if (!nonimmediate_operand (src, mode))
+ src = force_reg (mode, src);
op = gen_rtx_ZERO_EXTRACT (mode, dest, op1, op2),
op = gen_rtx_SET (op, src);