Beispiel #1
0
        public bool TerminatesProcess;                  // True if entering this block means the process/thread will be terminated.

		public BlockFlow(Block block, BitSet dataOut, SymbolicEvaluationContext ctx)
		{
			this.Block = block;
			this.DataOut = dataOut;
			this.StackVarsOut = new Dictionary<Storage,int>();
            this.SymbolicIn = ctx;
		}
Beispiel #2
0
		/// <summary>
		/// Returns true if the register is a strict subregister of one of the registers in the bitset.
		/// </summary>
		/// <param name="r"></param>
		/// <param name="regs"></param>
		/// <returns></returns>
		private bool IsSubRegisterOfRegisters(int r, BitSet regs)
		{
            var rr = Program.Architecture.GetRegister(r);
            if (rr == null)
                return false;
			foreach (int r2 in regs)
			{
				if (rr.IsSubRegisterOf(Program.Architecture.GetRegister(r2)))
					return true;
			}
			return false;
		}