https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91520
--- Comment #1 from Iain Sandoe <iains at gcc dot gnu.org> --- Created attachment 46749 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=46749&action=edit Possible fix by modifying GCC output. As noted, the LLVM backend is rejecting a disambiguation marker that is not actually really required (the size of the operands is known when the operands are registers). This patch modifies the AVX512 output to omit the unnecessary disambiguation marker in these cases, and updates the test suite to expect this form of the instructions. The patch fixes the fails on Darwin and doesn't regress Linux [at least with GNU assembler (GNU Binutils for Debian) 2.28]. I suppose it would be possible to guard the changes on TARGET_MACHO and likewise the tests, but that seems even more mess. Given that the LLVM backend as been updated to allow the disambiguation markers on register instructions - an alternative is to require Darwin to use updated tools (however since most of the folks building on Darwin are using Xcode, they have to wait for the update to arrive). ---- So, I am not currently planning on posting this patch for approval - but it is posted here in case that is the "only solution" for some user. ----- I plan on publishing an update to my alternate assembler/linker pair that incorporates the changes from LLVM-9 and isn't dependent on the release schedule for Xcode.