Stack Trace Element with its unit test added too.
The unit test passes.
Change-Id: I6f6af771cae1387c60c3b511148a347fe3237345
diff --git a/src/thread.h b/src/thread.h
index e8ca156..8a3a49b 100644
--- a/src/thread.h
+++ b/src/thread.h
@@ -27,6 +27,8 @@
class Thread;
class ThreadList;
class Throwable;
+class StackTraceElement;
+template<class T> class ObjectArray;
class Mutex {
public:
@@ -131,7 +133,7 @@
void Next();
- void* GetPC() const;
+ uintptr_t GetPC() const;
const Method** GetSP() const {
return sp_;
@@ -388,6 +390,16 @@
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),