remove some instruction bloat in S_find_uninit_var
authorDaniel Dragan <bulk88@hotmail.com>
Sat, 22 Dec 2012 14:34:40 +0000 (09:34 -0500)
committerTony Cook <tony@develop-help.com>
Fri, 19 Jul 2013 05:36:23 +0000 (15:36 +1000)
commit851ffa6e66f5cbb2878b578e7d833b4d728c6975
tree3694f23dae66686ae0f601423a83e03e41eaed25
parentfd4402024b24e2932365e29708532aff07b488af
remove some instruction bloat in S_find_uninit_var

VC 2003 -O1 put down SvIV(cSVOPx_sv(kid)) twice in asm. Not sure why.

Explicitly store the values to make it more obvious to the compiler to
evaluate the SvIV only once, then do the branch, not do the negate branch,
then in a negate branch do a SvIV. Result is less machine code read by the
CPU. The .text section dropped 0xC01FF to 0xC018F after this change.
sv.c