This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: S/390: Fix warnings in "*setmem_long..." patterns.
- From: Andreas Krebbel <krebbel at linux dot vnet dot ibm dot com>
- To: gcc-patches at gcc dot gnu dot org, Ulrich Weigand <Ulrich dot Weigand at de dot ibm dot com>, vogt at linux dot vnet dot ibm dot com
- Date: Wed, 2 Dec 2015 12:43:56 +0100
- Subject: Re: S/390: Fix warnings in "*setmem_long..." patterns.
- Authentication-results: sourceware.org; auth=none
- References: <565C741A dot 4020100 at linux dot vnet dot ibm dot com> <20151130171133 dot DCB63F8BD at oc7340732750 dot ibm dot com> <20151201095954 dot GA31318 at linux dot vnet dot ibm dot com> <20151201135404 dot GA27996 at linux dot vnet dot ibm dot com> <20151202101230 dot GA601 at linux dot vnet dot ibm dot com>
On 12/02/2015 11:12 AM, Dominik Vogt wrote:
> Hopefully, this is correct now; it does pass the functional test case
> that's part of the patch. Unfortunately the define_insn patters
> had to be duplicated because of the new subreg offsets.
The number of patterns could possibly be reduced using the define_subst machinery. I'm looking into
this for some other changes. No need to do this right now. We can do this later on-top.
> Not sure
> whether I've missed any "use" patterns that should be added.
With adding the length operand explicitly to the unspec we should have all the uses of the register
pair covered. To my understanding it is correct to remove these as done with your patch.
+ ; Convert Pmode to BLKmode
+ UNSPEC_REPLICATE_BYTE
The comment does not match.
+++ b/gcc/testsuite/gcc.target/s390/md/setmem_long-1.c
@@ -0,0 +1,64 @@
+/* Machine description pattern tests. */
+
+/* { dg-do run } */
+/* { dg-options "-mmvcle -dP" } */
...
+/* Check that the right patterns are used. */
+/* { dg-final { scan-assembler-times {c:12 .*{[*]setmem_long_[36][14]z?}} 1 } } */
+/* { dg-final { scan-assembler-times {c:17 .*{[*]setmem_long_[36][14]z?}} 1 } } */
Don't you need a --save-temps as part of the options?
Apart from these things the patch looks good to me now. I'll wait two days for other comments before
applying it (I can do the remaining changes while doing the commit.).
Thanks!
-Andreas-
>
> Ciao
>
> Dominik ^_^ ^_^
>