// Copyright (c) 2011, 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/compiler/assembler/disassembler.h" #include "vm/compiler/assembler/assembler.h" #include "vm/unit_test.h" #include "vm/virtual_memory.h" namespace dart { #if !defined(PRODUCT) ISOLATE_UNIT_TEST_CASE(Disassembler) { compiler::ObjectPoolBuilder object_pool_builder; compiler::Assembler assembler(&object_pool_builder); // The used instructions work on all platforms. Register reg = static_cast(0); assembler.PopRegister(reg); assembler.Stop("testing disassembler"); // Only verify that the disassembler does not crash. AssemblerTest test("Disassembler", &assembler); test.Assemble(); Disassembler::Disassemble(test.entry(), test.entry() + assembler.CodeSize()); } #endif // !PRODUCT } // namespace dart