do_cmpxchg8b(): fix incorrect inline assembly (wrong register name)

and updated expected result.  n-i-bz.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15536
This commit is contained in:
Julian Seward 2015-08-13 14:46:10 +00:00
parent 19a7577acd
commit bda73f5b54
2 changed files with 2 additions and 2 deletions

View File

@ -165,7 +165,7 @@ void do_cmpxchg8b ( void )
"xorq %%rax, %%rax" "\n\t"
"xorq %%rdx, %%rdx" "\n\t"
"movabsq $0x1122334455667788, %%rcx" "\n\t"
"movabsq $0xffeeddccbbaa9988, %%rdx" "\n\t"
"movabsq $0xffeeddccbbaa9988, %%rbx" "\n\t"
"xacquire lock cmpxchg8b (%0)" "\n\t"
"xrelease lock cmpxchg8b (%0)" "\n\t"
: : "r"(&n) : "cc", "memory", "rax", "rdx", "rcx", "rdx"

View File

@ -13,7 +13,7 @@ result for 'btc' is 57d555555f554d55
result for 'btr' is 5555555555554515
result for 'bts' is 57d555555f555d55
result for 'cmpxchg' is 271831415927d459
result for 'cmpxchg8b' is 5566778800000000
result for 'cmpxchg8b' is 55667788bbaa9988
result for 'xadd' is d1c2dbecb622f897
result for 'xchg' is 5555555555555555
result for 'xchg-no-lock' is 5555555555555555