11template <
typename TContext>
class MnemonicBuilderBinaryNullInstr {
13 using It =
typename TContext::It;
14 using Reg =
typename TContext::Reg;
15 using SReg =
typename TContext::SReg;
17 template <
typename TArg0,
typename TArg1>
18 static void Build(
const char *instr_spec, TContext &mctx,
const MnemonicBuilderFlagsSet &bflags,
19 const InstrFlagsSet &iflags,
const TArg0 &rm,
const TArg1 &rn,
20 const char *shift_str) {
21 static_cast<void>(instr_spec);
22 static_cast<void>(bflags);
23 static_cast<void>(iflags);
25 mctx.builder.AddString(instr_spec)
26 .AddString(It::GetConditionAsStr(mctx.cpua))
28 .AddString(Reg::GetRegisterName(rn.Get()))
30 .AddString(Reg::GetRegisterName(rm.Get()))
34 mctx.builder.Terminate();
41 MnemonicBuilderBinaryNullInstr() =
delete;
46 ~MnemonicBuilderBinaryNullInstr() =
delete;
52 MnemonicBuilderBinaryNullInstr(
const MnemonicBuilderBinaryNullInstr &r_src) =
default;
58 MnemonicBuilderBinaryNullInstr &operator=(
const MnemonicBuilderBinaryNullInstr &r_src) =
delete;
64 MnemonicBuilderBinaryNullInstr(MnemonicBuilderBinaryNullInstr &&r_src) =
delete;
70 MnemonicBuilderBinaryNullInstr &operator=(MnemonicBuilderBinaryNullInstr &&r_src) =
delete;