This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] Add verify_sese
- From: Richard Biener <richard dot guenther at gmail dot com>
- To: Tom de Vries <Tom_deVries at mentor dot com>
- Cc: GCC Patches <gcc-patches at gcc dot gnu dot org>
- Date: Tue, 25 Nov 2014 10:28:41 +0100
- Subject: Re: [PATCH] Add verify_sese
- Authentication-results: sourceware.org; auth=none
- References: <5473C6BD dot 6080108 at mentor dot com>
On Tue, Nov 25, 2014 at 1:01 AM, Tom de Vries <Tom_deVries@mentor.com> wrote:
> Richard,
>
> I ran into a problem with my oacc kernels directive patch series where
> tail-merge added another entry into a region that was previously
> single-entry-single-exit.
>
> That resulted in hitting this assert in calc_dfs_tree:
> ...
> /* This aborts e.g. when there is _no_ path from ENTRY to EXIT at all. */
> gcc_assert (di->nodes == (unsigned int) n_basic_blocks_for_fn (cfun) - 1);
> ...
> during a call to move_sese_region_to_fn.
>
> This patch makes sure that we abort earlier, with a clearer message of what
> is actually wrong.
>
> Bootstrapped and reg-tested on x86_64.
>
> OK for trunk/stage3?
I believe someone made the function work for SEME regions and I believe
it is actually used to copy loops with multiple exits so I don't see how the
patch can work in these cases?
Thanks,
Richard.
> Thanks,
> - Tom