示例#1
0
 public static void Tbz(AILEmitterCtx Context) => EmitTb(Context, OpCodes.Beq);
示例#2
0
 public static void EmitScalarTernaryRaOpF(AILEmitterCtx Context, Action Emit)
 {
     EmitScalarOpF(Context, Emit, OperFlags.RaRnRm);
 }
示例#3
0
 public static void EmitSse41Call(AILEmitterCtx Context, string Name)
 {
     EmitSseCall(Context, Name, typeof(Sse41));
 }
示例#4
0
        public static void EmitScalarBinaryOpByElemF(AILEmitterCtx Context, Action Emit)
        {
            AOpCodeSimdRegElemF Op = (AOpCodeSimdRegElemF)Context.CurrOp;

            EmitScalarOpByElemF(Context, Emit, Op.Index, Ternary: false);
        }
示例#5
0
 public static void EmitScalarTernaryOpZx(AILEmitterCtx Context, Action Emit)
 {
     EmitScalarOp(Context, Emit, OperFlags.RdRnRm, false);
 }
示例#6
0
 private static void EmitVectorUcvtf(AILEmitterCtx Context)
 {
     EmitVectorCvtf(Context, false);
 }
示例#7
0
 private static void EmitVectorFcvtzu(AILEmitterCtx Context)
 {
     EmitVectorFcvtz(Context, false);
 }
示例#8
0
 public static void Fcvtzu_Gp(AILEmitterCtx Context)
 {
     EmitFcvt_u_Gp(Context, () => { });
 }
示例#9
0
 public static void Fcvtzu_Gp_Fix(AILEmitterCtx Context)
 {
     EmitFcvtzu_Gp_Fix(Context);
 }
示例#10
0
 public static void Fcvtnu_V(AILEmitterCtx Context)
 {
     EmitFcvtn(Context, Signed: false, Scalar: false);
 }
示例#11
0
 public static void Fcvtpu_Gp(AILEmitterCtx Context)
 {
     EmitFcvt_u_Gp(Context, () => EmitUnaryMathCall(Context, nameof(Math.Ceiling)));
 }
示例#12
0
 public static void Fcvtns_S(AILEmitterCtx Context)
 {
     EmitFcvtn(Context, Signed: true, Scalar: true);
 }
示例#13
0
 public static void Fcvtmu_Gp(AILEmitterCtx Context)
 {
     EmitFcvt_u_Gp(Context, () => EmitUnaryMathCall(Context, nameof(Math.Floor)));
 }
示例#14
0
        public static void B_Cond(AILEmitterCtx Context)
        {
            AOpCodeBImmCond Op = (AOpCodeBImmCond)Context.CurrOp;

            EmitBranch(Context, Op.Cond);
        }
示例#15
0
 private static void EmitFcvtzu_Gp_Fix(AILEmitterCtx Context)
 {
     EmitFcvtz__Gp_Fix(Context, false);
 }
示例#16
0
 public static void Fcvtzu_S(AILEmitterCtx Context)
 {
     EmitScalarFcvtzu(Context);
 }
示例#17
0
 private static void EmitVectorScvtf(AILEmitterCtx Context)
 {
     EmitVectorCvtf(Context, true);
 }
示例#18
0
 public static void Fcvtzu_V(AILEmitterCtx Context)
 {
     EmitVectorFcvtzu(Context);
 }
示例#19
0
 private static void EmitVectorFcvtzs(AILEmitterCtx Context)
 {
     EmitVectorFcvtz(Context, true);
 }
示例#20
0
 public static void Scvtf_V(AILEmitterCtx Context)
 {
     EmitVectorCvtf(Context, Signed: true);
 }
示例#21
0
 public static void Fcvtau_Gp(AILEmitterCtx Context)
 {
     EmitFcvt_u_Gp(Context, () => EmitRoundMathCall(Context, MidpointRounding.AwayFromZero));
 }
示例#22
0
 public static void Ucvtf_V(AILEmitterCtx Context)
 {
     EmitVectorCvtf(Context, Signed: false);
 }
示例#23
0
 public static void EmitScalarBinaryOpSx(AILEmitterCtx Context, Action Emit)
 {
     EmitScalarOp(Context, Emit, OperFlags.RnRm, true);
 }
示例#24
0
 private static void EmitFcvt_s_Gp(AILEmitterCtx Context, Action Emit)
 {
     EmitFcvt___Gp(Context, Emit, true);
 }
示例#25
0
 public static void EmitScalarUnaryOpF(AILEmitterCtx Context, Action Emit)
 {
     EmitScalarOpF(Context, Emit, OperFlags.Rn);
 }
示例#26
0
 private static void EmitFcvt_u_Gp(AILEmitterCtx Context, Action Emit)
 {
     EmitFcvt___Gp(Context, Emit, false);
 }
示例#27
0
 public static void EmitVectorTernaryOpF(AILEmitterCtx Context, Action Emit)
 {
     EmitVectorOpF(Context, Emit, OperFlags.RdRnRm);
 }
示例#28
0
 private static void EmitFcvtzs_Gp_Fix(AILEmitterCtx Context)
 {
     EmitFcvtz__Gp_Fix(Context, true);
 }
示例#29
0
        public static void EmitVectorTernaryOpByElemF(AILEmitterCtx Context, Action Emit)
        {
            AOpCodeSimdRegElemF Op = (AOpCodeSimdRegElemF)Context.CurrOp;

            EmitVectorOpByElemF(Context, Emit, Op.Index, Ternary: true);
        }
示例#30
0
 public static void Tbnz(AILEmitterCtx Context) => EmitTb(Context, OpCodes.Bne_Un);