diff -r e90521d61f9a -r 03b336640699 src/share/vm/opto/type.hpp --- a/src/share/vm/opto/type.hpp Wed Oct 07 12:43:50 2009 -0700 +++ b/src/share/vm/opto/type.hpp Wed Oct 07 15:38:37 2009 -0700 @@ -168,7 +168,7 @@ // MEET operation; lower in lattice. const Type *meet( const Type *t ) const; // WIDEN: 'widens' for Ints and other range types - virtual const Type *widen( const Type *old ) const { return this; } + virtual const Type *widen( const Type *old, const Type* limit ) const { return this; } // NARROW: complement for widen, used by pessimistic phases virtual const Type *narrow( const Type *old ) const { return this; } @@ -409,7 +409,7 @@ virtual const Type *xmeet( const Type *t ) const; virtual const Type *xdual() const; // Compute dual right now. - virtual const Type *widen( const Type *t ) const; + virtual const Type *widen( const Type *t, const Type* limit_type ) const; virtual const Type *narrow( const Type *t ) const; // Do not kill _widen bits. virtual const Type *filter( const Type *kills ) const; @@ -465,7 +465,7 @@ virtual const Type *xmeet( const Type *t ) const; virtual const Type *xdual() const; // Compute dual right now. - virtual const Type *widen( const Type *t ) const; + virtual const Type *widen( const Type *t, const Type* limit_type ) const; virtual const Type *narrow( const Type *t ) const; // Do not kill _widen bits. virtual const Type *filter( const Type *kills ) const;