1// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
2// for details. All rights reserved. Use of this source code is governed by a
3// BSD-style license that can be found in the LICENSE file.
4
5#include "vm/globals.h"
6#if defined(TARGET_ARCH_IA32)
7
8#include "vm/compiler/assembler/assembler.h"
9#include "vm/instructions.h"
10#include "vm/object.h"
11#include "vm/stub_code.h"
12#include "vm/unit_test.h"
13#include "vm/virtual_memory.h"
14
15namespace dart {
16
17#define __ assembler->
18
19ASSEMBLER_TEST_GENERATE(Call, assembler) {
20 compiler::ExternalLabel label(StubCode::InvokeDartCode().EntryPoint());
21 __ call(&label);
22 __ ret();
23}
24
25ASSEMBLER_TEST_RUN(Call, test) {
26 CallPattern call(test->entry());
27 EXPECT_EQ(StubCode::InvokeDartCode().EntryPoint(), call.TargetAddress());
28}
29
30} // namespace dart
31
32#endif // defined TARGET_ARCH_IA32
33