On Fri, Dec 20, 2019 at 06:49:30PM -0500, Michael Meissner wrote:
> In doing V11 patch #3, I noticed that the documentation for the 'Q' was
> misleading.
It originally was used just for lswi/stswi, which can access up to the
first 32 bytes of storage pointed to by the register. But yes, the
current comment is confusing.
> * config/rs6000/constraints.md (Q constraint): Update
> documentation.
> * doc/md.tet (PowerPC constraints): Update 'Q' constraint
> documentation.
"md.tet"? That's an interesting typo :-)
> (define_memory_constraint "Q"
> - "Memory operand that is an offset from a register (it is usually better
> -to use @samp{m} or @samp{es} in @code{asm} statements)"
> + "A memory operand whose address which uses a single register with no
> offset."
Arm has
(define_memory_constraint "Q"
"@internal
An address that is a single base register."
(and (match_code "mem")
(match_test "REG_P (XEXP (op, 0))")))
which is more correct for us (the register cannot be r0!)
But it is not an address.
Maybe "A memory operand addressed by just a base register." ?
Okay for trunk like that. Thanks!
Segher