コード例 #1
0
 public FunctionExit(Variable returnValue)
     : base(ArmConditionCode.ARM_CC_AL)
 {
     if (returnValue != null)
     {
         VariableUses.Add(returnValue);
     }
 }
コード例 #2
0
ファイル: Branch.cs プロジェクト: cualquiercosa327/Derailer
 public Branch(ArmConditionCode condition, BasicBlock destination, Variable cpsr = null)
     : base(condition)
 {
     if (destination == null)
     {
         throw new ArgumentNullException(nameof(destination));
     }
     Destination = destination;
     if (condition != ArmConditionCode.ARM_CC_AL && cpsr != null)
     {
         VariableUses.Add(cpsr);
         FlagsUseOperand = cpsr;
     }
 }
コード例 #3
0
ファイル: LongAdd.cs プロジェクト: cualquiercosa327/Derailer
 public LongAdd(Variable dstLo, Variable dstHi, Variable opALo, Variable opAHi, Operand opBLo, Operand opBHi)
     : base(ArmConditionCode.ARM_CC_AL)
 {
     Operands.Add((true, dstLo));
     Operands.Add((true, dstHi));
     Operands.Add((false, opALo));
     Operands.Add((false, opAHi));
     Operands.Add((false, opBLo));
     Operands.Add((false, opBHi));
     VariableUses.Add(opALo);
     VariableUses.Add(opAHi);
     if (opBLo is Variable)
     {
         VariableUses.Add((Variable)opBLo);
     }
     if (opBHi is Variable)
     {
         VariableUses.Add((Variable)opBHi);
     }
     VariableDefs.Add(dstLo);
     VariableDefs.Add(dstHi);
 }