This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH, rs6000] Preserve link stack for 476 cpus
On Wed, 2011-11-02 at 19:33 +0000, Iain Sandoe wrote:
> I'm going to try this ....
>
> $ svn diff -x -p gcc/config/rs6000/rs6000.c
> Index: gcc/config/rs6000/rs6000.c
> ===================================================================
> --- gcc/config/rs6000/rs6000.c (revision 180788)
> +++ gcc/config/rs6000/rs6000.c (working copy)
> @@ -25071,7 +25071,7 @@ macho_branch_islands (void)
> if (TARGET_LINK_STACK)
> {
> char name[32];
> - get_ppc64_thunk_name (name);
> + get_ppc476_thunk_name (name);
> strcat (tmp_buf, ":\n\tmflr r0\n\tbl ");
> strcat (tmp_buf, name);
> strcat (tmp_buf, "\n");
Oh my, I'm not sure how that got through. :( Oh, as you
said, that is TARGET_MACHO which I can't really test.
Sorry about that.
> @@ -27956,10 +27956,11 @@ get_ppc476_thunk_name (char name[32])
> {
> gcc_assert (TARGET_LINK_STACK);
>
> - if (HAVE_GAS_HIDDEN)
> +#if defined(HAVE_GAS_HIDDEN)
> sprintf (name, "__ppc476.get_thunk");
> - else
> +#else
> ASM_GENERATE_INTERNAL_LABEL (name, "LPPC476_", 0);
> +#endif
> }
...
Instead of that, see my patch to fix David's AIX problem:
http://gcc.gnu.org/ml/gcc-patches/2011-11/msg00198.html
Peter