| 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());
|
|
|
|
|