Document cloning for the target_clone attribute.
authorMartin Liska <mliska@suse.cz>
Tue, 7 Jan 2020 09:18:46 +0000 (10:18 +0100)
committerMartin Liska <marxin@gcc.gnu.org>
Tue, 7 Jan 2020 09:18:46 +0000 (09:18 +0000)
2020-01-07  Martin Liska  <mliska@suse.cz>

PR ipa/83411
* doc/extend.texi: Explain cloning for target_clone
attribute.

From-SVN: r279948

gcc/ChangeLog
gcc/doc/extend.texi

index d4c3731..fa5101d 100644 (file)
@@ -1,5 +1,11 @@
 2020-01-07  Martin Liska  <mliska@suse.cz>
 
+       PR ipa/83411
+       * doc/extend.texi: Explain cloning for target_clone
+       attribute.
+
+2020-01-07  Martin Liska  <mliska@suse.cz>
+
        PR tree-optimization/92860
        * common.opt: Make in Optimization option
        as it is affected by -O0, which is an Optimization
index 05ec62c..ec99c38 100644 (file)
@@ -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 declaring the calling function with the @code{flatten} attribute?
+
 @item unused
 @cindex @code{unused} function attribute
 This attribute, attached to a function, means that the function is meant