diff src/cpu/ppc/vm/nativeInst_ppc.cpp @ 17793:c668f307a4c0

8031319: PPC64: Some fixes in ppc and aix coding. Reviewed-by: kvn
author goetz
date Tue, 07 Jan 2014 17:24:59 +0100
parents 67fa91961822
children 327e7269f90d
line wrap: on
line diff
--- a/src/cpu/ppc/vm/nativeInst_ppc.cpp	Mon Jan 06 11:02:21 2014 +0100
+++ b/src/cpu/ppc/vm/nativeInst_ppc.cpp	Tue Jan 07 17:24:59 2014 +0100
@@ -71,7 +71,7 @@
   if (nm->stub_contains(destination) && is_NativeCallTrampolineStub_at(destination)) {
     // Yes we do, so get the destination from the trampoline stub.
     const address trampoline_stub_addr = destination;
-    destination = NativeCallTrampolineStub_at(trampoline_stub_addr)->destination();
+    destination = NativeCallTrampolineStub_at(trampoline_stub_addr)->destination(nm);
   }
 
   return destination;
@@ -371,8 +371,8 @@
   return instruction_addr;
 }
 
-address NativeCallTrampolineStub::destination() const {
-  CodeBlob* cb = CodeCache::find_blob(addr_at(0));
+address NativeCallTrampolineStub::destination(nmethod *nm) const {
+  CodeBlob* cb = nm ? nm : CodeCache::find_blob_unsafe(addr_at(0));
   address ctable = cb->content_begin();
 
   return *(address*)(ctable + destination_toc_offset());