<div dir="ltr"><br>Hi all,<br><br>I am new to Soot. I am using LoopNestTree to find the loop.<br><br><div style="background-color: rgb(250, 250, 250); border-color: rgb(187, 187, 187); border-style: solid; border-width: 1px; overflow-wrap: break-word;" class="prettyprint"><code class="prettyprint"><div class="subprettyprint"><span style="color: #800;" class="styled-by-prettify">// Note that I will be working with loops which have simple termination</span><span style="color: #000;" class="styled-by-prettify"><br></span><span style="color: #800;" class="styled-by-prettify">// condition and incerement/decrement values</span><span style="color: #000;" class="styled-by-prettify"><br></span><span style="color: #008;" class="styled-by-prettify">for</span><span style="color: #660;" class="styled-by-prettify">(</span><span style="color: #008;" class="styled-by-prettify">int</span><span style="color: #000;" class="styled-by-prettify"> i </span><span style="color: #660;" class="styled-by-prettify">=</span><span style="color: #000;" class="styled-by-prettify"> </span><span style="color: #066;" class="styled-by-prettify">0</span><span style="color: #660;" class="styled-by-prettify">;</span><span style="color: #000;" class="styled-by-prettify">i</span><span style="color: #660;" class="styled-by-prettify"><</span><span style="color: #066;" class="styled-by-prettify">5</span><span style="color: #660;" class="styled-by-prettify">;</span><span style="color: #000;" class="styled-by-prettify">i</span><span style="color: #660;" class="styled-by-prettify">++)</span><span style="color: #000;" class="styled-by-prettify"><br>    </span><span style="color: #606;" class="styled-by-prettify">System</span><span style="color: #660;" class="styled-by-prettify">.</span><span style="color: #008;" class="styled-by-prettify">out</span><span style="color: #660;" class="styled-by-prettify">.</span><span style="color: #000;" class="styled-by-prettify">println</span><span style="color: #660;" class="styled-by-prettify">(</span><span style="color: #000;" class="styled-by-prettify">i</span><span style="color: #660;" class="styled-by-prettify">);</span></div></code></div><br>But, What I want for my work is:<br>for the above loop I want<br>Start_i = 0; <br>End_i = 5;<br>Incr_i = 1;<br><br>Is there any way of getting this info?<br><br>I am getting the loop termination conditions using getLoopExits().<br>I think I can extract the value of End_i from it.<br><br>#Jimple for reference<br><br><div style="background-color: rgb(250, 250, 250); border-color: rgb(187, 187, 187); border-style: solid; border-width: 1px; overflow-wrap: break-word;" class="prettyprint"><code class="prettyprint"><div class="subprettyprint"><span style="color: #000;" class="styled-by-prettify">       i </span><span style="color: #660;" class="styled-by-prettify">=</span><span style="color: #000;" class="styled-by-prettify"> </span><span style="color: #066;" class="styled-by-prettify">0</span><span style="color: #660;" class="styled-by-prettify">;</span><span style="color: #000;" class="styled-by-prettify"><br><br>     label1</span><span style="color: #660;" class="styled-by-prettify">:</span><span style="color: #000;" class="styled-by-prettify"><br>        </span><span style="color: #008;" class="styled-by-prettify">if</span><span style="color: #000;" class="styled-by-prettify"> i </span><span style="color: #660;" class="styled-by-prettify">>=</span><span style="color: #000;" class="styled-by-prettify"> </span><span style="color: #066;" class="styled-by-prettify">5</span><span style="color: #000;" class="styled-by-prettify"> </span><span style="color: #008;" class="styled-by-prettify">goto</span><span style="color: #000;" class="styled-by-prettify"> label2</span><span style="color: #660;" class="styled-by-prettify">;</span><span style="color: #000;" class="styled-by-prettify"><br>        $r0 </span><span style="color: #660;" class="styled-by-prettify">=</span><span style="color: #000;" class="styled-by-prettify"> </span><span style="color: #660;" class="styled-by-prettify"><</span><span style="color: #000;" class="styled-by-prettify">java</span><span style="color: #660;" class="styled-by-prettify">.</span><span style="color: #000;" class="styled-by-prettify">lang</span><span style="color: #660;" class="styled-by-prettify">.</span><span style="color: #606;" class="styled-by-prettify">System</span><span style="color: #660;" class="styled-by-prettify">:</span><span style="color: #000;" class="styled-by-prettify"> java</span><span style="color: #660;" class="styled-by-prettify">.</span><span style="color: #000;" class="styled-by-prettify">io</span><span style="color: #660;" class="styled-by-prettify">.</span><span style="color: #606;" class="styled-by-prettify">PrintStream</span><span style="color: #000;" class="styled-by-prettify"> </span><span style="color: #008;" class="styled-by-prettify">out</span><span style="color: #660;" class="styled-by-prettify">>;</span><span style="color: #000;" class="styled-by-prettify"><br>        virtualinvoke $r0</span><span style="color: #660;" class="styled-by-prettify">.<</span><span style="color: #000;" class="styled-by-prettify">java</span><span style="color: #660;" class="styled-by-prettify">.</span><span style="color: #000;" class="styled-by-prettify">io</span><span style="color: #660;" class="styled-by-prettify">.</span><span style="color: #606;" class="styled-by-prettify">PrintStream</span><span style="color: #660;" class="styled-by-prettify">:</span><span style="color: #000;" class="styled-by-prettify"> </span><span style="color: #008;" class="styled-by-prettify">void</span><span style="color: #000;" class="styled-by-prettify"> println</span><span style="color: #660;" class="styled-by-prettify">(</span><span style="color: #008;" class="styled-by-prettify">int</span><span style="color: #660;" class="styled-by-prettify">)>(</span><span style="color: #000;" class="styled-by-prettify">i</span><span style="color: #660;" class="styled-by-prettify">);</span><span style="color: #000;" class="styled-by-prettify"><br>        i </span><span style="color: #660;" class="styled-by-prettify">=</span><span style="color: #000;" class="styled-by-prettify"> i </span><span style="color: #660;" class="styled-by-prettify">+</span><span style="color: #000;" class="styled-by-prettify"> </span><span style="color: #066;" class="styled-by-prettify">1</span><span style="color: #660;" class="styled-by-prettify">;</span><span style="color: #000;" class="styled-by-prettify"><br>        </span><span style="color: #008;" class="styled-by-prettify">goto</span><span style="color: #000;" class="styled-by-prettify"> label1</span><span style="color: #660;" class="styled-by-prettify">;</span><span style="color: #000;" class="styled-by-prettify"><br><br>     label2</span><span style="color: #660;" class="styled-by-prettify">:</span><span style="color: #000;" class="styled-by-prettify"><br>        </span><span style="color: #008;" class="styled-by-prettify">return</span><span style="color: #660;" class="styled-by-prettify">;</span><span style="color: #000;" class="styled-by-prettify"><br><br></span></div></code></div><br><br>Thanks,<br>--Nikhil<br></div>