https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80732
--- Comment #4 from Yichao Yu <yyc1992 at gmail dot com> --- `double (*pf1)(double, double, double) = dlsym(hdl, "f1.ifunc");` Wouldn't it be better if GCC generates local functions `f1.default`, `f1.fma` as implementation and `f1` to replace `f1.ifunc`? It's quite incontinent if this detail is exposed. If one have to use `f1.ifunc`, does it also mean that the declaration of the function in the header must also have `target_clone` applied?