I've done more writing.
There are (at least) 5 bugzilla entries asking for the i386 modifiers
for extended asm to be documented:
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39440
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29357
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30527
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37621
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43319
In addition to that, people have been asking on the mailing lists for
information about them (I know because I was one of them). On the other
hand, there has been some reluctance to document these since if they are
documented, they are implicitly supported.
But I think Ian had it right when he said
(http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39440#c3):
-------
We don't have to document all of the modifiers, but we do have to
document some of them. There are cases where they are required in order
to use asm statements effectively. Most of the modifiers haven't
changed for decades, I don't think we have to worry about that as long
as we are careful about which ones we document.
-------
However, it's been >4 years since that comment and (apparently) no one
has decided which modifiers to document. So rather than just complain
(you know me...), I've decided to take a stab at deciding/doc'ing this
as part of my updates to the extended asm docs.
I've tried the find the balance between things that must be documented
(like 'l' which is required for asm goto), things that are particularly
useful and should be documented (zbhwkqc), and the other stuff which can
probably remain undocumented (anLWBQSTCFfORZ*AEsxtydDPpX&HY+;~@^).
However, if someone has arguments for or against documenting any
particular modifier, let me hear it.
My current efforts can be seen at:
http://www.LimeGreenSocks.com/gcc/i386-Operand-modifiers.html
dw