| Index: src/compiler.cc
|
| diff --git a/src/compiler.cc b/src/compiler.cc
|
| index 46373ff7ead94f9ae1b2a726d0bc4e19be6bfbb7..c1d62d0a2d64169bea803d5b8a5e10fdeb7df06d 100644
|
| --- a/src/compiler.cc
|
| +++ b/src/compiler.cc
|
| @@ -215,7 +215,7 @@ void CompilationInfo::CommitDependencies(Handle<Code> code) {
|
| if (!has_dependencies) return;
|
|
|
| AllowDeferredHandleDereference get_object_wrapper;
|
| - Handle<WeakCell> cell = Code::WeakCellFor(code);
|
| + WeakCell* cell = *Code::WeakCellFor(code);
|
| for (int i = 0; i < DependentCode::kGroupCount; i++) {
|
| ZoneList<Handle<HeapObject> >* group_objects = dependencies_[i];
|
| if (group_objects == NULL) continue;
|
| @@ -223,9 +223,10 @@ void CompilationInfo::CommitDependencies(Handle<Code> code) {
|
| for (int j = 0; j < group_objects->length(); j++) {
|
| DependentCode::DependencyGroup group =
|
| static_cast<DependentCode::DependencyGroup>(i);
|
| + Foreign* info = *object_wrapper();
|
| DependentCode* dependent_code =
|
| DependentCode::ForObject(group_objects->at(j), group);
|
| - dependent_code->UpdateToFinishedCode(group, *object_wrapper(), *cell);
|
| + dependent_code->UpdateToFinishedCode(group, info, cell);
|
| }
|
| dependencies_[i] = NULL; // Zone-allocated, no need to delete.
|
| }
|
| @@ -241,9 +242,10 @@ void CompilationInfo::RollbackDependencies() {
|
| for (int j = 0; j < group_objects->length(); j++) {
|
| DependentCode::DependencyGroup group =
|
| static_cast<DependentCode::DependencyGroup>(i);
|
| + Foreign* info = *object_wrapper();
|
| DependentCode* dependent_code =
|
| DependentCode::ForObject(group_objects->at(j), group);
|
| - dependent_code->RemoveCompilationInfo(group, *object_wrapper());
|
| + dependent_code->RemoveCompilationInfo(group, info);
|
| }
|
| dependencies_[i] = NULL; // Zone-allocated, no need to delete.
|
| }
|
|
|