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

Unified Diff: runtime/vm/flow_graph_optimizer.cc

Issue 15973010: Split LoadStatic into two instructions: load static filed, load value. (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/
Patch Set: Created 7 years, 6 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
« no previous file with comments | « runtime/vm/flow_graph_builder.cc ('k') | runtime/vm/flow_graph_type_propagator.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: runtime/vm/flow_graph_optimizer.cc
===================================================================
--- runtime/vm/flow_graph_optimizer.cc (revision 24043)
+++ runtime/vm/flow_graph_optimizer.cc (working copy)
@@ -3670,7 +3670,8 @@
LoadStaticFieldInstr* load_static_field = defn->AsLoadStaticField();
if (load_static_field != NULL) {
- return Alias::Field(GetFieldId(kAnyInstance, load_static_field->field()));
+ return Alias::Field(GetFieldId(kAnyInstance,
+ load_static_field->StaticField()));
}
UNREACHABLE();
@@ -3846,7 +3847,7 @@
LoadStaticFieldInstr* load_static_field = defn->AsLoadStaticField();
if (load_static_field != NULL) {
- return load_static_field->field().is_final();
+ return load_static_field->StaticField().is_final();
}
return false;
@@ -3974,7 +3975,7 @@
location = store_field->offset_in_bytes();
} else if (key->IsLoadStaticField()) {
LoadStaticFieldInstr* load_static_field = key->AsLoadStaticField();
- object = String::Handle(load_static_field->field().name()).Hash();
+ object = String::Handle(load_static_field->StaticField().name()).Hash();
} else if (key->IsStoreStaticField()) {
StoreStaticFieldInstr* store_static_field = key->AsStoreStaticField();
object = String::Handle(store_static_field->field().name()).Hash();
@@ -4004,7 +4005,7 @@
if (key->IsStoreStaticField()) {
LoadStaticFieldInstr* load_static_field = kv->AsLoadStaticField();
StoreStaticFieldInstr* store_static_field = key->AsStoreStaticField();
- return load_static_field->field().raw() ==
+ return load_static_field->StaticField().raw() ==
store_static_field->field().raw();
}
return false;
@@ -5236,7 +5237,7 @@
void ConstantPropagator::VisitLoadStaticField(LoadStaticFieldInstr* instr) {
- const Field& field = instr->field();
+ const Field& field = instr->StaticField();
ASSERT(field.is_static());
if (field.is_final()) {
Instance& obj = Instance::Handle(field.value());
« no previous file with comments | « runtime/vm/flow_graph_builder.cc ('k') | runtime/vm/flow_graph_type_propagator.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698