Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(136)

Unified Diff: src/debug.cc

Issue 6542047: Basic implementation of incremental marking. (Closed) Base URL: https://v8.googlecode.com/svn/branches/experimental/gc
Patch Set: Created 9 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: src/debug.cc
diff --git a/src/debug.cc b/src/debug.cc
index d8201a1894bf79e6bc064d47b9fefcc585251ba1..216afc0ff2da09a01cb23cc5b168905e1d9449d3 100644
--- a/src/debug.cc
+++ b/src/debug.cc
@@ -383,9 +383,9 @@ void BreakLocationIterator::PrepareStepIn() {
Handle<Code> stub = ComputeCallDebugPrepareStepIn(code->arguments_count(),
code->kind());
if (IsDebugBreak()) {
- original_rinfo()->set_target_address(stub->entry());
+ original_rinfo()->set_target_address(stub->entry(), this->code());
} else {
- rinfo()->set_target_address(stub->entry());
+ rinfo()->set_target_address(stub->entry(), this->code());
}
} else {
#ifdef DEBUG
@@ -441,7 +441,7 @@ bool BreakLocationIterator::IsDebugBreak() {
void BreakLocationIterator::SetDebugBreakAtIC() {
// Patch the original code with the current address as the current address
// might have changed by the inline caching since the code was copied.
- original_rinfo()->set_target_address(rinfo()->target_address());
+ original_rinfo()->set_target_address(rinfo()->target_address(), this->code());
RelocInfo::Mode mode = rmode();
if (RelocInfo::IsCodeTarget(mode)) {
@@ -451,7 +451,7 @@ void BreakLocationIterator::SetDebugBreakAtIC() {
// Patch the code to invoke the builtin debug break function matching the
// calling convention used by the call site.
Handle<Code> dbgbrk_code(Debug::FindDebugBreak(code, mode));
- rinfo()->set_target_address(dbgbrk_code->entry());
+ rinfo()->set_target_address(dbgbrk_code->entry(), this->code());
// For stubs that refer back to an inlined version clear the cached map for
// the inlined case to always go through the IC. As long as the break point
@@ -473,7 +473,7 @@ void BreakLocationIterator::SetDebugBreakAtIC() {
void BreakLocationIterator::ClearDebugBreakAtIC() {
// Patch the code to the original invoke.
- rinfo()->set_target_address(original_rinfo()->target_address());
+ rinfo()->set_target_address(original_rinfo()->target_address(), code());
RelocInfo::Mode mode = rmode();
if (RelocInfo::IsCodeTarget(mode)) {

Powered by Google App Engine
This is Rietveld 408576698