From: Florian Krohm Date: Thu, 3 Oct 2013 20:54:52 +0000 (+0000) Subject: Change some inline assembler so it is no longer rejected by clang X-Git-Tag: svn/VALGRIND_3_9_0~81 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=dfb5c06054a8e56537ce0b3286b118ad2fecdef4;p=thirdparty%2Fvalgrind.git Change some inline assembler so it is no longer rejected by clang as suggested by John Reiser and Greg Parker. It seems that GCC has a more relaxed attitude about what it accepts as valid input. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13610 --- diff --git a/exp-bbv/tests/amd64-linux/fldcw_check.S b/exp-bbv/tests/amd64-linux/fldcw_check.S index a76524db90..280cff7fb9 100644 --- a/exp-bbv/tests/amd64-linux/fldcw_check.S +++ b/exp-bbv/tests/amd64-linux/fldcw_check.S @@ -132,7 +132,7 @@ big_loop: fnstcw saved_cw # store control word to mem movzwl saved_cw, %eax # load cw from mem, zero extending movb $12, %ah # set cw for "round to zero" - movw %rax, cw # store back to memory + movw %ax, cw # store back to memory fldcw cw # save new rounding mode fistpl result # save stack value as integer to mem fldcw saved_cw # restore old cw diff --git a/none/tests/amd64/pcmpxstrx64.c b/none/tests/amd64/pcmpxstrx64.c index 6d67aa78dc..006a496367 100644 --- a/none/tests/amd64/pcmpxstrx64.c +++ b/none/tests/amd64/pcmpxstrx64.c @@ -77,10 +77,10 @@ void one_test ( char* summL, ULong rdxIN, char* summR, ULong raxIN ) "movq 32(%0), %%rdx" "\n\t" "movq 40(%0), %%rax" "\n\t" "movupd 48(%0), %%xmm0" "\n\t" - "movw 64(%0), %%rcx" "\n\t" + "movw 64(%0), %%cx" "\n\t" "pcmpistri $0x4A, %%xmm2, %%xmm13" "\n\t" "movupd %%xmm0, 48(%0)" "\n\t" - "movw %%rcx, 64(%0)" "\n\t" + "movw %%cx, 64(%0)" "\n\t" "pushfq" "\n\t" "popq %%r15" "\n\t" "movq %%r15, 72(%0)" "\n\t" @@ -106,10 +106,10 @@ void one_test ( char* summL, ULong rdxIN, char* summR, ULong raxIN ) "movq 32(%0), %%rdx" "\n\t" "movq 40(%0), %%rax" "\n\t" "movupd 48(%0), %%xmm0" "\n\t" - "movw 64(%0), %%rcx" "\n\t" + "movw 64(%0), %%cx" "\n\t" "pcmpistri $0x0A, %%xmm2, %%xmm13" "\n\t" "movupd %%xmm0, 48(%0)" "\n\t" - "movw %%rcx, 64(%0)" "\n\t" + "movw %%cx, 64(%0)" "\n\t" "pushfq" "\n\t" "popq %%r15" "\n\t" "movq %%r15, 72(%0)" "\n\t" @@ -135,10 +135,10 @@ void one_test ( char* summL, ULong rdxIN, char* summR, ULong raxIN ) "movq 32(%0), %%rdx" "\n\t" "movq 40(%0), %%rax" "\n\t" "movupd 48(%0), %%xmm0" "\n\t" - "movw 64(%0), %%rcx" "\n\t" + "movw 64(%0), %%cx" "\n\t" "pcmpistrm $0x4A, %%xmm2, %%xmm13" "\n\t" "movupd %%xmm0, 48(%0)" "\n\t" - "movw %%rcx, 64(%0)" "\n\t" + "movw %%cx, 64(%0)" "\n\t" "pushfq" "\n\t" "popq %%r15" "\n\t" "movq %%r15, 72(%0)" "\n\t" @@ -164,10 +164,10 @@ void one_test ( char* summL, ULong rdxIN, char* summR, ULong raxIN ) "movq 32(%0), %%rdx" "\n\t" "movq 40(%0), %%rax" "\n\t" "movupd 48(%0), %%xmm0" "\n\t" - "movw 64(%0), %%rcx" "\n\t" + "movw 64(%0), %%cx" "\n\t" "pcmpistrm $0x0A, %%xmm2, %%xmm13" "\n\t" "movupd %%xmm0, 48(%0)" "\n\t" - "movw %%rcx, 64(%0)" "\n\t" + "movw %%cx, 64(%0)" "\n\t" "pushfq" "\n\t" "popq %%r15" "\n\t" "movq %%r15, 72(%0)" "\n\t" @@ -193,10 +193,10 @@ void one_test ( char* summL, ULong rdxIN, char* summR, ULong raxIN ) "movq 32(%0), %%rdx" "\n\t" "movq 40(%0), %%rax" "\n\t" "movupd 48(%0), %%xmm0" "\n\t" - "movw 64(%0), %%rcx" "\n\t" + "movw 64(%0), %%cx" "\n\t" "pcmpestri $0x4A, %%xmm2, %%xmm13" "\n\t" "movupd %%xmm0, 48(%0)" "\n\t" - "movw %%rcx, 64(%0)" "\n\t" + "movw %%cx, 64(%0)" "\n\t" "pushfq" "\n\t" "popq %%r15" "\n\t" "movq %%r15, 72(%0)" "\n\t" @@ -222,10 +222,10 @@ void one_test ( char* summL, ULong rdxIN, char* summR, ULong raxIN ) "movq 32(%0), %%rdx" "\n\t" "movq 40(%0), %%rax" "\n\t" "movupd 48(%0), %%xmm0" "\n\t" - "movw 64(%0), %%rcx" "\n\t" + "movw 64(%0), %%cx" "\n\t" "pcmpestri $0x0A, %%xmm2, %%xmm13" "\n\t" "movupd %%xmm0, 48(%0)" "\n\t" - "movw %%rcx, 64(%0)" "\n\t" + "movw %%cx, 64(%0)" "\n\t" "pushfq" "\n\t" "popq %%r15" "\n\t" "movq %%r15, 72(%0)" "\n\t" @@ -251,10 +251,10 @@ void one_test ( char* summL, ULong rdxIN, char* summR, ULong raxIN ) "movq 32(%0), %%rdx" "\n\t" "movq 40(%0), %%rax" "\n\t" "movupd 48(%0), %%xmm0" "\n\t" - "movw 64(%0), %%rcx" "\n\t" + "movw 64(%0), %%cx" "\n\t" "pcmpestrm $0x4A, %%xmm2, %%xmm13" "\n\t" "movupd %%xmm0, 48(%0)" "\n\t" - "movw %%rcx, 64(%0)" "\n\t" + "movw %%cx, 64(%0)" "\n\t" "pushfq" "\n\t" "popq %%r15" "\n\t" "movq %%r15, 72(%0)" "\n\t" @@ -280,10 +280,10 @@ void one_test ( char* summL, ULong rdxIN, char* summR, ULong raxIN ) "movq 32(%0), %%rdx" "\n\t" "movq 40(%0), %%rax" "\n\t" "movupd 48(%0), %%xmm0" "\n\t" - "movw 64(%0), %%rcx" "\n\t" + "movw 64(%0), %%cx" "\n\t" "pcmpestrm $0x0A, %%xmm2, %%xmm13" "\n\t" "movupd %%xmm0, 48(%0)" "\n\t" - "movw %%rcx, 64(%0)" "\n\t" + "movw %%cx, 64(%0)" "\n\t" "pushfq" "\n\t" "popq %%r15" "\n\t" "movq %%r15, 72(%0)" "\n\t" diff --git a/none/tests/amd64/pcmpxstrx64w.c b/none/tests/amd64/pcmpxstrx64w.c index f44b9e217e..18334436bc 100644 --- a/none/tests/amd64/pcmpxstrx64w.c +++ b/none/tests/amd64/pcmpxstrx64w.c @@ -78,10 +78,10 @@ void one_test ( char* summL, ULong rdxIN, char* summR, ULong raxIN ) "movq 32(%0), %%rdx" "\n\t" "movq 40(%0), %%rax" "\n\t" "movupd 48(%0), %%xmm0" "\n\t" - "movw 64(%0), %%rcx" "\n\t" + "movw 64(%0), %%cx" "\n\t" "pcmpistri $0x4B, %%xmm2, %%xmm13" "\n\t" "movupd %%xmm0, 48(%0)" "\n\t" - "movw %%rcx, 64(%0)" "\n\t" + "movw %%cx, 64(%0)" "\n\t" "pushfq" "\n\t" "popq %%r15" "\n\t" "movq %%r15, 72(%0)" "\n\t" @@ -107,10 +107,10 @@ void one_test ( char* summL, ULong rdxIN, char* summR, ULong raxIN ) "movq 32(%0), %%rdx" "\n\t" "movq 40(%0), %%rax" "\n\t" "movupd 48(%0), %%xmm0" "\n\t" - "movw 64(%0), %%rcx" "\n\t" + "movw 64(%0), %%cx" "\n\t" "pcmpistri $0x0B, %%xmm2, %%xmm13" "\n\t" "movupd %%xmm0, 48(%0)" "\n\t" - "movw %%rcx, 64(%0)" "\n\t" + "movw %%cx, 64(%0)" "\n\t" "pushfq" "\n\t" "popq %%r15" "\n\t" "movq %%r15, 72(%0)" "\n\t" @@ -136,10 +136,10 @@ void one_test ( char* summL, ULong rdxIN, char* summR, ULong raxIN ) "movq 32(%0), %%rdx" "\n\t" "movq 40(%0), %%rax" "\n\t" "movupd 48(%0), %%xmm0" "\n\t" - "movw 64(%0), %%rcx" "\n\t" + "movw 64(%0), %%cx" "\n\t" "pcmpistrm $0x4B, %%xmm2, %%xmm13" "\n\t" "movupd %%xmm0, 48(%0)" "\n\t" - "movw %%rcx, 64(%0)" "\n\t" + "movw %%cx, 64(%0)" "\n\t" "pushfq" "\n\t" "popq %%r15" "\n\t" "movq %%r15, 72(%0)" "\n\t" @@ -165,10 +165,10 @@ void one_test ( char* summL, ULong rdxIN, char* summR, ULong raxIN ) "movq 32(%0), %%rdx" "\n\t" "movq 40(%0), %%rax" "\n\t" "movupd 48(%0), %%xmm0" "\n\t" - "movw 64(%0), %%rcx" "\n\t" + "movw 64(%0), %%cx" "\n\t" "pcmpistrm $0x0B, %%xmm2, %%xmm13" "\n\t" "movupd %%xmm0, 48(%0)" "\n\t" - "movw %%rcx, 64(%0)" "\n\t" + "movw %%cx, 64(%0)" "\n\t" "pushfq" "\n\t" "popq %%r15" "\n\t" "movq %%r15, 72(%0)" "\n\t" @@ -194,10 +194,10 @@ void one_test ( char* summL, ULong rdxIN, char* summR, ULong raxIN ) "movq 32(%0), %%rdx" "\n\t" "movq 40(%0), %%rax" "\n\t" "movupd 48(%0), %%xmm0" "\n\t" - "movw 64(%0), %%rcx" "\n\t" + "movw 64(%0), %%cx" "\n\t" "pcmpestri $0x4B, %%xmm2, %%xmm13" "\n\t" "movupd %%xmm0, 48(%0)" "\n\t" - "movw %%rcx, 64(%0)" "\n\t" + "movw %%cx, 64(%0)" "\n\t" "pushfq" "\n\t" "popq %%r15" "\n\t" "movq %%r15, 72(%0)" "\n\t" @@ -223,10 +223,10 @@ void one_test ( char* summL, ULong rdxIN, char* summR, ULong raxIN ) "movq 32(%0), %%rdx" "\n\t" "movq 40(%0), %%rax" "\n\t" "movupd 48(%0), %%xmm0" "\n\t" - "movw 64(%0), %%rcx" "\n\t" + "movw 64(%0), %%cx" "\n\t" "pcmpestri $0x0B, %%xmm2, %%xmm13" "\n\t" "movupd %%xmm0, 48(%0)" "\n\t" - "movw %%rcx, 64(%0)" "\n\t" + "movw %%cx, 64(%0)" "\n\t" "pushfq" "\n\t" "popq %%r15" "\n\t" "movq %%r15, 72(%0)" "\n\t" @@ -252,10 +252,10 @@ void one_test ( char* summL, ULong rdxIN, char* summR, ULong raxIN ) "movq 32(%0), %%rdx" "\n\t" "movq 40(%0), %%rax" "\n\t" "movupd 48(%0), %%xmm0" "\n\t" - "movw 64(%0), %%rcx" "\n\t" + "movw 64(%0), %%cx" "\n\t" "pcmpestrm $0x4B, %%xmm2, %%xmm13" "\n\t" "movupd %%xmm0, 48(%0)" "\n\t" - "movw %%rcx, 64(%0)" "\n\t" + "movw %%cx, 64(%0)" "\n\t" "pushfq" "\n\t" "popq %%r15" "\n\t" "movq %%r15, 72(%0)" "\n\t" @@ -281,10 +281,10 @@ void one_test ( char* summL, ULong rdxIN, char* summR, ULong raxIN ) "movq 32(%0), %%rdx" "\n\t" "movq 40(%0), %%rax" "\n\t" "movupd 48(%0), %%xmm0" "\n\t" - "movw 64(%0), %%rcx" "\n\t" + "movw 64(%0), %%cx" "\n\t" "pcmpestrm $0x0B, %%xmm2, %%xmm13" "\n\t" "movupd %%xmm0, 48(%0)" "\n\t" - "movw %%rcx, 64(%0)" "\n\t" + "movw %%cx, 64(%0)" "\n\t" "pushfq" "\n\t" "popq %%r15" "\n\t" "movq %%r15, 72(%0)" "\n\t"