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 d4c3731a8ffd7a89f849e60543df27988326db9c..fa5101d48f77c00fc12b043ffaeda1aac09b8981 100644 (file)
@@ -1,3 +1,9 @@
+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
index 05ec62c552b361b8f4b17360aaf45330c346c685..ec99c38a607f66a0e735583ddd4a707780f773cd 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