nmethod::preserve_callee_argument_oops() doesn't take the invokedynamic/invokehandle appendix argument into account and actually has some leftover from the previous JSR292 implementation. http://cr.openjdk.java.net/~roland/8009981/webrev.00/ Roland.