diff --git a/docs/LangRef.rst b/docs/LangRef.rst index 89647a57b10..8fd92f97f40 100644 --- a/docs/LangRef.rst +++ b/docs/LangRef.rst @@ -782,6 +782,17 @@ example: ``naked`` This attribute disables prologue / epilogue emission for the function. This can have very system-specific consequences. +``noduplicate`` + This attribute indicates that calls to the function cannot be + duplicated. A call to a ``noduplicate`` function may be moved + within its parent function, but may not be duplicated within + its parent function. + + A function containing a ``noduplicate`` call may still + be an inlining candidate, provided that the call is not + duplicated by inlining. That implies that the function has + internal linkage and only has one call site, so the original + call is dead after inlining. ``noimplicitfloat`` This attributes disables implicit floating point instructions. ``noinline`` @@ -874,17 +885,6 @@ example: show that no exceptions passes by it. This is normally the case for the ELF x86-64 abi, but it can be disabled for some compilation units. -``noduplicate`` - This attribute indicates that calls to the function cannot be - duplicated. A call to a ``noduplicate`` function may be moved - within its parent function, but may not be duplicated within - its parent function. - - A function containing a ``noduplicate`` call may still - be an inlining candidate, provided that the call is not - duplicated by inlining. That implies that the function has - internal linkage and only has one call site, so the original - call is dead after inlining. .. _moduleasm: