This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: [tree-ssa] Switch stmts and inserting on edges
- From: Jason Merrill <jason at redhat dot com>
- To: law at redhat dot com
- Cc: Diego Novillo <dnovillo at redhat dot com>, Andrew Macleod <amacleod at redhat dot com>, gcc mailing list <gcc at gcc dot gnu dot org>
- Date: Fri, 30 May 2003 17:13:40 -0400
- Subject: Re: [tree-ssa] Switch stmts and inserting on edges
- References: <200305301925.h4UJPvPY019210@speedy.slc.redhat.com>
On Fri, 30 May 2003 13:25:57 -0600, law@redhat.com wrote:
> In message <wvlvfvs1bwb.fsf@prospero.boston.redhat.com>, Jason Merrill writes:
> >On 30 May 2003 14:46:47 -0400, Diego Novillo <dnovillo@redhat.com> wrote:
> >
> >> On Fri, 2003-05-30 at 11:23, Andrew MacLeod wrote:
> >>
> >>> Any other suggestions? I havent thought of anything I actually like....
> >>>
> >> The problem is that SWITCH_EXPRs still have implicit semantics that are
> >> getting in the way. I think this ought to be fixed by finishing Jason's
> >> patch to expose SWITCH_EXPRs as explicit multi-way branches, or even
> >> decision trees.
> >
> >Agreed.
> Similarly for the backedge in loops.
If we need to represent these explicitly, it leads me to wonder again why
we're retaining the control flow structures at all.
Andrew: With the current situation, you can move the target of a particular
switch case by moving the CASE_LABEL_EXPR into the new block.
Jason