public void Liv_FindFinalValue() { Prepare(new ByteArrayLoopMock().Procedure); var liv = new LinearInductionVariableFinder(ssa, null); var a = new List <SsaIdentifier>(); a.Add(ssa.Identifiers.Where(s => s.Identifier.Name == "i_2").Single()); a.Add(ssa.Identifiers.Where(s => s.Identifier.Name == "i_5").Single()); Constant c = liv.FindFinalValue(a); Assert.AreEqual(10, c.ToInt32()); Assert.AreEqual("branch i_2 < 0xA<32> body", liv.Context.TestStatement.ToString()); }
public void Liv_FindFinalValue() { Prepare(new ByteArrayLoopMock().Procedure); var liv = new LinearInductionVariableFinder(proc, ssaIds, null); var a = new List<SsaIdentifier>(); a.Add(ssaIds.Where(s => s.Identifier.Name == "i_1").Single()); a.Add(ssaIds.Where(s => s.Identifier.Name == "i_4").Single()); Constant c = liv.FindFinalValue(a); Assert.AreEqual(10, c.ToInt32()); Assert.AreEqual("branch i_1 < 0x0000000A body", liv.Context.TestStatement.ToString()); }