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

Side by Side Diff: src/hydrogen.cc

Issue 292993003: Revert "Refactor transitioning stores." (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 6 years, 7 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 unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « src/arm64/lithium-codegen-arm64.cc ('k') | src/hydrogen-check-elimination.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2013 the V8 project authors. All rights reserved. 1 // Copyright 2013 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "hydrogen.h" 5 #include "hydrogen.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 8
9 #include "v8.h" 9 #include "v8.h"
10 #include "allocation-site-scopes.h" 10 #include "allocation-site-scopes.h"
(...skipping 5503 matching lines...) Expand 10 before | Expand all | Expand 10 after
5514 5514
5515 // This is a normal store. 5515 // This is a normal store.
5516 instr = New<HStoreNamedField>( 5516 instr = New<HStoreNamedField>(
5517 checked_object->ActualValue(), field_access, value, 5517 checked_object->ActualValue(), field_access, value,
5518 transition_to_field ? INITIALIZING_STORE : STORE_TO_INITIALIZED_ENTRY); 5518 transition_to_field ? INITIALIZING_STORE : STORE_TO_INITIALIZED_ENTRY);
5519 } 5519 }
5520 5520
5521 if (transition_to_field) { 5521 if (transition_to_field) {
5522 Handle<Map> transition(info->transition()); 5522 Handle<Map> transition(info->transition());
5523 ASSERT(!transition->is_deprecated()); 5523 ASSERT(!transition->is_deprecated());
5524 if (transition->CanBeDeprecated()) { 5524 instr->SetTransition(Add<HConstant>(transition));
5525 Map::AddDependentCompilationInfo(
5526 transition, DependentCode::kTransitionGroup, top_info());
5527 }
5528 Add<HStoreNamedField>(checked_object->ActualValue(),
5529 HObjectAccess::ForMap(),
5530 Add<HConstant>(transition),
5531 STORE_TO_INITIALIZED_ENTRY);
5532 } 5525 }
5533 return instr; 5526 return instr;
5534 } 5527 }
5535 5528
5536 5529
5537 bool HOptimizedGraphBuilder::PropertyAccessInfo::IsCompatible( 5530 bool HOptimizedGraphBuilder::PropertyAccessInfo::IsCompatible(
5538 PropertyAccessInfo* info) { 5531 PropertyAccessInfo* info) {
5539 if (!CanInlinePropertyAccess(type_)) return false; 5532 if (!CanInlinePropertyAccess(type_)) return false;
5540 5533
5541 // Currently only handle Type::Number as a polymorphic case. 5534 // Currently only handle Type::Number as a polymorphic case.
(...skipping 6266 matching lines...) Expand 10 before | Expand all | Expand 10 after
11808 if (ShouldProduceTraceOutput()) { 11801 if (ShouldProduceTraceOutput()) {
11809 isolate()->GetHTracer()->TraceHydrogen(name(), graph_); 11802 isolate()->GetHTracer()->TraceHydrogen(name(), graph_);
11810 } 11803 }
11811 11804
11812 #ifdef DEBUG 11805 #ifdef DEBUG
11813 graph_->Verify(false); // No full verify. 11806 graph_->Verify(false); // No full verify.
11814 #endif 11807 #endif
11815 } 11808 }
11816 11809
11817 } } // namespace v8::internal 11810 } } // namespace v8::internal
OLDNEW
« no previous file with comments | « src/arm64/lithium-codegen-arm64.cc ('k') | src/hydrogen-check-elimination.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698