2#include "libmicroemu/internal/decoder/decoder.h"
3#include "libmicroemu/internal/executor/instr/post_exec.h"
4#include "libmicroemu/internal/executor/instr_context.h"
5#include "libmicroemu/internal/executor/instr_exec_results.h"
7#include "libmicroemu/internal/utils/rarg.h"
8#include "libmicroemu/register_details.h"
9#include "libmicroemu/types.h"
18template <
typename TInstrContext>
class Nop0Op {
21 PostExecAdvancePcAndIt::Call(ictx, iflags);
22 return Ok(kNoInstrExecFlags);
34template <
typename TInstrContext>
class Dmb0Op {
37 PostExecAdvancePcAndIt::Call(ictx, iflags);
38 return Ok(kNoInstrExecFlags);
42template <
typename TOp,
typename TInstrContext>
class NullaryInstr {
44 using It =
typename TInstrContext::It;
45 using Pc =
typename TInstrContext::Pc;
50 if (!condition_passed) {
51 PostExecAdvancePcAndIt::Call(ictx, iflags);
63 NullaryInstr() =
delete;
68 ~NullaryInstr() =
delete;
74 NullaryInstr(
const NullaryInstr &r_src) =
delete;
80 NullaryInstr &operator=(
const NullaryInstr &r_src) =
delete;
86 NullaryInstr(NullaryInstr &&r_src) =
delete;
92 NullaryInstr &operator=(NullaryInstr &&r_src) =
delete;
Dmb instruction.
Definition nullary_instr.h:34
Nop instruction.
Definition nullary_instr.h:18
The libmicroemu::internal namespace contains all classes and functions of libmicroemu which are priva...
Definition bkpt_flags.h:6
Contains the Result class which is used to return the result of a function.
#define TRY_ASSIGN(NAME, OUT_TYPE, CALL)
Try to assign a value to a variable and return an error if the assignment fails.
Definition result.h:123
Definition instr_exec_results.h:23