RFR(XS): 8026959: assert(!n->pinned() || n->is_MachConstantBase()) failed: only pinned MachConstantBase node is expected here

Rickard Bäckman rickard.backman at oracle.com
Tue Oct 22 00:48:41 PDT 2013


Roland, thanks for the review.

On 10/22, Roland Westrelin wrote:
> > diff --git a/src/share/vm/opto/compile.cpp b/src/share/vm/opto/compile.cpp
> > --- a/src/share/vm/opto/compile.cpp
> > +++ b/src/share/vm/opto/compile.cpp
> > @@ -3004,6 +3004,10 @@
> >       if (result != NULL) {
> >         for (DUIterator_Fast jmax, j = result->fast_outs(jmax); j < jmax; j++) {
> >           Node* out = result->fast_out(j);
> > +          // Phi nodes shouldn't be moved. They would only match below if they
> > +          // had the same control as the MathExactNode. The only time that
> > +          // would happen is if the Phi is also an input to the MathExact
> > +          if (!out->is_Phi()) {
> >           if (out->in(0) == NULL) {
> >             out->set_req(0, non_throwing);
> >           } else if (out->in(0) == ctrl) {
> > @@ -3012,6 +3016,7 @@
> >         }
> >       }
> >     }
> > +    }
> >     break;
> >   default:
> >     assert( !n->is_Call(), "" );
> 
> That looks good to me.
> 
> Roland.
/R


More information about the hotspot-compiler-dev mailing list