This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [Ada] Macro-ize a couple of wrappers
Eric Botcazou <ebotcazou@adacore.com>:
> Nothing is inlined here at -O2, this would duplicate a big function. And a
> sibling call is not possible (on the x86) because of the boolean arguments.
I meant inlining the wrapper not the ultimate function, eg transforming:
extern int interior(int a,b,c,d);
int wrapper(int a,b,c,d) {
return interior(a,b,c,d); /* or some simple reshufling/selecting */
}
void test(void) {
int r=wrapper(1,2,3,4);
}
into =>
void test(void) {
int r=interior(1,2,3,4);
}
I never checked code generated by GCC on such case but I was expecting the
transformation to be done :).
Laurent