public static void EmitScalarOp(AILEmitterCtx Context, Action Emit, OperFlags Opers, bool Signed) { AOpCodeSimd Op = (AOpCodeSimd)Context.CurrOp; if (Opers.HasFlag(OperFlags.Rd)) { EmitVectorExtract(Context, Op.Rd, 0, Op.Size, Signed); } if (Opers.HasFlag(OperFlags.Rn)) { EmitVectorExtract(Context, Op.Rn, 0, Op.Size, Signed); } if (Opers.HasFlag(OperFlags.Rm)) { EmitVectorExtract(Context, ((AOpCodeSimdReg)Op).Rm, 0, Op.Size, Signed); } Emit(); EmitScalarSet(Context, Op.Rd, Op.Size); }