Chromium Code Reviews| Index: runtime/vm/intrinsifier.cc |
| diff --git a/runtime/vm/intrinsifier.cc b/runtime/vm/intrinsifier.cc |
| index af15e7a7f2a81df0e199b6cf7518a5bc31da34a0..4d3422fc22647f8c8130a7c361d4e7bf380b7bf8 100644 |
| --- a/runtime/vm/intrinsifier.cc |
| +++ b/runtime/vm/intrinsifier.cc |
| @@ -95,6 +95,8 @@ void Intrinsifier::InitializeState() { |
| #endif // defined(DART_NO_SNAPSHOT). |
| +// DBC does not use graph intrinsics. |
| +#if !defined(TARGET_ARCH_DBC) |
| static void EmitCodeFor(FlowGraphCompiler* compiler, |
| FlowGraph* graph) { |
| // The FlowGraph here is constructed by the intrinsics builder methods, and |
| @@ -124,10 +126,14 @@ static void EmitCodeFor(FlowGraphCompiler* compiler, |
| } |
| } |
| } |
| +#endif |
| bool Intrinsifier::GraphIntrinsify(const ParsedFunction& parsed_function, |
| FlowGraphCompiler* compiler) { |
| +#if defined(TARGET_ARCH_DBC) |
| + return false; |
| +#else |
| ZoneGrowableArray<const ICData*>* ic_data_array = |
| new ZoneGrowableArray<const ICData*>(); |
| FlowGraphBuilder builder(parsed_function, |
| @@ -174,6 +180,7 @@ bool Intrinsifier::GraphIntrinsify(const ParsedFunction& parsed_function, |
| } |
| EmitCodeFor(compiler, graph); |
| return true; |
| +#endif |
|
zra
2016/04/14 18:27:48
add // defined(TARGET_ARCH_DBC)
Vyacheslav Egorov (Google)
2016/04/18 15:56:42
Done.
|
| } |
| @@ -205,10 +212,22 @@ void Intrinsifier::Intrinsify(const ParsedFunction& parsed_function, |
| default: |
| break; |
| } |
| + |
| + // On DBC all graph intrinsics are handled in the same way as non-graph |
| + // intrinsics. |
| +#if defined(TARGET_ARCH_DBC) |
| + switch (function.recognized_kind()) { |
| + GRAPH_INTRINSICS_LIST(EMIT_CASE) |
| + default: |
| + break; |
| + } |
| +#endif |
| + |
| #undef EMIT_INTRINSIC |
| } |
| +#if !defined(TARGET_ARCH_DBC) |
| static intptr_t CidForRepresentation(Representation rep) { |
| switch (rep) { |
| case kUnboxedDouble: |
| @@ -882,5 +901,6 @@ bool Intrinsifier::Build_DoubleFlipSignBit(FlowGraph* flow_graph) { |
| builder.AddIntrinsicReturn(new Value(result)); |
| return true; |
| } |
| +#endif |
|
zra
2016/04/14 18:27:48
add // !defined(TARGET_ARCH_DBC)
Vyacheslav Egorov (Google)
2016/04/18 15:56:42
Done.
|
| } // namespace dart |