[llvm-commits] [vmkit] r50857 - /vmkit/trunk/lib/JnJVM/VMCore/JavaBacktrace.cpp
Nicolas Geoffray
nicolas.geoffray at lip6.fr
Thu May 8 09:08:16 PDT 2008
Author: geoffray
Date: Thu May 8 11:08:16 2008
New Revision: 50857
URL: http://llvm.org/viewvc/llvm-project?rev=50857&view=rev
Log:
Use __libc_stack_end to know the end of a stack (for now).
Modified:
vmkit/trunk/lib/JnJVM/VMCore/JavaBacktrace.cpp
Modified: vmkit/trunk/lib/JnJVM/VMCore/JavaBacktrace.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/VMCore/JavaBacktrace.cpp?rev=50857&r1=50856&r2=50857&view=diff
==============================================================================
--- vmkit/trunk/lib/JnJVM/VMCore/JavaBacktrace.cpp (original)
+++ vmkit/trunk/lib/JnJVM/VMCore/JavaBacktrace.cpp Thu May 8 11:08:16 2008
@@ -43,11 +43,13 @@
#define FRAME_IP(fp) (fp[1])
#endif
+extern void* __libc_stack_end;
int JavaJIT::getBacktrace(void** stack, int size) {
void** blah = (void**)__builtin_frame_address(1);
int cpt = 0;
- while (blah && cpt < size) {
+ while (blah && cpt < size && blah < __libc_stack_end &&
+ !(((long) blah & 3))) {
stack[cpt++] = (void**)FRAME_IP(blah);
blah = (void**)blah[0];
}
More information about the llvm-commits
mailing list