Hi. The patch is about explanation what happens when a target_clone function calls a function without the attribute.
Ready for trunk? Thanks, Martin gcc/ChangeLog: 2020-01-06 Martin Liska <mli...@suse.cz> PR ipa/83411 * doc/extend.texi: Explain cloning for target_clone attribute. --- gcc/doc/extend.texi | 6 ++++++ 1 file changed, 6 insertions(+)
diff --git a/gcc/doc/extend.texi b/gcc/doc/extend.texi index 05ec62c552b..184146abd10 100644 --- a/gcc/doc/extend.texi +++ b/gcc/doc/extend.texi @@ -3768,6 +3768,12 @@ the @code{ifunc} attribute above) that dynamically selects a clone suitable for current architecture. The resolver is created only if there is a usage of a function with @code{target_clones} attribute. +Note that any subsequent call of a function without @code{target_clone} +from a @code{target_clone} caller will not lead to copying +(target clone) of the called function. +If you want to enforce such behaviour, +we recommend to use @code{flatter} attribute for the caller function. + @item unused @cindex @code{unused} function attribute This attribute, attached to a function, means that the function is meant