[PATCH] D41517: mmintrin.h documentation fixes and updates

Katya Romanova via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Thu Jan 4 18:43:05 PST 2018


kromanova added inline comments.


================
Comment at: lib/Headers/mmintrin.h:55
 ///
-/// This intrinsic corresponds to the <c> VMOVD / MOVD </c> instruction.
+/// This intrinsic corresponds to the <c> MOVD </c> instruction.
 ///
----------------
I tried clang on Linux, x86_64, and if -mavx option is passed, we generate VMOVD, if this option is omitted, we generate MOVD.
I think I understand the rational behind this change (namely, to keep MOVD, but remove VMOVD),
since this intrinsic should use MMX registers and shouldn't have corresponding AVX instruction(s).

However, that's what we generate at the moment when -mavx is passed (I suspect because our MMX support is limited)
vmovd   %edi, %xmm0

Since we are writing the documentation for clang compiler, we should document what clang compiler is doing, not what is should be doing.
Craig, what do you think? Should we revert back to VMOVD/MOVD?



================
Comment at: lib/Headers/mmintrin.h:72
 ///
-/// This intrinsic corresponds to the <c> VMOVD / MOVD </c> instruction.
+/// This intrinsic corresponds to the <c> MOVD </c> instruction.
 ///
----------------
Same as above.


================
Comment at: lib/Headers/mmintrin.h:88
 ///
-/// This intrinsic corresponds to the <c> VMOVQ / MOVD </c> instruction.
+/// This intrinsic corresponds to the <c> MOVD </c> instruction.
 ///
----------------
craig.topper wrote:
> Shouldn't this be MOVQ?
Yes, that's correct, (MOVQ) + the same question as above whether we should keep VMOVQ/MOVQ.


================
Comment at: lib/Headers/mmintrin.h:104
 ///
-/// This intrinsic corresponds to the <c> VMOVQ / MOVD </c> instruction.
+/// This intrinsic corresponds to the <c> MOVD </c> instruction.
 ///
----------------
craig.topper wrote:
> Shouldn't this be MOVQ?
Same as above.


https://reviews.llvm.org/D41517





More information about the cfe-commits mailing list