This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH, ifcvt] Allow CC mode if HAVE_cbranchcc4
- From: Andreas Schwab <schwab at suse dot de>
- To: "Zhenqiang Chen" <zhenqiang dot chen at arm dot com>
- Cc: "'Richard Henderson'" <rth at redhat dot com>, <gcc-patches at gcc dot gnu dot org>
- Date: Mon, 03 Nov 2014 11:15:06 +0100
- Subject: Re: [PATCH, ifcvt] Allow CC mode if HAVE_cbranchcc4
- Authentication-results: sourceware.org; auth=none
- References: <000001cff363$0322adf0$096809d0$ at arm dot com>
"Zhenqiang Chen" <zhenqiang.chen@arm.com> writes:
> diff --git a/gcc/ifcvt.c b/gcc/ifcvt.c
> index a28f5c1..5cd0ac0 100644
> --- a/gcc/ifcvt.c
> +++ b/gcc/ifcvt.c
> @@ -1441,10 +1441,17 @@ noce_emit_cmove (struct noce_if_info *if_info, rtx
> x, enum rtx_code code,
> end_sequence ();
> }
>
> - /* Don't even try if the comparison operands are weird. */
> + /* Don't even try if the comparison operands are weird
> + except that the target supports cbranchcc4. */
> if (! general_operand (cmp_a, GET_MODE (cmp_a))
> || ! general_operand (cmp_b, GET_MODE (cmp_b)))
> - return NULL_RTX;
> + {
> +#if HAVE_cbranchcc4
You need to make that a runtime check.
#ifdef HAVE_cbranchcc4
if (HAVE_cbranchcc4)
Andreas.
--
Andreas Schwab, SUSE Labs, schwab@suse.de
GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE 1748 E4D4 88E3 0EEA B9D7
"And now for something completely different."