[Bug ipa/104187] Call site specific attribute to control inliner

2022-03-03 Thread david.bolvansky at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104187 --- Comment #8 from Dávid Bolvanský --- So this works in Clang now int foo(int x, int y) { // any compiler will happily inline this function return x / y; } int test(int x, int y) { int r = 0; [[clang::noinline]] r += foo(x, y);

[Bug ipa/104187] Call site specific attribute to control inliner

2022-02-10 Thread aaron at aaronballman dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104187 Aaron Ballman changed: What|Removed |Added CC||aaron at aaronballman dot com ---

[Bug ipa/104187] Call site specific attribute to control inliner

2022-01-26 Thread hubicka at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104187 --- Comment #6 from Jan Hubicka --- For Gimple representation __builtin_always_inline(foo(x, y)) does not make very good sense since gimple is not nested and foo may return void so there may not be any link between call and the builtin. I see

[Bug ipa/104187] Call site specific attribute to control inliner

2022-01-25 Thread david.bolvansky at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104187 --- Comment #5 from Dávid Bolvanský --- So you prefer eg. g = a[i] - [[gnu::always_inline]] foo(x, y) + 2 * bar(); over g = a[i] - __builtin_always_inline(foo(x, y)) + 2 * bar(); ? What is your proposed syntax?

[Bug ipa/104187] Call site specific attribute to control inliner

2022-01-24 Thread joseph at codesourcery dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104187 --- Comment #4 from joseph at codesourcery dot com --- Right now, all the C front end does with statement attributes is parses them and then passes them to c_warn_unused_attributes; it doesn't have any other handling for such attributes.

[Bug ipa/104187] Call site specific attribute to control inliner

2022-01-24 Thread hubicka at kam dot mff.cuni.cz via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104187 --- Comment #3 from hubicka at kam dot mff.cuni.cz --- > > Confirmed. For C++ an attribute on the call stmt might work even better. > > I think even C, it might be better too. [[]] syntax is there for GNU C now > too. > But those only apply

[Bug ipa/104187] Call site specific attribute to control inliner

2022-01-24 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104187 --- Comment #2 from Andrew Pinski --- (In reply to Richard Biener from comment #1) > Confirmed. For C++ an attribute on the call stmt might work even better. I think even C, it might be better too. [[]] syntax is there for GNU C now too. But

[Bug ipa/104187] Call site specific attribute to control inliner

2022-01-24 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104187 --- Comment #1 from Richard Biener --- Confirmed. For C++ an attribute on the call stmt might work even better. Note we're low on bits to represent this on the GENERIC CALL_EXPR and the GIMPLE gcall.

[Bug ipa/104187] Call site specific attribute to control inliner

2022-01-23 Thread marxin at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104187 Martin Liška changed: What|Removed |Added CC||hubicka at gcc dot gnu.org

[Bug ipa/104187] Call site specific attribute to control inliner

2022-01-22 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104187 Andrew Pinski changed: What|Removed |Added CC||marxin at gcc dot gnu.org