On 02/12/2015 10:58 AM, H.J. Lu wrote:
>    if (DECL_VISIBILITY_SPECIFIED (exp)
> +      && (resolved_locally
> +       || !flag_pic

Yes, this essentially goes back to your original patch, which I claim still
conflates issues.

In particular, I believe mentioning flag_pic here is a serious error.

There are two problems that I see so far,

 (1) node->definition isn't set for this symbol.  This is because you
     only fixed varpool_node::finalize_decl, and not
     cgraph_node::finalize_function.

 (2) The weak test should probably be split into two pieces, like the
     visibility test: exclude undefined weak, include specified visibility,
     exclude non-dominant weak, exclude external, include implied visibility.


r~

Reply via email to