AINL changes mark main() and other user-defined fns as "inline"
| Bugzilla Link | 1174 |
| Created on | Nov 23, 2015 21:13 |
| Version | svn |
| OS | Linux |
| Architecture | PC |
Extended Description
Recent changes to AINL result in over-exuberant inlining directives being inserted for user-defined functions. E.g.: sac2c SCSprf_reshape.sac -v1 -bopt:cyc:ainl:1 >crud.ainl1 sac@rattler:~/sac/testsuite/optimizations/constantfolding$ vi crud.ainl1 sac@rattler:~/sac/testsuite/optimizations/constantfolding$ sac@rattler:~/sac/testsuite/optimizations/constantfolding$ sac2c SCSprf_reshape.sac -v1 -bopt:cyc:cse:1 >crud.cse1 sac@rattler:~/sac/testsuite/optimizations/constantfolding$ vi crud.cse1 sac@rattler:~/sac/testsuite/optimizations/constantfolding$ diff crud.cse1 crud.ainl1 1325a1326 > inline 5289a5291 > inline The new inline directives are for main() and id(), neither of which should be inlined. sac2c -V sac2c 1.2.beta-BlackForest-89-fd249 developer (Mon Nov 23 11:48:14 EST 2015 by sac) The above resulted in 91 grep failures for the CF unit test suite, far more than we should see there.