Don't let inline_list_funcs degrade optimizations
Don't let inline_list_funcs degrade optimizations

83199af0263 refactored sys_core_fold to break out the code for the
inline_lists_funcs option to its own module. Unfortunately, it also
accidentally turned off compile-time evaluation of calls to BIFs with
wholly or partial constant arguments.

For example, the code for the following funtion gets much worse
when inline_list_funcs is used:

b() ->
    R0 = #r{},
    R1 = setelement(1+2, R0, "deux"),
    R2 = setelement(1+3, R1, "trois"),
    R3 = setelement(1+5, R2, "cinq"),
    R4 = setelement(1+2, R3, "DEUX"),
    R4.

ERL-285

fenollp/otp,ferd/otp,dumbbell/otp,cobusc/otp,weisslj/otp,weisslj/otp,ferd/otp,saleyn/otp,aboroska/otp,weisslj/otp,dumbbell/otp,emacsmirror/erlang,dgud/otp,bernardd/otp,weisslj/otp,tuncer/otp,ferd/otp,uabboli/otp,mikpe/otp,massemanet/otp,bjorng/otp,goertzenator/otp,weisslj/otp,kvakvs/otp,g-andrade/otp,uabboli/otp,mikpe/otp,erlang/otp,ferd/otp,vinoski/otp,electricimp/otp,erlang/otp,tuncer/otp,potatosalad/otp,aboroska/otp,matwey/otp,rlipscombe/otp,falkevik/otp,bsmr-erlang/otp,dgud/otp,kvakvs/otp,isvilen/otp,getong/otp,falkevik/otp,falkevik/otp,mikpe/otp,kvakvs/otp,cobusc/otp,tuncer/otp,dgud/otp,emile/otp,electricimp/otp,saleyn/otp,electricimp/otp,bernardd/otp,matwey/otp,jj1bdx/otp,goertzenator/otp,getong/otp,vladdu/otp,lrascao/otp,emacsmirror/erlang,dumbbell/otp,vladdu/otp,potatosalad/otp,potatosalad/otp,RaimoNiskanen/otp,potatosalad/otp,potatosalad/otp,massemanet/otp,mikpe/otp,ferd/otp,emile/otp,fenollp/otp,erlang/otp,uabboli/otp,getong/otp,getong/otp,dgud/otp,dumbbell/otp,jj1bdx/otp,isvilen/otp,cobusc/otp,vladdu/otp,emile/otp,emile/otp,isvilen/otp,weisslj/otp,potatosalad/otp,isvilen/otp,falkevik/otp,ferd/otp,release-project/otp,massemanet/otp,getong/otp,emacsmirror/erlang,goertzenator/otp,dumbbell/otp,falkevik/otp,ferd/otp,mikpe/otp,bernardd/otp,lrascao/otp,erlang/otp,goertzenator/otp,rlipscombe/otp,bernardd/otp,lrascao/otp,RaimoNiskanen/otp,aboroska/otp,tuncer/otp,bjorng/otp,bernardd/otp,fenollp/otp,dgud/otp,massemanet/otp,cobusc/otp,ferd/otp,erlang/otp,g-andrade/otp,mikpe/otp,bsmr-erlang/otp,RoadRunnr/otp,electricimp/otp,bernardd/otp,dumbbell/otp,RaimoNiskanen/otp,emacsmirror/erlang,jj1bdx/otp,bernardd/otp,falkevik/otp,emile/otp,kvakvs/otp,aboroska/otp,legoscia/otp,goertzenator/otp,RaimoNiskanen/otp,bernardd/otp,bsmr-erlang/otp,g-andrade/otp,matwey/otp,matwey/otp,dumbbell/otp,jj1bdx/otp,vinoski/otp,cobusc/otp,matwey/otp,bjorng/otp,vladdu/otp,getong/otp,erlang/otp,release-project/otp,fenollp/otp,massemanet/otp,legoscia/otp,erlang/otp,matwey/otp,aboroska/otp,legoscia/otp,release-project/otp,RaimoNiskanen/otp,bjorng/otp,falkevik/otp,kvakvs/otp,uabboli/otp,vinoski/otp,bjorng/otp,lrascao/otp,uabboli/otp,vinoski/otp,electricimp/otp,fenollp/otp,potatosalad/otp,bsmr-erlang/otp,bsmr-erlang/otp,bjorng/otp,getong/otp,lrascao/otp,g-andrade/otp,RaimoNiskanen/otp,bsmr-erlang/otp,legoscia/otp,RoadRunnr/otp,emile/otp,saleyn/otp,vinoski/otp,potatosalad/otp,vinoski/otp,tuncer/otp,vladdu/otp,tuncer/otp,jj1bdx/otp,saleyn/otp,aboroska/otp,jj1bdx/otp,saleyn/otp,RoadRunnr/otp,mikpe/otp,electricimp/otp,release-project/otp,vinoski/otp,fenollp/otp,vinoski/otp,bjorng/otp,bsmr-erlang/otp,release-project/otp,saleyn/otp,emacsmirror/erlang,massemanet/otp,bjorng/otp,weisslj/otp,bsmr-erlang/otp,dumbbell/otp,rlipscombe/otp,emile/otp,massemanet/otp,fenollp/otp,rlipscombe/otp,tuncer/otp,legoscia/otp,isvilen/otp,rlipscombe/otp,cobusc/otp,RoadRunnr/otp,isvilen/otp,lrascao/otp,saleyn/otp,emacsmirror/erlang,aboroska/otp,weisslj/otp,aboroska/otp,isvilen/otp,rlipscombe/otp,RoadRunnr/otp,release-project/otp,emacsmirror/erlang,isvilen/otp,kvakvs/otp,release-project/otp,rlipscombe/otp,electricimp/otp,lrascao/otp,vladdu/otp,release-project/otp,emile/otp,dgud/otp,vinoski/otp,massemanet/otp,cobusc/otp,weisslj/otp,potatosalad/otp,emacsmirror/erlang,vladdu/otp,jj1bdx/otp,emacsmirror/erlang,goertzenator/otp,falkevik/otp,bsmr-erlang/otp,fenollp/otp,RaimoNiskanen/otp,getong/otp,g-andrade/otp,falkevik/otp,dumbbell/otp,RaimoNiskanen/otp,bjorng/otp,uabboli/otp,matwey/otp,RaimoNiskanen/otp,dumbbell/otp,RoadRunnr/otp,rlipscombe/otp,saleyn/otp,kvakvs/otp,getong/otp,g-andrade/otp,emacsmirror/erlang,goertzenator/otp,legoscia/otp,isvilen/otp,bjorng/otp,kvakvs/otp,legoscia/otp,RoadRunnr/otp,erlang/otp,aboroska/otp,dgud/otp,goertzenator/otp,g-andrade/otp,electricimp/otp,legoscia/otp,mikpe/otp,uabboli/otp,g-andrade/otp,legoscia/otp,ferd/otp,erlang/otp,matwey/otp,jj1bdx/otp,fenollp/otp,release-project/otp,uabboli/otp,saleyn/otp,lrascao/otp,dgud/otp,getong/otp,g-andrade/otp,emile/otp,g-andrade/otp,tuncer/otp,rlipscombe/otp,mikpe/otp,lrascao/otp,kvakvs/otp,vladdu/otp,tuncer/otp,rlipscombe/otp,matwey/otp,isvilen/otp,jj1bdx/otp,uabboli/otp,potatosalad/otp,erlang/otp,jj1bdx/otp,dgud/otp,bernardd/otp,vladdu/otp,cobusc/otp,dgud/otp,RoadRunnr/otp,mikpe/otp,electricimp/otp,goertzenator/otp,massemanet/otp,vinoski/otp,RoadRunnr/otp