[vmkit-commits] [vmkit] r145807 - /vmkit/trunk/lib/vmkit/CommonThread/ctthread.cpp

Will Dietz wdietz2 at illinois.edu
Mon Dec 5 03:08:33 PST 2011


Author: wdietz2
Date: Mon Dec  5 05:08:33 2011
New Revision: 145807

URL: http://llvm.org/viewvc/llvm-project?rev=145807&view=rev
Log:
Make StackWalker more friendly to being called from JNI code.

This is important for OpenJDK's JVM_FillInStackTrace.

Modified:
    vmkit/trunk/lib/vmkit/CommonThread/ctthread.cpp

Modified: vmkit/trunk/lib/vmkit/CommonThread/ctthread.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/vmkit/CommonThread/ctthread.cpp?rev=145807&r1=145806&r2=145807&view=diff
==============================================================================
--- vmkit/trunk/lib/vmkit/CommonThread/ctthread.cpp (original)
+++ vmkit/trunk/lib/vmkit/CommonThread/ctthread.cpp Mon Dec  5 05:08:33 2011
@@ -164,6 +164,10 @@
     }
     if (frame && (addr == frame->currentFP)) {
       frame = frame->previousFrame;
+      // Let this be called from JNI, as in
+      // OpenJDK's JVM_FillInStackTrace:
+      if (frame && frame->currentIP != 0)
+        frame = frame->previousFrame;
       assert((frame == NULL) || (frame->currentIP == 0));
     }
   }





More information about the vmkit-commits mailing list