Chromium Code Reviews| Index: runtime/vm/stub_code_dbc.cc |
| diff --git a/runtime/vm/stub_code_dbc.cc b/runtime/vm/stub_code_dbc.cc |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..fd906bf8718daa4f897b9501dd3dd568ed379226 |
| --- /dev/null |
| +++ b/runtime/vm/stub_code_dbc.cc |
| @@ -0,0 +1,63 @@ |
| +// Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file |
| +// for details. All rights reserved. Use of this source code is governed by a |
| +// BSD-style license that can be found in the LICENSE file. |
| + |
| +#include "vm/globals.h" |
| +#if defined(TARGET_ARCH_DBC) |
| + |
| +#include "vm/assembler.h" |
| +#include "vm/code_generator.h" |
| +#include "vm/cpu.h" |
| +#include "vm/compiler.h" |
| +#include "vm/dart_entry.h" |
| +#include "vm/flow_graph_compiler.h" |
| +#include "vm/heap.h" |
| +#include "vm/instructions.h" |
| +#include "vm/object_store.h" |
| +#include "vm/stack_frame.h" |
| +#include "vm/stub_code.h" |
| +#include "vm/tags.h" |
| + |
| +#define __ assembler-> |
| + |
| +namespace dart { |
| + |
| +DEFINE_FLAG(bool, inline_alloc, true, "Inline allocation of objects."); |
| +DEFINE_FLAG(bool, use_slow_path, false, |
| + "Set to true for debugging & verifying the slow paths."); |
| +DECLARE_FLAG(bool, trace_optimized_ic_calls); |
| +DECLARE_FLAG(int, optimization_counter_threshold); |
| +DECLARE_FLAG(bool, support_debugger); |
| +DECLARE_FLAG(bool, lazy_dispatchers); |
| + |
| +void StubCode::GenerateLazyCompileStub(Assembler* assembler) { |
| + __ Compile(); |
| +} |
| + |
| + |
| +void StubCode::GenerateFixCallersTargetStub(Assembler* assembler) { |
| + __ Trap(); |
|
zra
2016/04/14 18:27:50
So, this will fail at runtime. Should it fail at c
Vyacheslav Egorov (Google)
2016/04/18 15:56:43
Can't make this unreachable because this stub is s
|
| +} |
| + |
| + |
| +void StubCode::GenerateAllocationStubForClass(Assembler* assembler, |
| + const Class& cls) { |
| + __ Trap(); |
| +} |
| + |
| + |
| +void StubCode::GenerateMegamorphicMissStub(Assembler* assembler) { |
| + __ Trap(); |
| +} |
| + |
| + |
| +// Print the stop message. |
| +DEFINE_LEAF_RUNTIME_ENTRY(void, PrintStopMessage, 1, const char* message) { |
| + OS::Print("Stop message: %s\n", message); |
| +} |
| +END_LEAF_RUNTIME_ENTRY |
| + |
| + |
| +} // namespace dart |
| + |
| +#endif // defined TARGET_ARCH_DBC |