Work around a clang 6.0.0 issue with rep prefixes followed by .byte

directives (as reported in https://bugs.llvm.org/show_bug.cgi?id=35749),
by defining the rep prefix with yet another .byte directive.

This is a temporary fix, to be reverted before merging back to head,
until upstream has a proper fix for this.
This commit is contained in:
Dimitry Andric 2017-12-29 12:49:24 +00:00
parent 42e6db5330
commit 2055323b2c
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/projects/clang600-import/; revision=327340

View file

@ -88,7 +88,7 @@ padlock_cbc(void *in, void *out, size_t count, void *key, union padlock_cw *cw,
__asm __volatile(
"pushf \n\t"
"popf \n\t"
"rep \n\t"
".byte 0xf3 \n\t"
".byte 0x0f, 0xa7, 0xd0"
: "+a" (iv), "+c" (count), "+D" (out), "+S" (in)
: "b" (key), "d" (cw)