This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: Patch to convert ASM_GLOBALIZE_LABEL to a target hook
> From: David Edelsohn <dje@watson.ibm.com>
>
> Congratulations! You broke AIX bootstrap.
David - I understand its frustrating, Solaris2 bootstraps regularly
have been broken for a week or more over this Summer. But note, I
didn't break AIX intentionally. So there's no need for sarcasm.
> I thought that your patch was a one for one translation. How is
> the before and after equivalent in xcoff.h?
>
> -#define ASM_GLOBALIZE_LABEL(FILE,NAME) \
> - do { fputs ("\t.globl ", FILE); \
> - RS6000_OUTPUT_BASENAME (FILE, NAME); putc ('\n', FILE);} while (0)
> +/* Globalizing directive for a label. */
> +#define GLOBAL_ASM_OP "\t.globl "
>
> Notice the RS6000_OUTPUT_BASENAME! Just because you see ".globl" doesn't
> mean the rest of the code is equivalent.
> David
When I went through the code, RS6000_OUTPUT_BASENAME just does
> assemble_name ((FILE), (*targetm.strip_name_encoding) (NAME))
and I thought assemble_name itself did a strip_name_encoding. So I
thought RS6000_OUTPUT_BASENAME was redundant. Is that not the case?
Can you please explain to me what went wrong so I don't repeat my
mistake?
Thanks,
--Kaveh
--
Kaveh R. Ghazi Director of Systems Architecture
ghazi@caip.rutgers.edu Qwest Solutions