>>13Plan 9's assembler is really only intended to generate code for the C compiler; thus, you can't rely on it if you need to generate code that the C compiler never would (e.g., segment overrides) or output formats other than what the OS expects to use.
On the plus side, you don't need to distinguish 16 and 32 bit register names like you do with other AT&T style assemblers, which is nice. Having to specify both a size suffix for the opcode
and use a different register name is the second most annoying thing about the AT&T style (the first being the order of operands, but if you fix that it isn't AT&T at all anymore).