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

Unified Diff: runtime/vm/flow_graph_compiler.cc

Issue 1858283002: Initial SIMDBC interpreter. (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Address comments Created 4 years, 8 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_compiler.cc
diff --git a/runtime/vm/flow_graph_compiler.cc b/runtime/vm/flow_graph_compiler.cc
index 1ca6adc4a1d0f3cd4f441f043c8ce939d5847781..243eab815190bf2d0339acad659962611b23635d 100644
--- a/runtime/vm/flow_graph_compiler.cc
+++ b/runtime/vm/flow_graph_compiler.cc
@@ -503,7 +503,7 @@ void FlowGraphCompiler::VisitBlocks() {
continue;
}
-#if defined(DEBUG)
+#if defined(DEBUG) && !defined(TARGET_ARCH_DBC)
if (!is_optimizing()) {
FrameStateClear();
}
@@ -557,14 +557,14 @@ void FlowGraphCompiler::VisitBlocks() {
EndCodeSourceRange(instr->token_pos());
}
-#if defined(DEBUG)
+#if defined(DEBUG) && !defined(TARGET_ARCH_DBC)
if (!is_optimizing()) {
FrameStateUpdateWith(instr);
}
#endif
}
-#if defined(DEBUG)
+#if defined(DEBUG) && !defined(TARGET_ARCH_DBC)
ASSERT(is_optimizing() || FrameStateIsSafeToCall());
#endif
}
@@ -1147,6 +1147,7 @@ bool FlowGraphCompiler::TryIntrinsify() {
}
+#if !defined(TARGET_ARCH_DBC)
void FlowGraphCompiler::GenerateInstanceCall(
intptr_t deopt_id,
TokenPosition token_pos,
@@ -1285,7 +1286,7 @@ void FlowGraphCompiler::GenerateListTypeCheck(Register kClassIdReg,
CheckClassIds(kClassIdReg, args, is_instance_lbl, &unknown);
assembler()->Bind(&unknown);
}
-
+#endif
void FlowGraphCompiler::EmitComment(Instruction* instr) {
if (!FLAG_support_il_printer || !FLAG_support_disassembler) {
@@ -1300,6 +1301,7 @@ void FlowGraphCompiler::EmitComment(Instruction* instr) {
}
+#if !defined(TARGET_ARCH_DBC)
bool FlowGraphCompiler::NeedsEdgeCounter(TargetEntryInstr* block) {
// Only emit an edge counter if there is not goto at the end of the block,
// except for the entry block.
@@ -1320,18 +1322,15 @@ static Register AllocateFreeRegister(bool* blocked_registers) {
UNREACHABLE();
return kNoRegister;
}
-
-
-static uword RegMaskBit(Register reg) {
- return ((reg) != kNoRegister) ? (1 << (reg)) : 0;
-}
+#endif
void FlowGraphCompiler::AllocateRegistersLocally(Instruction* instr) {
ASSERT(!is_optimizing());
-
instr->InitializeLocationSummary(zone(),
false); // Not optimizing.
+
+#if !defined(TARGET_ARCH_DBC)
LocationSummary* locs = instr->locs();
bool blocked_registers[kNumberOfCpuRegisters];
@@ -1421,6 +1420,12 @@ void FlowGraphCompiler::AllocateRegistersLocally(Instruction* instr) {
}
locs->set_out(0, result_location);
}
+#endif
+}
+
+
+static uword RegMaskBit(Register reg) {
+ return ((reg) != kNoRegister) ? (1 << (reg)) : 0;
}
@@ -1831,6 +1836,7 @@ NOT_IN_PRODUCT(
}
+#if !defined(TARGET_ARCH_DBC)
void FlowGraphCompiler::EmitPolymorphicInstanceCall(
const ICData& ic_data,
intptr_t argument_count,
@@ -1864,9 +1870,9 @@ void FlowGraphCompiler::EmitPolymorphicInstanceCall(
assembler()->Bind(&ok);
}
}
+#endif
-
-#if defined(DEBUG)
+#if defined(DEBUG) && !defined(TARGET_ARCH_DBC)
void FlowGraphCompiler::FrameStateUpdateWith(Instruction* instr) {
ASSERT(!is_optimizing());

Powered by Google App Engine
This is Rietveld 408576698