This is the mail archive of the
mailing list for the GCC project.
Re: [GSoC] outer-if expressions
- From: Richard Biener <richard dot guenther at gmail dot com>
- To: Prathamesh Kulkarni <bilbotheelffriend at gmail dot com>
- Cc: Diego Novillo <dnovillo at google dot com>, gcc <gcc at gcc dot gnu dot org>, Maxim Kuvyrkov <maxim dot kuvyrkov at linaro dot org>
- Date: Mon, 28 Jul 2014 12:00:26 +0200
- Subject: Re: [GSoC] outer-if expressions
- Authentication-results: sourceware.org; auth=none
- References: <CAJXstsCUjPfzoLo1V8dL15Nmm8r6+UH4+cFVGy46O_N7DE3AHg at mail dot gmail dot com>
On Sat, Jul 26, 2014 at 11:20 PM, Prathamesh Kulkarni
> This patch adds support for outer-if expressions.
> Couple of issues:
> a) Doesn't interop with for-pattern, since we don't replace identifier
> in c-expr yet,
> and this gets more complicated with addition of outer-if.
Does it? Well, we'll see.
> b) I removed ifexpr-locations for now. I am not sure where to output
> if-expr locations
> when there are multiple if-exprs (one outer and one inner).
I'd say we'd use multiple locations, thus record a vector of
if-expr, location tuples.
> * genmatch.c (simplify::ifexpr): Remove.
> (simplify::ifexpr_location): Likewise.
> (simplify::simplify): Adjust to changes in simplify and
> add parameter ifexpr_vec_.
> (dt_simplify::gen_gimple): Adjust to changes in simplify.
> (dt_simplify::gen_generic): Likewise.
> (parse_if): New function.
> (parse_pattern): Add call to parse_if.
> * match.pd: Use outer-if for plus-minus patterns.