コード例 #1
0
ファイル: OpenRISCRewriter.cs プロジェクト: ntzwq/reko
        private void CV(Identifier dst)
        {
            var cv = binder.EnsureFlagGroup(arch.GetFlagGroup(Registers.sr, (uint)(FlagM.CY | FlagM.OV)));

            m.Assign(cv, m.Cond(dst));
        }
コード例 #2
0
 private void EmitCond(Expression e, Identifier grf)
 {
     m.Assign(grf, m.Cond(e));
 }
コード例 #3
0
        private void NZV_(Expression e)
        {
            var grf = arch.GetFlagGroup(Registers.ccr, (uint)(FlagM.NF | FlagM.ZF | FlagM.VF));

            m.Assign(binder.EnsureFlagGroup(grf), m.Cond(e));
        }
コード例 #4
0
ファイル: M6809Rewriter.cs プロジェクト: fengjixuchui/reko
 private void NZV(Expression e)
 {
     m.Assign(binder.EnsureFlagGroup(Registers.NZV), m.Cond(e));
 }
コード例 #5
0
ファイル: H8Rewriter.cs プロジェクト: ntzwq/reko
 private void EmitCond(FlagGroupStorage grf, Expression e)
 {
     m.Assign(binder.EnsureFlagGroup(grf), m.Cond(e));
 }
コード例 #6
0
ファイル: Rewriter.cs プロジェクト: mmyydd/reko
        private void Copy(RegisterStorage regDst, RegisterStorage regSrc)
        {
            var dst = frame.EnsureRegister(regDst);
            var src = frame.EnsureRegister(regSrc);

            emitter.Assign(dst, src);
            emitter.Assign(
                frame.EnsureFlagGroup(
                    (uint)(FlagM.NF | FlagM.ZF),
                    "NZ",
                    PrimitiveType.Byte),
                emitter.Cond(dst));
        }
コード例 #7
0
ファイル: RtlNativeEmitter.cs プロジェクト: smx-smx/reko
 public HExpr Cond(HExpr a)
 {
     return(MapToHandle(m.Cond(GetExpression(a))));
 }
コード例 #8
0
        private void AllFlags(Expression dst)
        {
            var grf = FlagGroup(FlagM.NZVC);

            emitter.Assign(grf, emitter.Cond(dst));
        }
コード例 #9
0
ファイル: MicroBlazeRewriter.cs プロジェクト: mfkiwl/reko
        private void C(Expression e)
        {
            var carry = binder.EnsureFlagGroup(Registers.C);

            m.Assign(carry, m.Cond(e));
        }
コード例 #10
0
 private void EmitCond(FlagGroupStorage grf, Expression e) => EmitCc(grf, m.Cond(e));
コード例 #11
0
        private void NZV(Expression e)
        {
            var nzvc = arch.GetFlagGroup(Registers.CC, (uint)(FlagM.N | FlagM.Z | FlagM.V));

            m.Assign(binder.EnsureFlagGroup(nzvc), m.Cond(e));
        }
コード例 #12
0
ファイル: WE32100Rewriter.cs プロジェクト: AT90S8515/reko
 private void NZV0(Expression e)
 {
     m.Assign(binder.EnsureFlagGroup(Registers.NZV), m.Cond(e));
     m.Assign(binder.EnsureFlagGroup(Registers.C), Constant.False());
 }
コード例 #13
0
        private void CV(Identifier dst)
        {
            var cv = binder.EnsureFlagGroup(Registers.CV);

            m.Assign(cv, m.Cond(dst));
        }
コード例 #14
0
ファイル: ArmRewriter.cs プロジェクト: VladRassokhin/reko
 private void MaybeUpdateFlags(Expression opDst)
 {
     if (instr.ArchitectureDetail.UpdateFlags)
     {
         m.Assign(frame.EnsureFlagGroup(A32Registers.cpsr, 0x1111, "NZCV", PrimitiveType.Byte), m.Cond(opDst));
     }
 }
コード例 #15
0
        private void CNZ(Expression e)
        {
            var cnz = binder.EnsureFlagGroup(arch.GetFlagGroup(arch.st, (uint)FlagM.CNZ));

            m.Assign(cnz, m.Cond(e));
        }
コード例 #16
0
ファイル: Rewriter.cs プロジェクト: smx-smx/reko
        private void Copy(RegisterStorage regDst, RegisterStorage regSrc)
        {
            var dst = binder.EnsureRegister(regDst);
            var src = binder.EnsureRegister(regSrc);

            m.Assign(dst, src);
            m.Assign(
                binder.EnsureFlagGroup(
                    Registers.p,
                    (uint)(FlagM.NF | FlagM.ZF),
                    "NZ",
                    PrimitiveType.Byte),
                m.Cond(dst));
        }
コード例 #17
0
        private void EmitFlags(Expression e, FlagGroupStorage mod)
        {
            var grf = binder.EnsureFlagGroup(mod);

            m.Assign(grf, m.Cond(e));
        }
コード例 #18
0
ファイル: SparcRewriter.cs プロジェクト: mmyydd/reko
 private void EmitCc(Expression dst)
 {
     emitter.Assign(
         frame.EnsureFlagGroup(0xF, "NZVC", PrimitiveType.Byte),
         emitter.Cond(dst));
 }