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

Unified Diff: runtime/vm/flow_graph_compiler_arm.cc

Issue 1644793002: Replace intptr_t with TokenDescriptor (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Created 4 years, 11 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_compiler.cc ('k') | runtime/vm/flow_graph_compiler_arm64.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: runtime/vm/flow_graph_compiler_arm.cc
diff --git a/runtime/vm/flow_graph_compiler_arm.cc b/runtime/vm/flow_graph_compiler_arm.cc
index d97368defc6c1205eb0d9f649293b8a810fc179d..e3780cb9c6c06425a1b5567e4470d698ce4c2ce7 100644
--- a/runtime/vm/flow_graph_compiler_arm.cc
+++ b/runtime/vm/flow_graph_compiler_arm.cc
@@ -267,7 +267,7 @@ RawSubtypeTestCache* FlowGraphCompiler::GenerateCallSubtypeTestStub(
// Clobbers R2.
RawSubtypeTestCache*
FlowGraphCompiler::GenerateInstantiatedTypeWithArgumentsTest(
- intptr_t token_pos,
+ TokenPosition token_pos,
const AbstractType& type,
Label* is_instance_lbl,
Label* is_not_instance_lbl) {
@@ -357,7 +357,7 @@ void FlowGraphCompiler::CheckClassIds(Register class_id_reg,
// Clobbers R2, R3.
// Returns true if there is a fallthrough.
bool FlowGraphCompiler::GenerateInstantiatedTypeNoArgumentsTest(
- intptr_t token_pos,
+ TokenPosition token_pos,
const AbstractType& type,
Label* is_instance_lbl,
Label* is_not_instance_lbl) {
@@ -427,7 +427,7 @@ bool FlowGraphCompiler::GenerateInstantiatedTypeNoArgumentsTest(
// arrays can grow too high, but they may be useful when optimizing
// code (type-feedback).
RawSubtypeTestCache* FlowGraphCompiler::GenerateSubtype1TestCacheLookup(
- intptr_t token_pos,
+ TokenPosition token_pos,
const Class& type_class,
Label* is_instance_lbl,
Label* is_not_instance_lbl) {
@@ -455,7 +455,7 @@ RawSubtypeTestCache* FlowGraphCompiler::GenerateSubtype1TestCacheLookup(
// Generates inlined check if 'type' is a type parameter or type itself
// R0: instance (preserved).
RawSubtypeTestCache* FlowGraphCompiler::GenerateUninstantiatedTypeTest(
- intptr_t token_pos,
+ TokenPosition token_pos,
const AbstractType& type,
Label* is_instance_lbl,
Label* is_not_instance_lbl) {
@@ -538,7 +538,7 @@ RawSubtypeTestCache* FlowGraphCompiler::GenerateUninstantiatedTypeTest(
// may fall through to it. Otherwise, this inline code will jump to the label
// is_instance or to the label is_not_instance.
RawSubtypeTestCache* FlowGraphCompiler::GenerateInlineInstanceof(
- intptr_t token_pos,
+ TokenPosition token_pos,
const AbstractType& type,
Label* is_instance_lbl,
Label* is_not_instance_lbl) {
@@ -591,7 +591,7 @@ RawSubtypeTestCache* FlowGraphCompiler::GenerateInlineInstanceof(
// - R1: instantiator type arguments or raw_null.
// Returns:
// - true or false in R0.
-void FlowGraphCompiler::GenerateInstanceOf(intptr_t token_pos,
+void FlowGraphCompiler::GenerateInstanceOf(TokenPosition token_pos,
intptr_t deopt_id,
const AbstractType& type,
bool negate_result,
@@ -671,12 +671,12 @@ void FlowGraphCompiler::GenerateInstanceOf(intptr_t token_pos,
// - object in R0 for successful assignable check (or throws TypeError).
// Performance notes: positive checks must be quick, negative checks can be slow
// as they throw an exception.
-void FlowGraphCompiler::GenerateAssertAssignable(intptr_t token_pos,
+void FlowGraphCompiler::GenerateAssertAssignable(TokenPosition token_pos,
intptr_t deopt_id,
const AbstractType& dst_type,
const String& dst_name,
LocationSummary* locs) {
- ASSERT(!Token::IsClassifying(token_pos));
+ ASSERT(!token_pos.IsClassifying());
ASSERT(!dst_type.IsNull());
ASSERT(dst_type.IsFinalized());
// Assignable check is skipped in FlowGraphBuilder, not here.
@@ -1139,7 +1139,7 @@ void FlowGraphCompiler::CompileGraph() {
}
-void FlowGraphCompiler::GenerateCall(intptr_t token_pos,
+void FlowGraphCompiler::GenerateCall(TokenPosition token_pos,
const StubEntry& stub_entry,
RawPcDescriptors::Kind kind,
LocationSummary* locs) {
@@ -1150,7 +1150,7 @@ void FlowGraphCompiler::GenerateCall(intptr_t token_pos,
void FlowGraphCompiler::GenerateDartCall(intptr_t deopt_id,
- intptr_t token_pos,
+ TokenPosition token_pos,
const StubEntry& stub_entry,
RawPcDescriptors::Kind kind,
LocationSummary* locs) {
@@ -1171,7 +1171,7 @@ void FlowGraphCompiler::GenerateDartCall(intptr_t deopt_id,
}
-void FlowGraphCompiler::GenerateRuntimeCall(intptr_t token_pos,
+void FlowGraphCompiler::GenerateRuntimeCall(TokenPosition token_pos,
intptr_t deopt_id,
const RuntimeEntry& entry,
intptr_t argument_count,
@@ -1225,7 +1225,7 @@ void FlowGraphCompiler::EmitOptimizedInstanceCall(
const ICData& ic_data,
intptr_t argument_count,
intptr_t deopt_id,
- intptr_t token_pos,
+ TokenPosition token_pos,
LocationSummary* locs) {
ASSERT(Array::Handle(zone(), ic_data.arguments_descriptor()).Length() > 0);
// Each ICData propagated from unoptimized to optimized code contains the
@@ -1250,7 +1250,7 @@ void FlowGraphCompiler::EmitInstanceCall(const StubEntry& stub_entry,
const ICData& ic_data,
intptr_t argument_count,
intptr_t deopt_id,
- intptr_t token_pos,
+ TokenPosition token_pos,
LocationSummary* locs) {
ASSERT(Array::Handle(zone(), ic_data.arguments_descriptor()).Length() > 0);
__ LoadUniqueObject(R9, ic_data);
@@ -1267,7 +1267,7 @@ void FlowGraphCompiler::EmitMegamorphicInstanceCall(
const ICData& ic_data,
intptr_t argument_count,
intptr_t deopt_id,
- intptr_t token_pos,
+ TokenPosition token_pos,
LocationSummary* locs,
intptr_t try_index) {
const String& name = String::Handle(zone(), ic_data.target_name());
@@ -1320,7 +1320,7 @@ void FlowGraphCompiler::EmitSwitchableInstanceCall(
const ICData& ic_data,
intptr_t argument_count,
intptr_t deopt_id,
- intptr_t token_pos,
+ TokenPosition token_pos,
LocationSummary* locs) {
__ Comment("SwitchableCall");
__ LoadFromOffset(kWord, R0, SP, (argument_count - 1) * kWordSize);
@@ -1359,7 +1359,7 @@ void FlowGraphCompiler::EmitSwitchableInstanceCall(
void FlowGraphCompiler::EmitUnoptimizedStaticCall(
intptr_t argument_count,
intptr_t deopt_id,
- intptr_t token_pos,
+ TokenPosition token_pos,
LocationSummary* locs,
const ICData& ic_data) {
const StubEntry* stub_entry =
@@ -1379,7 +1379,7 @@ void FlowGraphCompiler::EmitOptimizedStaticCall(
const Array& arguments_descriptor,
intptr_t argument_count,
intptr_t deopt_id,
- intptr_t token_pos,
+ TokenPosition token_pos,
LocationSummary* locs) {
__ LoadObject(R4, arguments_descriptor);
// Do not use the code from the function, but let the code be patched so that
@@ -1398,7 +1398,7 @@ Condition FlowGraphCompiler::EmitEqualityRegConstCompare(
Register reg,
const Object& obj,
bool needs_number_check,
- intptr_t token_pos) {
+ TokenPosition token_pos) {
if (needs_number_check) {
ASSERT(!obj.IsMint() && !obj.IsDouble() && !obj.IsBigint());
__ Push(reg);
@@ -1410,7 +1410,7 @@ Condition FlowGraphCompiler::EmitEqualityRegConstCompare(
__ BranchLinkPatchable(
*StubCode::UnoptimizedIdenticalWithNumberCheck_entry());
}
- if (token_pos >= 0) {
+ if (token_pos.IsReal()) {
AddCurrentDescriptor(RawPcDescriptors::kRuntimeCall,
Thread::kNoDeoptId,
token_pos);
@@ -1425,10 +1425,11 @@ Condition FlowGraphCompiler::EmitEqualityRegConstCompare(
}
-Condition FlowGraphCompiler::EmitEqualityRegRegCompare(Register left,
- Register right,
- bool needs_number_check,
- intptr_t token_pos) {
+Condition FlowGraphCompiler::EmitEqualityRegRegCompare(
+ Register left,
+ Register right,
+ bool needs_number_check,
+ TokenPosition token_pos) {
if (needs_number_check) {
__ Push(left);
__ Push(right);
@@ -1439,7 +1440,7 @@ Condition FlowGraphCompiler::EmitEqualityRegRegCompare(Register left,
__ BranchLinkPatchable(
*StubCode::UnoptimizedIdenticalWithNumberCheck_entry());
}
- if (token_pos >= 0) {
+ if (token_pos.IsReal()) {
AddCurrentDescriptor(RawPcDescriptors::kRuntimeCall,
Thread::kNoDeoptId,
token_pos);
@@ -1553,7 +1554,7 @@ void FlowGraphCompiler::EmitTestAndCall(const ICData& ic_data,
Label* failed,
Label* match_found,
intptr_t deopt_id,
- intptr_t token_index,
+ TokenPosition token_index,
LocationSummary* locs) {
ASSERT(is_optimizing());
__ Comment("EmitTestAndCall");
« no previous file with comments | « runtime/vm/flow_graph_compiler.cc ('k') | runtime/vm/flow_graph_compiler_arm64.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698