On Tue, Aug 04, 2015 at 16:07:42 +0200, Richard Biener wrote:
> On Tue, Aug 4, 2015 at 3:06 PM, Ilya Verbin <iver...@gmail.com> wrote:
> > On Tue, Aug 04, 2015 at 14:35:11 +0200, Thomas Schwinge wrote:
> >> On Fri, 31 Jul 2015 20:13:02 +0300, Ilya Verbin <iver...@gmail.com> wrote:
> >> > On Fri, Jul 31, 2015 at 18:59:59 +0200, Jakub Jelinek wrote:
> >> > > > > On Wed, Feb 18, 2015 at 11:00:35 +0100, Jakub Jelinek wrote:
> >> > > > > +      /* First search just the GET_CLASS_NARROWEST_MODE to wider 
> >> > > > > modes,
> >> > > > > +      if not found, fallback to all modes.  */
> >> > > > > +      int pass;
> >> > > > > +      for (pass = 0; pass < 2; pass++)
> >> > > > > +     for (machine_mode mr = pass ? VOIDmode
> >> > > > > +                                 : GET_CLASS_NARROWEST_MODE 
> >> > > > > (mclass);
> >> > > > > +          pass ? mr < MAX_MACHINE_MODE : mr != VOIDmode;
> >> > > > > +          pass ? mr = (machine_mode) (m + 1)
> >> > > > > +               : mr = GET_MODE_WIDER_MODE (mr))
> >> > > > > +       if (GET_MODE_CLASS (mr) != mclass
> >> > > > > +           || GET_MODE_SIZE (mr) != size
> >> > > > > +           || GET_MODE_PRECISION (mr) != prec
> >> > > > > +           || GET_MODE_INNER (mr) != inner
> >> > > > > +           || GET_MODE_IBIT (mr) != ibit
> >> > > > > +           || GET_MODE_FBIT (mr) != fbit
> >> > > > > +           || GET_MODE_NUNITS (mr) != nunits)
> >> > > > > +         continue;
> >> > > > >
> >> > > > > Given that gomp-4_1-branch works ok, the problem was introduced 
> >> > > > > somewhere
> >> > > > > between 9 and 31 Jul.  I'll try to find the revision.
> >> > > >
> >> > > > Shouldn't 'mr' be here instead of 'm'?
> >> > >
> >> > > I think so.  If it works, patch preapproved.
> 
> ^^^
> 
> looks like an obvious error anyway.
> 
> Richard.

Yeah, but the fix for this typo doesn't really help, since it exposes another
error in this function.

vvv

> >> > It fixes the infinite loop, but causes an error:
> >> > lto1: fatal error: unsupported mode QI
> >>
> >> Confirmed.
> >>
> >> > > But wonder what changed that we haven't been triggering it before.
> >> > > What mode do you think it on (mclass/size/prec/inner/ibit/fbit/nunits)?
> >> >
> >> > When in hangs, mr is HImode.
> >>
> >> Do you already have any further analysis, a workaround, or even a fix?
> >
> > Not yet.  I thought since Jakub is the author of this function, he could 
> > easily
> > point what is wrong here :)  Actually, intelmic doesn't require
> > lto_input_mode_table, so temporary workaround is just to disable it.

  -- Ilya

Reply via email to