On 1/6/20 3:05 AM, Martin Liška wrote:
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.
+

Should that be "the @code{flatten} attribute?"  (Article and
an 'n' rather than an 'r' in "flatten".)

Also, (assuming I'm reading it correctly) would the rest of
the sentence be clearer if it instead read:

  we recommend declaring the calling function with the @code{flatten}
  attribute?

Martin

Reply via email to