This is the mail archive of the
java-patches@gcc.gnu.org
mailing list for the Java project.
Re: Calls to built-in functions are not Binary Compatible
Andrew Pinski writes:
> >
> > This happens with methods like Math.pow() which are converted to
> > builtins. Unfortunately, this leads to direct calls to methods in
> > libgcj. This breaks binary compatibility when we change gcj's name
> > mangling. Which we just did.
>
> Aren't those direct function calls to libc functions
On some platforms the libc functions wouldn't be sufficiently
accurate.
> though so they really don't have an effect from gcj's name
> mangling?
They don't seem to be, no. AFAIK the only purpose of the
builtins is to expose the possibility of constant propagation and
simplification, and (on x86) use of builtin instructions.
Given that libgcj has its own versions of these builtins, perhaps they
should be called directly rather than via the CNI stubs. That would
be more efficient that what we do at the present time and solve the
mangling problem.
Andrew.