<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Thu, Mar 10, 2016 at 1:04 PM, Rafael Espíndola <span dir="ltr"><<a href="mailto:rafael.espindola@gmail.com" target="_blank">rafael.espindola@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">On 10 March 2016 at 15:24, Rafael Espíndola <<a href="mailto:rafael.espindola@gmail.com">rafael.espindola@gmail.com</a>> wrote:<br>
>> I expect that after this change, we will be removing many isLocal() function<br>
>> calls because in many places we will be able to handle local and global<br>
>> symbols in the same way (because they will be represented in the same data<br>
>> structure.) Does this affect the performance?<br>
><br>
> Maybe. I would expect it to still be impact by the fact that we always<br>
> look at member of a SymbolBody, instead of just comparing the value of<br>
> the pointer.<br>
><br>
> I will try to benchmark the followup patches.<br>
<br>
</span>OK, the followup patches are moving in the right direction. The times<br>
I got were:<br>
<br>
clang:<br>
trunk: 0.584276652<br>
patch1: 0.634406310, 1.0857978114107494X slower<br>
patch2: 0.632846966, 1.0831289661049128X slower<br>
patch3: 0.627446597, 1.0738861374183408X slower<br>
<br>
scylla:<br>
trunk: 4.134114228<br>
patch1: 3.991824123, 1.0356453843194533 faster<br>
patch2: 3.973432705, 1.0404389692564329 faster<br>
patch3: 3.823714500, 1.0811775377058093 faster<br></blockquote><div><br></div><div>I'm inclined to accept these patches as it is definitely better from the code health point of view.</div><div><br></div><div>But why are the two so different? I'd like to see which is common, slower or faster.</div></div></div></div>