------- Comment #2 from darkshikari at gmail dot com 2010-04-21 22:07 ------- Here's what the compiler currently says about one of these calls using "-flto -fipa-pta -fwhole-program -fdump-tree-optimized-alias -O3 -fomit-frame-pointer -ffastmath":
# PT = nonlocal unit-escaped D.9637_762 = h_79(D)->mc.mc_luma; # PT = nonlocal unit-escaped D.9343_763 = m_61(D)->weight; bmy_764 = bmy_20 + 1; D.9344_765 = m_61(D)->i_stride[0]; # USE = anything # CLB = anything D.9637_762 (&pix[16], 64, D.9345_761, D.9344_765, bmx_5, bmy_764, bw_63, bh_65, D.9343_763); After the linking step, using LTO: # PT = anything D.54843_762 = h_79(D)->mc.mc_luma; # PT = anything D.55040_763 = m_61(D)->weight; bmy_764 = bmy_20 + 1; D.55039_765 = m_61(D)->i_stride[0]; # USE = anything # CLB = anything D.54843_762 (&pix[16], 64, D.55038_761, D.55039_765, bmx_5, bmy_764, bw_63, bh_65, D.55040_763); If I'm reading this right, it doesn't seem it's able to infer anything whatsoever about it. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43827