Back in May 2004 Richard Henderson ensured that using a '+' constraint
in an extended asm statement would work with an 'm' constraint.

http://gcc.gnu.org/ml/gcc-patches/2004-05/msg00438.html

Unfortunately he did not update the documentation.  I verified that
Richard's code is still in the compiler, and updated the documentation
as follows.

Bootstrapped on x86_64-unknown-linux-gnu.  Committed to mainline.

Ian


2012-10-23  Ian Lance Taylor  <i...@google.com>

        * doc/extend.texi (Extended Asm): The '+' constraint does not
        require a register.


Index: doc/extend.texi
===================================================================
--- doc/extend.texi	(revision 192525)
+++ doc/extend.texi	(working copy)
@@ -5864,10 +5864,7 @@ The ordinary output operands must be wri
 the values in these operands before the instruction are dead and need
 not be generated.  Extended asm supports input-output or read-write
 operands.  Use the constraint character @samp{+} to indicate such an
-operand and list it with the output operands.  You should only use
-read-write operands when the constraints for the operand (or the
-operand in which only some of the bits are to be changed) allow a
-register.
+operand and list it with the output operands.
 
 You may, as an alternative, logically split its function into two
 separate operands, one input operand and one write-only output

Reply via email to