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

Unified Diff: runtime/vm/flow_graph_type_propagator.cc

Issue 2997173002: [vm] Remove Dart_MakeExternalString and --support-externalizable-strings (Closed)
Patch Set: Update vm.status Created 3 years, 4 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: runtime/vm/flow_graph_type_propagator.cc
diff --git a/runtime/vm/flow_graph_type_propagator.cc b/runtime/vm/flow_graph_type_propagator.cc
index c9e4910bd6041dd495b21e47ea47e93b2266ac59..192a2af233ba9259dcb1561e0c0e77e86812a95a 100644
--- a/runtime/vm/flow_graph_type_propagator.cc
+++ b/runtime/vm/flow_graph_type_propagator.cc
@@ -294,8 +294,7 @@ void FlowGraphTypePropagator::VisitPolymorphicInstanceCall(
void FlowGraphTypePropagator::VisitGuardFieldClass(
GuardFieldClassInstr* guard) {
const intptr_t cid = guard->field().guarded_cid();
- if ((cid == kIllegalCid) || (cid == kDynamicCid) ||
- Field::IsExternalizableCid(cid)) {
+ if ((cid == kIllegalCid) || (cid == kDynamicCid)) {
return;
}
@@ -856,9 +855,6 @@ CompileType ConstantInstr::ComputeType() const {
}
intptr_t cid = value().GetClassId();
- if (Field::IsExternalizableCid(cid)) {
- cid = kDynamicCid;
- }
if (value().IsInstance()) {
// Allocate in old-space since this may be invoked from the
@@ -1022,9 +1018,6 @@ CompileType LoadStaticFieldInstr::ComputeType() const {
if (!IsNullableCid(cid)) is_nullable = CompileType::kNonNullable;
}
}
- if (Field::IsExternalizableCid(cid)) {
- cid = kDynamicCid;
- }
return CompileType(is_nullable, cid, abstract_type);
}
@@ -1061,25 +1054,16 @@ CompileType LoadFieldInstr::ComputeType() const {
const AbstractType* abstract_type = NULL;
if (Isolate::Current()->type_checks() &&
- (type().IsFunctionType() ||
- (type().HasResolvedTypeClass() &&
- !Field::IsExternalizableCid(
- Class::Handle(type().type_class()).id())))) {
+ (type().IsFunctionType() || type().HasResolvedTypeClass())) {
abstract_type = &type();
}
if ((field_ != NULL) && (field_->guarded_cid() != kIllegalCid)) {
bool is_nullable = field_->is_nullable();
intptr_t field_cid = field_->guarded_cid();
- if (Field::IsExternalizableCid(field_cid)) {
- // We cannot assume that the type of the value in the field has not
- // changed on the fly.
- field_cid = kDynamicCid;
- }
return CompileType(is_nullable, field_cid, abstract_type);
}
- ASSERT(!Field::IsExternalizableCid(result_cid_));
return CompileType::Create(result_cid_, *abstract_type);
}

Powered by Google App Engine
This is Rietveld 408576698