[PATCH] D15075: No error for conflict between inputs\outputs and clobber list

Akira Hatanaka via cfe-commits cfe-commits at lists.llvm.org
Mon Sep 12 19:10:46 PDT 2016


ahatanak added a comment.

You can create a separate patch for the changes made to lib/Headers/intrin.h and have it reviewed before committing this patch.

Also, __dst, __x and __n should be added to the output list and "memory" to the clobber list as majnemer pointed out. I think you can use constraint "+" to ensure the registers are clobbered. For example:

  __asm__("rep movsb" : "+D"(__dst), "+S"(__src), "+c"(__n) : : "memory");

For stos, "a"(__x) can remain an input constraint since it doesn't get modified.


https://reviews.llvm.org/D15075





More information about the cfe-commits mailing list