On Mon, Jun 25, 2007 at 09:15:40AM -0400, David Edelsohn wrote: > Emitting a NOP depends on SYMBOL_FLAG_LOCAL. > > if (targetm.binds_local_p (decl)) > flags |= SYMBOL_FLAG_LOCAL; > > PPC64 uses the default binds_local_p() hook, default_binds_local_p_1(): > > /* If defined in this object and visibility is not default, must be > local. */ > else if (DECL_VISIBILITY (exp) != VISIBILITY_DEFAULT) > local_p = true; > > Why does binds_local_p return true for non-default visibility?
Because local in binds_local_p's definition is "defined in the same executable or shared library" and that's true for hidden visibility. ppc64 in this case needs more strict definition of what local is though. Jakub