libmicroemu
0.2.0
ARM Microcontroller Emulator Library
Loading...
Searching...
No Matches
src
libmicroemu
internal
logic
imm_shift_results.h
1
#pragma once
2
#include "libmicroemu/types.h"
3
4
namespace
libmicroemu::internal
{
5
6
enum class
SRType : uint8_t {
7
SRType_None = 0U,
8
SRType_LSL = 1U,
9
SRType_LSR = 2U,
10
SRType_ASR = 3U,
11
SRType_ROR = 4U,
12
SRType_RRX = 5U
13
};
14
15
struct
ImmShiftResults
{
16
SRType type;
17
uint8_t value;
18
// ----
19
const
char
*GetShiftTypeAsStr()
const
{
return
TypeToStr(type); }
20
static
const
char
*TypeToStr(SRType shift_type) {
21
switch
(shift_type) {
22
case
SRType::SRType_None: {
23
return
"NONE"
;
24
}
25
case
SRType::SRType_LSL: {
26
return
"LSL"
;
27
}
28
case
SRType::SRType_LSR: {
29
return
"LSR"
;
30
}
31
case
SRType::SRType_ASR: {
32
return
"ASR"
;
33
}
34
case
SRType::SRType_ROR: {
35
return
"ROR"
;
36
}
37
case
SRType::SRType_RRX: {
38
return
"RRX"
;
39
}
40
default
:
41
break
;
42
}
43
return
"invalid"
;
44
}
45
};
46
47
}
// namespace libmicroemu::internal
libmicroemu::internal
The libmicroemu::internal namespace contains all classes and functions of libmicroemu which are priva...
Definition
bkpt_flags.h:6
libmicroemu::internal::ImmShiftResults
Definition
imm_shift_results.h:15
Generated by
1.13.2