PROLEAD
A Probing-Based Leakage Detection Tool for Hardware and Software
Loading...
Searching...
No Matches
Projects
PROLEAD
inc
Software
mulator
mnemonics.h
Go to the documentation of this file.
1
#pragma once
2
3
#include <string>
4
#include <ostream>
5
6
namespace
mulator
7
{
8
9
enum class
Mnemonic
10
{
11
ADC
,
12
ADD
,
13
ADR
,
14
AND
,
15
ASR
,
16
B
,
17
BIC
,
18
BKPT
,
19
BL
,
20
BLX
,
21
BX
,
22
CMN
,
23
CMP
,
24
CPS
,
25
DMB
,
26
DSB
,
27
EOR
,
28
ISB
,
29
LDM
,
30
LDR
,
31
LDRB
,
32
LDRH
,
33
LDRSB
,
34
LDRSH
,
35
LSL
,
36
LSR
,
37
MOV
,
38
MRS
,
39
MSR
,
40
MUL
,
41
MVN
,
42
NOP
,
43
ORR
,
44
POP
,
45
PUSH
,
46
REV
,
47
REV16
,
48
REVSH
,
49
ROR
,
50
RSB
,
51
SBC
,
52
SEV
,
53
STM
,
54
STR
,
55
STRB
,
56
STRH
,
57
SUB
,
58
SVC
,
59
SXTB
,
60
SXTH
,
61
TST
,
62
UDF
,
63
UXTB
,
64
UXTH
,
65
WFE
,
66
WFI
,
67
YIELD
,
68
69
// armv7m only
70
ADDW
,
71
BFC
,
72
BFI
,
73
CBZ
,
74
CBNZ
,
75
CLREX
,
76
CLZ
,
77
CSDB
,
78
DBG
,
79
IT
,
80
LDMDB
,
81
LDRBT
,
82
LDRD
,
83
LDREX
,
84
LDREXB
,
85
LDREXH
,
86
LDRHT
,
87
LDRSBT
,
88
LDRSHT
,
89
LDRT
,
90
MLA
,
91
MLS
,
92
MOVT
,
93
MOVW
,
94
ORN
,
95
PLD
,
96
PLI
,
97
PSSBB
,
98
RBIT
,
99
RRX
,
100
SBFX
,
101
SDIV
,
102
SMLAL
,
103
SMULL
,
104
SSAT
,
105
SSBB
,
106
STMDB
,
107
STRBT
,
108
STRD
,
109
STREX
,
110
STREXB
,
111
STREXH
,
112
STRHT
,
113
STRT
,
114
SUBW
,
115
TBB
,
116
TBH
,
117
TEQ
,
118
UBFX
,
119
UDIV
,
120
UMLAL
,
121
UMULL
,
122
USAT
,
123
124
// armv7e-m only
125
UADD8
,
126
SEL
,
127
USUB16
,
128
UADD16
,
129
PKHTB
,
130
PKHBT
,
131
SMULBB
,
132
SMULBT
,
133
SMULTB
,
134
SMULTT
,
135
SMLABB
,
136
SMLABT
,
137
SMLATB
,
138
SMLATT
,
139
QADD
,
140
QADD16
,
141
QADD8
,
142
QASX
,
143
QDADD
,
144
QDSUB
,
145
USUB8
,
146
UXTAB
,
147
UXTAB16
,
148
UXTAH
,
149
UXTB16
,
150
USAX
,
151
SSUB16
,
152
SSUB8
,
153
SXTAB
,
154
SXTAB16
,
155
SXTAH
,
156
UASX
,
157
UHADD16
,
158
UHSUB8
,
//--
159
QSAX
,
160
QSUB
,
161
SHADD16
,
162
SMLALD
,
163
SHADD8
,
164
SMLALDX
,
165
QSUB16
,
166
SHASX
,
167
SMLAD
,
168
SMLAWB
,
169
QSUB8
,
170
SHSAX
,
171
SMLADX
,
172
SMLAWT
,
173
SADD16
,
174
SHSUB16
,
175
SMLALBB
,
176
SMLSD
,
177
SADD8
,
178
SHSUB8
,
179
SMLALBT
,
180
SMLSDX
,
181
SMLSLD
,
182
SMLSLDX
,
183
SMMLA
,
184
SMMLAR
,
185
SMMLS
,
186
SMMLSR
,
187
SMMUL
,
188
SMMULR
,
189
SMUAD
,
190
SMUADX
,
191
SMULWB
,
192
SMULWT
,
193
SMUSD
,
194
SMUSDX
,
195
SSAT16
,
196
SSAX
,
197
UMAAL
,
198
UQADD16
,
199
UQADD8
,
200
UQASX
,
201
UQSAX
,
202
UQSUB16
,
203
UQSUB8
,
204
USAD8
,
205
USADA8
,
206
USAT16
,
207
SASX
,
208
SMLALTT
,
209
SMLALTB
210
211
};
212
213
std::string
to_string
(
const
Mnemonic
& x);
214
std::ostream&
operator<<
(std::ostream& os,
const
Mnemonic
& x);
215
216
bool
has_narrow_encoding
(
const
Mnemonic
& x);
217
bool
has_wide_encoding
(
const
Mnemonic
& x);
218
219
}
mulator
Definition:
architectures.h:7
mulator::to_string
std::string to_string(const Architecture &x)
mulator::Mnemonic
Mnemonic
Definition:
mnemonics.h:10
mulator::Mnemonic::SMMULR
@ SMMULR
mulator::Mnemonic::SMMLS
@ SMMLS
mulator::Mnemonic::UXTAB
@ UXTAB
mulator::Mnemonic::QADD16
@ QADD16
mulator::Mnemonic::BKPT
@ BKPT
mulator::Mnemonic::STM
@ STM
mulator::Mnemonic::QSUB
@ QSUB
mulator::Mnemonic::UASX
@ UASX
mulator::Mnemonic::PLD
@ PLD
mulator::Mnemonic::UMULL
@ UMULL
mulator::Mnemonic::LDREXH
@ LDREXH
mulator::Mnemonic::SMLABB
@ SMLABB
mulator::Mnemonic::MRS
@ MRS
mulator::Mnemonic::STRHT
@ STRHT
mulator::Mnemonic::QADD8
@ QADD8
mulator::Mnemonic::MOV
@ MOV
mulator::Mnemonic::MLS
@ MLS
mulator::Mnemonic::LDREX
@ LDREX
mulator::Mnemonic::MOVW
@ MOVW
mulator::Mnemonic::ADR
@ ADR
mulator::Mnemonic::YIELD
@ YIELD
mulator::Mnemonic::ISB
@ ISB
mulator::Mnemonic::NOP
@ NOP
mulator::Mnemonic::ASR
@ ASR
mulator::Mnemonic::SMULBB
@ SMULBB
mulator::Mnemonic::SUB
@ SUB
mulator::Mnemonic::SMLSLDX
@ SMLSLDX
mulator::Mnemonic::SMLATB
@ SMLATB
mulator::Mnemonic::EOR
@ EOR
mulator::Mnemonic::UQSUB16
@ UQSUB16
mulator::Mnemonic::SSAT
@ SSAT
mulator::Mnemonic::USAT16
@ USAT16
mulator::Mnemonic::RBIT
@ RBIT
mulator::Mnemonic::LDMDB
@ LDMDB
mulator::Mnemonic::MUL
@ MUL
mulator::Mnemonic::QSAX
@ QSAX
mulator::Mnemonic::SADD8
@ SADD8
mulator::Mnemonic::LSL
@ LSL
mulator::Mnemonic::STREXH
@ STREXH
mulator::Mnemonic::SBFX
@ SBFX
mulator::Mnemonic::SSBB
@ SSBB
mulator::Mnemonic::SEV
@ SEV
mulator::Mnemonic::STRB
@ STRB
mulator::Mnemonic::PLI
@ PLI
mulator::Mnemonic::RRX
@ RRX
mulator::Mnemonic::USUB8
@ USUB8
mulator::Mnemonic::SHSUB16
@ SHSUB16
mulator::Mnemonic::SMLALTB
@ SMLALTB
mulator::Mnemonic::DSB
@ DSB
mulator::Mnemonic::STR
@ STR
mulator::Mnemonic::BFI
@ BFI
mulator::Mnemonic::SXTAB16
@ SXTAB16
mulator::Mnemonic::PSSBB
@ PSSBB
mulator::Mnemonic::TEQ
@ TEQ
mulator::Mnemonic::SSUB8
@ SSUB8
mulator::Mnemonic::TST
@ TST
mulator::Mnemonic::CBNZ
@ CBNZ
mulator::Mnemonic::UHSUB8
@ UHSUB8
mulator::Mnemonic::ADDW
@ ADDW
mulator::Mnemonic::STRH
@ STRH
mulator::Mnemonic::BFC
@ BFC
mulator::Mnemonic::LDREXB
@ LDREXB
mulator::Mnemonic::WFI
@ WFI
mulator::Mnemonic::AND
@ AND
mulator::Mnemonic::UDIV
@ UDIV
mulator::Mnemonic::SHASX
@ SHASX
mulator::Mnemonic::LDRSBT
@ LDRSBT
mulator::Mnemonic::CMP
@ CMP
mulator::Mnemonic::SMLALBT
@ SMLALBT
mulator::Mnemonic::SMMLAR
@ SMMLAR
mulator::Mnemonic::SMULTB
@ SMULTB
mulator::Mnemonic::UADD16
@ UADD16
mulator::Mnemonic::CLREX
@ CLREX
mulator::Mnemonic::UQADD8
@ UQADD8
mulator::Mnemonic::RSB
@ RSB
mulator::Mnemonic::ORN
@ ORN
mulator::Mnemonic::LDR
@ LDR
mulator::Mnemonic::SMUADX
@ SMUADX
mulator::Mnemonic::UDF
@ UDF
mulator::Mnemonic::ADC
@ ADC
mulator::Mnemonic::SHADD16
@ SHADD16
mulator::Mnemonic::PUSH
@ PUSH
mulator::Mnemonic::SMLSD
@ SMLSD
mulator::Mnemonic::UXTH
@ UXTH
mulator::Mnemonic::SMLALDX
@ SMLALDX
mulator::Mnemonic::SMMUL
@ SMMUL
mulator::Mnemonic::SMULTT
@ SMULTT
mulator::Mnemonic::LDRD
@ LDRD
mulator::Mnemonic::LDRB
@ LDRB
mulator::Mnemonic::CSDB
@ CSDB
mulator::Mnemonic::UADD8
@ UADD8
mulator::Mnemonic::SMLAD
@ SMLAD
mulator::Mnemonic::SMULWT
@ SMULWT
mulator::Mnemonic::UXTAH
@ UXTAH
mulator::Mnemonic::PKHBT
@ PKHBT
mulator::Mnemonic::STRBT
@ STRBT
mulator::Mnemonic::STMDB
@ STMDB
mulator::Mnemonic::SMULBT
@ SMULBT
mulator::Mnemonic::TBH
@ TBH
mulator::Mnemonic::LDM
@ LDM
mulator::Mnemonic::QSUB16
@ QSUB16
mulator::Mnemonic::SMLAWT
@ SMLAWT
mulator::Mnemonic::MSR
@ MSR
mulator::Mnemonic::LDRT
@ LDRT
mulator::Mnemonic::QDSUB
@ QDSUB
mulator::Mnemonic::SVC
@ SVC
mulator::Mnemonic::SUBW
@ SUBW
mulator::Mnemonic::SHADD8
@ SHADD8
mulator::Mnemonic::TBB
@ TBB
mulator::Mnemonic::PKHTB
@ PKHTB
mulator::Mnemonic::CLZ
@ CLZ
mulator::Mnemonic::UXTB16
@ UXTB16
mulator::Mnemonic::MLA
@ MLA
mulator::Mnemonic::SMUAD
@ SMUAD
mulator::Mnemonic::SMLADX
@ SMLADX
mulator::Mnemonic::LDRHT
@ LDRHT
mulator::Mnemonic::SASX
@ SASX
mulator::Mnemonic::SMULWB
@ SMULWB
mulator::Mnemonic::SXTAB
@ SXTAB
mulator::Mnemonic::SMLABT
@ SMLABT
mulator::Mnemonic::USAD8
@ USAD8
mulator::Mnemonic::B
@ B
mulator::Mnemonic::ADD
@ ADD
mulator::Mnemonic::UXTAB16
@ UXTAB16
mulator::Mnemonic::UMLAL
@ UMLAL
mulator::Mnemonic::SMLSLD
@ SMLSLD
mulator::Mnemonic::SMLAWB
@ SMLAWB
mulator::Mnemonic::SADD16
@ SADD16
mulator::Mnemonic::SMLALBB
@ SMLALBB
mulator::Mnemonic::DBG
@ DBG
mulator::Mnemonic::BL
@ BL
mulator::Mnemonic::LDRBT
@ LDRBT
mulator::Mnemonic::LSR
@ LSR
mulator::Mnemonic::USAX
@ USAX
mulator::Mnemonic::REVSH
@ REVSH
mulator::Mnemonic::CPS
@ CPS
mulator::Mnemonic::SXTB
@ SXTB
mulator::Mnemonic::LDRSHT
@ LDRSHT
mulator::Mnemonic::QDADD
@ QDADD
mulator::Mnemonic::SXTAH
@ SXTAH
mulator::Mnemonic::SHSAX
@ SHSAX
mulator::Mnemonic::USADA8
@ USADA8
mulator::Mnemonic::UQSAX
@ UQSAX
mulator::Mnemonic::SSUB16
@ SSUB16
mulator::Mnemonic::LDRSB
@ LDRSB
mulator::Mnemonic::SSAT16
@ SSAT16
mulator::Mnemonic::QSUB8
@ QSUB8
mulator::Mnemonic::BIC
@ BIC
mulator::Mnemonic::WFE
@ WFE
mulator::Mnemonic::UXTB
@ UXTB
mulator::Mnemonic::SBC
@ SBC
mulator::Mnemonic::SMLALTT
@ SMLALTT
mulator::Mnemonic::SMLSDX
@ SMLSDX
mulator::Mnemonic::MOVT
@ MOVT
mulator::Mnemonic::SEL
@ SEL
mulator::Mnemonic::SXTH
@ SXTH
mulator::Mnemonic::SDIV
@ SDIV
mulator::Mnemonic::BX
@ BX
mulator::Mnemonic::STRT
@ STRT
mulator::Mnemonic::IT
@ IT
mulator::Mnemonic::SMMLSR
@ SMMLSR
mulator::Mnemonic::ORR
@ ORR
mulator::Mnemonic::SMMLA
@ SMMLA
mulator::Mnemonic::SMUSD
@ SMUSD
mulator::Mnemonic::CMN
@ CMN
mulator::Mnemonic::REV
@ REV
mulator::Mnemonic::SMLATT
@ SMLATT
mulator::Mnemonic::ROR
@ ROR
mulator::Mnemonic::UBFX
@ UBFX
mulator::Mnemonic::MVN
@ MVN
mulator::Mnemonic::SMLALD
@ SMLALD
mulator::Mnemonic::SMUSDX
@ SMUSDX
mulator::Mnemonic::USUB16
@ USUB16
mulator::Mnemonic::UQASX
@ UQASX
mulator::Mnemonic::QADD
@ QADD
mulator::Mnemonic::CBZ
@ CBZ
mulator::Mnemonic::BLX
@ BLX
mulator::Mnemonic::SMLAL
@ SMLAL
mulator::Mnemonic::SMULL
@ SMULL
mulator::Mnemonic::STREX
@ STREX
mulator::Mnemonic::QASX
@ QASX
mulator::Mnemonic::USAT
@ USAT
mulator::Mnemonic::STREXB
@ STREXB
mulator::Mnemonic::DMB
@ DMB
mulator::Mnemonic::POP
@ POP
mulator::Mnemonic::LDRH
@ LDRH
mulator::Mnemonic::SHSUB8
@ SHSUB8
mulator::Mnemonic::UQSUB8
@ UQSUB8
mulator::Mnemonic::LDRSH
@ LDRSH
mulator::Mnemonic::UMAAL
@ UMAAL
mulator::Mnemonic::SSAX
@ SSAX
mulator::Mnemonic::UQADD16
@ UQADD16
mulator::Mnemonic::REV16
@ REV16
mulator::Mnemonic::STRD
@ STRD
mulator::Mnemonic::UHADD16
@ UHADD16
mulator::operator<<
std::ostream & operator<<(std::ostream &os, const Architecture &x)
mulator::has_wide_encoding
bool has_wide_encoding(const Mnemonic &x)
mulator::has_narrow_encoding
bool has_narrow_encoding(const Mnemonic &x)
Generated by
1.9.6