RFR(S): 8009981: nashorn tests fail with -XX:+VerifyStack

Roland Westrelin roland.westrelin at oracle.com
Mon Mar 18 07:11:46 PDT 2013


Hi Chris,

Thanks for reviewing this.

> src/share/vm/runtime/deoptimization.cpp:
> 
> I'm confused by that code.  Does Bytecode_invoke invoke represent the instruction at cur_code?  If so you could replace:
> 
>  if (cur_code != Bytecodes::_invokestatic && cur_code != Bytecodes::_invokedynamic) {
> 
> by:
> 
>  if (invoke.has_receiver()) {

Yes, the two are the same. I'll make the change you suggest.

> src/share/vm/runtime/frame.cpp:
> 
>   void oops_do() {
>     if (_has_receiver) {
>       handle_oop_offset();
>       _offset++;
>     }
>     iterate_parameters();
> +    if (_has_appendix) {
> +      handle_oop_offset();
> +    }
>   }
> 
> Shouldn't there be an _offset++ after the appendix too?

There's nothing that comes after the appendix so I don't think it matters.

Roland.


More information about the hotspot-compiler-dev mailing list