https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99092
--- Comment #8 from Iain Sandoe <iains at gcc dot gnu.org> ---
it seems that GAS is accepting an encoding that's not specified in at least
version DDI0487Fc_armv8_arm.
that says that
C6.2.212 PRFM (immediate) takes
"<pimm> Is the optional positive immediate byte offset, a multiple of 8 in the
range 0 to 32760, defaulting to 0 and encoded in the "imm12" field as
<pimm>/8."
= and
C6.2.215 PRFUM
"<simm> Is the optional signed immediate byte offset, in the range -256 to 255,
defaulting to 0 and encoded in the "imm9" field."
=======
so probably the bug is present for all targets, not just Darwin - it just
happens to show there. FWIW, the encoding is shown thus:
PRFM (<prfop>|#<imm5>), [<Xn|SP>{, #<pimm>}]
So LLVM might well also reject it without the '#' (I have encountered at least
one case before where that happened).