blob: 1a9fc205258b8da5fa8b136a2b395307066a2aa0 [file] [log] [blame]
Johnny Chen5cb6cab2011-07-19 22:41:47 +00001//===-- SWIG Interface for SBInstruction ------------------------*- C++ -*-===//
2//
3// The LLVM Compiler Infrastructure
4//
5// This file is distributed under the University of Illinois Open Source
6// License. See LICENSE.TXT for details.
7//
8//===----------------------------------------------------------------------===//
9
10#include <stdio.h>
11
12// There's a lot to be fixed here, but need to wait for underlying insn implementation
13// to be revised & settle down first.
14
15namespace lldb {
16
17class SBInstruction
18{
19public:
20
21 SBInstruction ();
22
23 SBInstruction (const SBInstruction &rhs);
24
25 ~SBInstruction ();
26
27 bool
28 IsValid();
29
30 SBAddress
31 GetAddress();
32
33 size_t
34 GetByteSize ();
35
36 bool
37 DoesBranch ();
38
39 void
40 Print (FILE *out);
41
42 bool
43 GetDescription (lldb::SBStream &description);
44
45 bool
46 EmulateWithFrame (lldb::SBFrame &frame, uint32_t evaluate_options);
47
48 bool
49 DumpEmulation (const char * triple); // triple is to specify the architecture, e.g. 'armv6' or 'arm-apple-darwin'
50
51 bool
52 TestEmulation (lldb::SBStream &output_stream, const char *test_file);
53};
54
55} // namespace lldb