| Index: src/crankshaft/lithium.cc
|
| diff --git a/src/crankshaft/lithium.cc b/src/crankshaft/lithium.cc
|
| index 0a940d5b164986fe87b9ef72f4cfcf8b941ab4ca..82ad6962be43e121badea6907aa1e62f9b5010f2 100644
|
| --- a/src/crankshaft/lithium.cc
|
| +++ b/src/crankshaft/lithium.cc
|
| @@ -406,53 +406,6 @@ Representation LChunk::LookupLiteralRepresentation(
|
| }
|
|
|
|
|
| -static void AddWeakObjectToCodeDependency(Isolate* isolate,
|
| - Handle<HeapObject> object,
|
| - Handle<Code> code) {
|
| - Handle<WeakCell> cell = Code::WeakCellFor(code);
|
| - Heap* heap = isolate->heap();
|
| - Handle<DependentCode> dep(heap->LookupWeakObjectToCodeDependency(object));
|
| - dep = DependentCode::InsertWeakCode(dep, DependentCode::kWeakCodeGroup, cell);
|
| - heap->AddWeakObjectToCodeDependency(object, dep);
|
| -}
|
| -
|
| -
|
| -void LChunk::RegisterWeakObjectsInOptimizedCode(Handle<Code> code) const {
|
| - DCHECK(code->is_optimized_code());
|
| - ZoneList<Handle<Map> > maps(1, zone());
|
| - ZoneList<Handle<HeapObject> > objects(1, zone());
|
| - int mode_mask = RelocInfo::ModeMask(RelocInfo::EMBEDDED_OBJECT) |
|
| - RelocInfo::ModeMask(RelocInfo::CELL);
|
| - for (RelocIterator it(*code, mode_mask); !it.done(); it.next()) {
|
| - RelocInfo::Mode mode = it.rinfo()->rmode();
|
| - if (mode == RelocInfo::CELL &&
|
| - code->IsWeakObjectInOptimizedCode(it.rinfo()->target_cell())) {
|
| - objects.Add(Handle<HeapObject>(it.rinfo()->target_cell()), zone());
|
| - } else if (mode == RelocInfo::EMBEDDED_OBJECT &&
|
| - code->IsWeakObjectInOptimizedCode(it.rinfo()->target_object())) {
|
| - if (it.rinfo()->target_object()->IsMap()) {
|
| - Handle<Map> map(Map::cast(it.rinfo()->target_object()));
|
| - maps.Add(map, zone());
|
| - } else {
|
| - Handle<HeapObject> object(
|
| - HeapObject::cast(it.rinfo()->target_object()));
|
| - objects.Add(object, zone());
|
| - }
|
| - }
|
| - }
|
| - for (int i = 0; i < maps.length(); i++) {
|
| - if (maps.at(i)->dependent_code()->IsEmpty(DependentCode::kWeakCodeGroup)) {
|
| - isolate()->heap()->AddRetainedMap(maps.at(i));
|
| - }
|
| - Map::AddDependentCode(maps.at(i), DependentCode::kWeakCodeGroup, code);
|
| - }
|
| - for (int i = 0; i < objects.length(); i++) {
|
| - AddWeakObjectToCodeDependency(isolate(), objects.at(i), code);
|
| - }
|
| - code->set_can_have_weak_objects(true);
|
| -}
|
| -
|
| -
|
| void LChunk::CommitDependencies(Handle<Code> code) const {
|
| if (!code->is_optimized_code()) return;
|
| HandleScope scope(isolate());
|
| @@ -470,7 +423,6 @@ void LChunk::CommitDependencies(Handle<Code> code) const {
|
| }
|
|
|
| info_->dependencies()->Commit(code);
|
| - RegisterWeakObjectsInOptimizedCode(code);
|
| }
|
|
|
|
|
|
|