mirror of
https://github.com/MariaDB/server.git
synced 2025-01-29 02:05:57 +01:00
Force use of c-register in CAS instruction on x86-32 bit architecture, b-register used for push and pop, so don't want to give compile the chance to choose the wrong register
This commit is contained in:
parent
d4f23f0cf6
commit
ec93c3ed23
1 changed files with 1 additions and 1 deletions
|
@ -108,7 +108,7 @@
|
|||
int32 ebx=(set & 0xFFFFFFFF), ecx=(set >> 32); \
|
||||
asm volatile ("push %%ebx; movl %3, %%ebx;" \
|
||||
LOCK_prefix "; cmpxchg8b %0; setz %2; pop %%ebx"\
|
||||
: "+m" (*a), "+A" (*cmp), "=q" (ret) \
|
||||
: "+m" (*a), "+A" (*cmp), "=c" (ret) \
|
||||
:"m" (ebx), "c" (ecx))
|
||||
#endif
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue