This is the mail archive of the
java-patches@gcc.gnu.org
mailing list for the Java project.
Re: PATCH: [4.1 Regression]: java compiler generates wrong code on ia64
- From: "H. J. Lu" <hjl at lucon dot org>
- To: Mark Mitchell <mark at codesourcery dot com>, mckinlay at redhat dot com
- Cc: gcc-patches at gcc dot gnu dot org, java-patches at gcc dot gnu dot org
- Date: Sun, 17 Apr 2005 20:31:25 -0700
- Subject: Re: PATCH: [4.1 Regression]: java compiler generates wrong code on ia64
- References: <20050417191125.GA29627@lucon.org> <4262B72F.6020400@codesourcery.com>
On Sun, Apr 17, 2005 at 12:21:19PM -0700, Mark Mitchell wrote:
> H. J. Lu wrote:
> >Linkonce and weak functions are never local.
>
> > /* Only create aliases for local functions. */
> >- if (DECL_EXTERNAL (method))
>
> If this code is testing for whether a function has internal linkage,
> then the conditional should be "if (!TREE_PUBLIC (method))". Your patch
> is certainly not correct.
>
If I use "if (!TREE_PUBLIC (method))", I got
/net/gnu-9/export/gnu/src/gcc-next/gcc/libjava/java/util/logging/Logger.java:68: error: ‘*.L_ZN4java4util7logging6Logger19getCallerStackFrameEv49()’ aliased to external symbol ‘
/net/gnu-9/export/gnu/src/gcc-next/gcc/libjava/java/util/logging/Logger.java:68: confused by earlier errors, bailing out
make_local_function_alias is introduced in
http://gcc.gnu.org/ml/java-patches/2004-q3/msg00618.html
Is there a testcase to show it is really needed? I'd like to run it
on ia32, x86_64 and ia64 to verify its usage.
H.J.