Commit 16c775ea authored by yangguo@chromium.org's avatar yangguo@chromium.org

Actually put debug information on stack when aborting.

R=ulan@chromium.org
BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/10627015

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11902 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
parent 6cf640ab
...@@ -896,8 +896,18 @@ void Debug::PutValuesOnStackAndDie(int start, ...@@ -896,8 +896,18 @@ void Debug::PutValuesOnStackAndDie(int start,
Address c_entry_fp, Address c_entry_fp,
Address last_fp, Address last_fp,
Address larger_fp, Address larger_fp,
Address last_in_fp,
Address last_out_fp,
int count, int count,
int end) { int end) {
OS::PrintError("start: %d\n", start);
OS::PrintError("c_entry_fp: %p\n", static_cast<void*>(c_entry_fp));
OS::PrintError("last_fp: %p\n", static_cast<void*>(last_fp));
OS::PrintError("larger_fp: %p\n", static_cast<void*>(larger_fp));
OS::PrintError("last_in_fp: %p\n", static_cast<void*>(last_in_fp));
OS::PrintError("last_out_fp: %p\n", static_cast<void*>(last_out_fp));
OS::PrintError("count: %d\n", count);
OS::PrintError("end: %d\n", end);
OS::Abort(); OS::Abort();
} }
...@@ -1010,6 +1020,8 @@ Object* Debug::Break(Arguments args) { ...@@ -1010,6 +1020,8 @@ Object* Debug::Break(Arguments args) {
frame->fp(), frame->fp(),
thread_local_.last_fp_, thread_local_.last_fp_,
NULL, NULL,
thread_local_.step_into_fp_,
thread_local_.step_out_fp_,
count, count,
0xFEEEEEEE); 0xFEEEEEEE);
} else if (it.frame()->fp() != thread_local_.last_fp_) { } else if (it.frame()->fp() != thread_local_.last_fp_) {
...@@ -1018,6 +1030,8 @@ Object* Debug::Break(Arguments args) { ...@@ -1018,6 +1030,8 @@ Object* Debug::Break(Arguments args) {
frame->fp(), frame->fp(),
thread_local_.last_fp_, thread_local_.last_fp_,
it.frame()->fp(), it.frame()->fp(),
thread_local_.step_into_fp_,
thread_local_.step_out_fp_,
count, count,
0xFEEEEEEE); 0xFEEEEEEE);
} }
......
...@@ -236,6 +236,8 @@ class Debug { ...@@ -236,6 +236,8 @@ class Debug {
Address c_entry_fp, Address c_entry_fp,
Address last_fp, Address last_fp,
Address larger_fp, Address larger_fp,
Address last_in_fp,
Address last_out_fp,
int count, int count,
int end)); int end));
Object* Break(Arguments args); Object* Break(Arguments args);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment