This is the mail archive of the mailing list for the GCC project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH, COMMITTED] Update earlyclobber documentation

[ was: Re: combination of read/write and earlyclobber constraint modifier on gcc@ ]
On 03-07-14 00:42, Jeff Law wrote:
Based on various followups (public & private), let's go with the clarification
above.  Richard E. explicitly added support for this in the mid/late 90s as an
optimization for the ARM.


Committed as attached.

Thanks to all for the helpful comments.

- Tom
2014-07-04  Tom de Vries  <>

	* doc/md.texi (@subsection Constraint Modifier Characters): Clarify
	combination of earlyclobber and read/write modifiers.

diff --git a/gcc/doc/md.texi b/gcc/doc/md.texi
index 539865e..fde67d7 100644
--- a/gcc/doc/md.texi
+++ b/gcc/doc/md.texi
@@ -1582,7 +1582,10 @@ alternatives of this form often allows GCC to produce better code
 when only some of the inputs can be affected by the earlyclobber.
 See, for example, the @samp{mulsi3} insn of the ARM@.
-@samp{&} does not obviate the need to write @samp{=}.
+Furthermore, if the @dfn{earlyclobber} operand is also read/write operand, then
+that operand is modified only after it's used.
+@samp{&} does not obviate the need to write @samp{=} or @samp{+}.
 @cindex @samp{%} in constraint
 @item %

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]