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: Ulrich Weigand <uweigand at de dot ibm dot com>
- Cc: gcc-patches at gcc dot gnu dot org, vogt at linux dot vnet dot ibm dot com
- Date: Mon, 30 Nov 2015 18:47:53 +0100
- Subject: Re: S/390: Fix warnings in "*setmem_long..." patterns.
- Authentication-results: sourceware.org; auth=none
- References: <20151130171133 dot DCB63F8BD at oc7340732750 dot ibm dot com>
On 11/30/2015 06:11 PM, Ulrich Weigand wrote:
...
> However, I agree that UNSPEC_P_TO_BLK really should also get the length
> as input, to make it have precisely defined semantics. Also, I'd rather
> use a more descriptive name, like UNSPEC_REPLICATE_BYTE or the like.
>
> What would you think about something like the following?
>
> (define_insn "*setmem_long"
> [(clobber (match_operand:<DBL> 0 "register_operand" "=d"))
> (set (mem:BLK (subreg:P (match_operand:<DBL> 3 "register_operand" "0") 0))
> (unspec:BLK [(match_operand:P 2 "shift_count_or_setmem_operand" "Y")
> (subreg:P (match_dup 3) 1)] UNSPEC_REPLICATE_BYTE))
> (use (match_operand:<DBL> 1 "register_operand" "d"))
> (clobber (reg:CC CC_REGNUM))]
Fine with me. Thanks!
Bye,
-Andreas-