Assertion failed in function processTiedPairs

Hello, I’m getting an assertion failure building this project [1] on FreeBSD 13 using clang 7.0.1:

$ cc -Daws_checksums_EXPORTS -I/usr/ports/devel/aws-checksums/work/aws-checksums-0.1.2/include -I/usr/ports/devel/aws-checksums/work/aws-checksums-0.1.2/tests -O2 -pipe -fstack-protector -fno-strict-aliasing -O2 -pipe -fstack-protector -fno-strict-aliasing -fPIC -fPIC -std=gnu99 -MD -MT CMakeFiles/aws-checksums.dir/source/intel/crc32c_sse42_asm.c.o -MF CMakeFiles/aws-checksums.dir/source/intel/crc32c_sse42_asm.c.o.d -o CMakeFiles/aws-checksums.dir/source/intel/crc32c_sse42_asm.c.o -c /usr/ports/devel/aws-checksums/work/aws-checksums-0.1.2/source/intel/crc32c_sse42_asm.c -O3
Assertion failed: (i == DstIdx || !MI->getOperand(i).isReg() || MI->getOperand(i).getReg() != RegA), function processTiedPairs, file /usr/src/contrib/llvm/lib/CodeGen/TwoAddressInstructionPass.cpp, line 1544.
FreeBSD clang version 7.0.1 (tags/RELEASE_701/final 349250) (based on LLVM 7.0.1)

This is the file:

It seems LLVM is triggering this assert because the inline assembly is not in SSA form. Inline assembly is not supposed to be emit as it is?

For convenience, here is the assertion code:

Thanks in advance.


[1] -