Also the % before register names is completely unnecessary, it just another extra character to type.
mov rax,%rax
rax: .ascii "hello\0"
Stupid perhaps, but valid.One of the x86 assemblers I remember trying out in the late 80s had a slight variant of Intel syntax in that everything that wasn't a reserved word/mnemonic was automatically assumed to be a label.