Main Page
Related Pages
Modules
Namespaces
Namespace List
Namespace Members
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
y
z
Enumerations
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
r
s
t
u
v
w
Enumerator
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
z
Classes
Class List
Class Hierarchy
Class Members
All
:
[
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Functions
[
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
y
Enumerations
a
b
c
d
e
f
h
i
k
l
m
n
o
p
r
s
t
u
v
w
Enumerator
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
z
Properties
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
Related Functions
:
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
q
r
s
t
u
v
w
z
Files
File List
File Members
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Enumerations
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
r
s
t
u
v
w
x
Enumerator
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
x
Macros
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
grpc
third_party
bloaty
third_party
capstone
bindings
java
capstone
Sparc.java
Go to the documentation of this file.
1
// Capstone Java binding
2
// By Nguyen Anh Quynh & Dang Hoang Vu, 2013
3
4
package
capstone;
5
6
import
com
.sun.jna.Structure;
7
import
com
.sun.jna.Union;
8
9
import
java
.util.List;
10
import
java
.util.Arrays;
11
12
import
static
capstone
.
Sparc_const
.*;
13
14
public
class
Sparc
{
15
16
public
static
class
MemType
extends
Structure {
17
public
byte
base
;
18
public
byte
index
;
19
public
int
disp
;
20
21
@Override
22
public
List
getFieldOrder
() {
23
return
Arrays.asList(
"base"
,
"index"
,
"disp"
);
24
}
25
}
26
27
public
static
class
OpValue
extends
Union {
28
public
int
reg
;
29
public
int
imm
;
30
public
MemType
mem
;
31
}
32
33
public
static
class
Operand
extends
Structure {
34
public
int
type
;
35
public
OpValue
value
;
36
37
public
void
read
() {
38
readField(
"type"
);
39
if
(
type
==
SPARC_OP_MEM
)
40
value
.setType(
MemType
.class);
41
if
(
type
==
SPARC_OP_IMM
||
type
==
SPARC_OP_REG
)
42
value
.setType(Integer.TYPE);
43
if
(
type
==
SPARC_OP_INVALID
)
44
return
;
45
readField(
"value"
);
46
}
47
48
@Override
49
public
List
getFieldOrder
() {
50
return
Arrays.asList(
"type"
,
"value"
);
51
}
52
}
53
54
public
static
class
UnionOpInfo
extends
Capstone.
UnionOpInfo
{
55
public
int
cc
;
56
public
int
hint
;
57
public
byte
op_count
;
58
59
public
Operand
[]
op
;
60
61
public
UnionOpInfo
() {
62
op
=
new
Operand
[4];
63
}
64
65
public
void
read
() {
66
readField(
"cc"
);
67
readField(
"hint"
);
68
readField(
"op_count"
);
69
op
=
new
Operand
[
op_count
];
70
if
(
op_count
!= 0)
71
readField(
"op"
);
72
}
73
74
@Override
75
public
List
getFieldOrder
() {
76
return
Arrays.asList(
"cc"
,
"hint"
,
"op_count"
,
"op"
);
77
}
78
}
79
80
public
static
class
OpInfo
extends
Capstone.
OpInfo
{
81
public
int
cc
;
82
public
int
hint
;
83
84
public
Operand
[]
op
;
85
86
public
OpInfo
(
UnionOpInfo
op_info) {
87
cc
= op_info.
cc
;
88
hint
= op_info.
hint
;
89
op
= op_info.
op
;
90
}
91
}
92
}
SPARC_OP_IMM
@ SPARC_OP_IMM
= CS_OP_IMM (Immediate operand).
Definition:
sparc.h:73
capstone.Sparc.OpInfo.op
Operand[] op
Definition:
Sparc.java:84
capstone.Sparc.UnionOpInfo.op_count
byte op_count
Definition:
Sparc.java:57
capstone.Sparc.UnionOpInfo.cc
int cc
Definition:
Sparc.java:55
capstone.Sparc.Operand.getFieldOrder
List getFieldOrder()
Definition:
Sparc.java:49
capstone.Sparc.UnionOpInfo.hint
int hint
Definition:
Sparc.java:56
capstone.Sparc.UnionOpInfo.UnionOpInfo
UnionOpInfo()
Definition:
Sparc.java:61
capstone.Sparc.Operand.type
int type
Definition:
Sparc.java:34
capstone.Sparc.Operand.value
OpValue value
Definition:
Sparc.java:35
capstone.Sparc.MemType
Definition:
Sparc.java:16
capstone.Sparc
Definition:
Sparc.java:14
capstone.Sparc.UnionOpInfo.getFieldOrder
List getFieldOrder()
Definition:
Sparc.java:75
capstone.Sparc.OpInfo.hint
int hint
Definition:
Sparc.java:82
capstone.Sparc.UnionOpInfo
Definition:
Sparc.java:54
capstone.Sparc.OpValue
Definition:
Sparc.java:27
SPARC_OP_INVALID
@ SPARC_OP_INVALID
= CS_OP_INVALID (Uninitialized).
Definition:
sparc.h:71
capstone.Sparc.MemType.index
byte index
Definition:
Sparc.java:18
capstone.Sparc.OpValue.reg
int reg
Definition:
Sparc.java:28
SPARC_OP_REG
@ SPARC_OP_REG
= CS_OP_REG (Register operand).
Definition:
sparc.h:72
capstone.Sparc.MemType.disp
int disp
Definition:
Sparc.java:19
capstone.Sparc.OpInfo
Definition:
Sparc.java:80
capstone.Sparc.MemType.base
byte base
Definition:
Sparc.java:17
capstone
Definition:
Arm.java:4
capstone.Sparc.UnionOpInfo.read
void read()
Definition:
Sparc.java:65
capstone.Sparc.Operand.read
void read()
Definition:
Sparc.java:37
java
capstone.Sparc.OpInfo.cc
int cc
Definition:
Sparc.java:81
capstone.Sparc.MemType.getFieldOrder
List getFieldOrder()
Definition:
Sparc.java:22
capstone.Sparc.OpValue.imm
int imm
Definition:
Sparc.java:29
capstone.Sparc.OpInfo.OpInfo
OpInfo(UnionOpInfo op_info)
Definition:
Sparc.java:86
capstone.Sparc_const
Definition:
Sparc_const.java:4
com
capstone.Sparc.UnionOpInfo.op
Operand[] op
Definition:
Sparc.java:59
capstone.Sparc.Operand
Definition:
Sparc.java:33
SPARC_OP_MEM
@ SPARC_OP_MEM
= CS_OP_MEM (Memory operand).
Definition:
sparc.h:74
capstone.Sparc.OpValue.mem
MemType mem
Definition:
Sparc.java:30
grpc
Author(s):
autogenerated on Thu Mar 13 2025 03:01:20