Before pathing: (from "print" compilecommand of nsk/share/gc/NonbranchyTree::createTree) 0x00007f8cc8d43f61: mov %rax,%r10 0x00007f8cc8d43f64: shr $0x3,%r10 0x00007f8cc8d43f68: jmpq 0x00007f8cc8d4416a ; implicit exception: dispatches to 0x00007f8cc8d44159 0x00007f8cc8d43f6d: nop 0x00007f8cc8d43f6e: nop 0x00007f8cc8d43f6f: mov %rdi,%rax 0x00007f8cc8d43f72: shr $0x9,%rax 0x00007f8cc8d43f76: movabs $0x7f8cc43d3000,%rdx 0x00007f8cc8d43f80: movb $0x0,(%rax,%rdx,1) ;*putfield left ; - nsk.share.gc.NonbranchyTree::createTree@106 (line 92) (...) 0x00007f8cc8d44159: callq 0x00007f8cc8602940 ; OopMap{rax=Oop rdi=Oop [104]=Oop off=1694} ;*putfield left ; - nsk.share.gc.NonbranchyTree::createTree@106 (line 92) ; {runtime_call} 0x00007f8cc8d4415e: mov %r10d,0x0(%rdi) 0x00007f8cc8d44165: mov $0x7050c00,%eax ; %r10 is missing in the oop map here: 0x00007f8cc8d4416a: callq 0x00007f8cc87aa160 ; OopMap{rax=Oop rdi=Oop [104]=Oop off=1711} ;*putfield left ; - nsk.share.gc.NonbranchyTree::createTree@106 (line 92) ; {runtime_call} ; 0x00007f8cc87aa160: In code in RuntimeStub: access_field_patching 0x00007f8cc8d4416f: jmpq 0x00007f8cc8d43f68 After patching: (from "dumpcodecache" in CLHSDB) 0x00007f8cc8d43f61: mov %rax,%r10 private nsk.share.gc.Node createTree(int, int) @0x00007f8c7bc26a70 of public class nsk.share.gc.NonbranchyTree @0x00000007c0065be8 @ bci = 106, line = 92 0x00007f8cc8d43f64: shr $0x3,%r10 0x00007f8cc8d43f68: mov %r10d,0xc(%rdi) 0x00007f8cc8d43f6f: mov %rdi,%rax 0x00007f8cc8d43f72: shr $0x9,%rax private nsk.share.gc.Node createTree(int, int) @0x00007f8c7bc26a70 of public class nsk.share.gc.NonbranchyTree @0x00000007c0065be8 @ bci = 110, line = 94 0x00007f8cc8d43f76: movabs $0x7f8cc43d3000,%rdx 0x00007f8cc8d43f80: movb $0x0,(%rax,%rdx,1)