This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Re: PATCH: rs6000 sibling calls


>>>>> Richard Henderson writes:

> The @local means that you cannot generate a sibcall to a function
> for which targetm.binds_local_p is false.

	So, PowerPC should follow the same logic as Alpha:

  if (DEFAULT_ABI == ABI_DARWIN
      || (TREE_ASM_WRITTEN (fndecl) && !flag_pic) || !TREE_PUBLIC (fndecl))
    return 1;

This will work on Darwin and SVR4 and AIX.  The only place this breaks is
when optionally invoking runtime linking on AIX to emulate SVR4 semantics
allowing overrides of functions in libraries.  I'll have to investigate
whether its worth always disabling TREE_ASM_WRITTEN for TARGET_AIX as
well.

Thanks, David


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]