| Index: runtime/vm/assembler_arm64.cc
|
| ===================================================================
|
| --- runtime/vm/assembler_arm64.cc (revision 35109)
|
| +++ runtime/vm/assembler_arm64.cc (working copy)
|
| @@ -20,7 +20,7 @@
|
|
|
| namespace dart {
|
|
|
| -DEFINE_FLAG(bool, print_stop_message, true, "Print stop message.");
|
| +DEFINE_FLAG(bool, print_stop_message, false, "Print stop message.");
|
| DECLARE_FLAG(bool, inline_alloc);
|
|
|
|
|
| @@ -63,11 +63,6 @@
|
| }
|
|
|
|
|
| -void Assembler::Stop(const char* message) {
|
| - UNIMPLEMENTED();
|
| -}
|
| -
|
| -
|
| void Assembler::Emit(int32_t value) {
|
| AssemblerBuffer::EnsureCapacity ensured(&buffer_);
|
| buffer_.Emit<int32_t>(value);
|
| @@ -119,6 +114,19 @@
|
| }
|
|
|
|
|
| +void Assembler::Stop(const char* message) {
|
| + if (FLAG_print_stop_message) {
|
| + UNIMPLEMENTED();
|
| + }
|
| + Label stop;
|
| + b(&stop);
|
| + Emit(Utils::Low32Bits(reinterpret_cast<int64_t>(message)));
|
| + Emit(Utils::High32Bits(reinterpret_cast<int64_t>(message)));
|
| + Bind(&stop);
|
| + hlt(kImmExceptionIsDebug);
|
| +}
|
| +
|
| +
|
| static int CountLeadingZeros(uint64_t value, int width) {
|
| ASSERT((width == 32) || (width == 64));
|
| if (value == 0) {
|
|
|