summaryrefslogtreecommitdiff
path: root/src/thread.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/thread.h')
-rw-r--r--src/thread.h14
1 files changed, 13 insertions, 1 deletions
diff --git a/src/thread.h b/src/thread.h
index e8ca1566d5..8a3a49b81f 100644
--- a/src/thread.h
+++ b/src/thread.h
@@ -27,6 +27,8 @@ class Runtime;
class Thread;
class ThreadList;
class Throwable;
+class StackTraceElement;
+template<class T> class ObjectArray;
class Mutex {
public:
@@ -131,7 +133,7 @@ class Frame {
void Next();
- void* GetPC() const;
+ uintptr_t GetPC() const;
const Method** GetSP() const {
return sp_;
@@ -388,6 +390,16 @@ class Thread {
class_loader_override_ = class_loader_override;
}
+ struct InternalStackTrace {
+ const Method* method;
+ uintptr_t pc;
+ };
+
+ // Get the top length frames information
+ InternalStackTrace* GetStackTrace(uint16_t length);
+
+ ObjectArray<StackTraceElement>* GetStackTraceElement(uint16_t length, InternalStackTrace *raw_trace);
+
private:
Thread()
: id_(1234),