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~