https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84923
--- Comment #3 from Richard Biener <rguenth at gcc dot gnu.org> --- For x86_64 if I append const int *dat[] = { &Wv12, &wv12 }; the testcase links fine irrespective of where I place the .weakref Wv12,wv12 .weak wv12 assembler declarations. When I look at the assembler generated by a cross from x86_64 I do not see any .weak wv12 directive which is likely the issue.