diff options
author | Niels Möller <nisse@lysator.liu.se> | 2019-01-10 21:57:09 +0100 |
---|---|---|
committer | Niels Möller <nisse@lysator.liu.se> | 2019-01-10 21:57:09 +0100 |
commit | c10336bfdeb1c2ef83b6dd6a973a717257943320 (patch) | |
tree | 797c428d2f80440e44e0f337fe5f3d8dece2c907 | |
parent | 09def119c3410c47919999df5762778b8b62ac93 (diff) | |
download | nettle-c10336bfdeb1c2ef83b6dd6a973a717257943320.tar.gz |
nettle-benchmark: Add volatile to inline asm.
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | examples/nettle-benchmark.c | 32 |
2 files changed, 21 insertions, 16 deletions
@@ -1,3 +1,8 @@ +2019-01-09 Niels Möller <nisse@lysator.liu.se> + + * examples/nettle-benchmark.c (GET_CYCLE_COUNTER): Add volatile to + inline asm. + 2019-01-08 Niels Möller <nisse@lysator.liu.se> * sha512-compress.c: Add missing include of sha2-internal.h. diff --git a/examples/nettle-benchmark.c b/examples/nettle-benchmark.c index 101ba7d4..6e0f560b 100644 --- a/examples/nettle-benchmark.c +++ b/examples/nettle-benchmark.c @@ -92,24 +92,24 @@ static double frequency = 0.0; #if WITH_CYCLE_COUNTER # if defined(__i386__) #define GET_CYCLE_COUNTER(hi, lo) \ - __asm__("xorl %%eax,%%eax\n" \ - "movl %%ebx, %%edi\n" \ - "cpuid\n" \ - "rdtsc\n" \ - "movl %%edi, %%ebx\n" \ - : "=a" (lo), "=d" (hi) \ - : /* No inputs. */ \ - : "%edi", "%ecx", "cc") + __asm__ volatile ("xorl %%eax,%%eax\n" \ + "movl %%ebx, %%edi\n" \ + "cpuid\n" \ + "rdtsc\n" \ + "movl %%edi, %%ebx\n" \ + : "=a" (lo), "=d" (hi) \ + : /* No inputs. */ \ + : "%edi", "%ecx", "cc") # elif defined(__x86_64__) #define GET_CYCLE_COUNTER(hi, lo) \ - __asm__("xorl %%eax,%%eax\n" \ - "mov %%rbx, %%r10\n" \ - "cpuid\n" \ - "rdtsc\n" \ - "mov %%r10, %%rbx\n" \ - : "=a" (lo), "=d" (hi) \ - : /* No inputs. */ \ - : "%r10", "%rcx", "cc") + __asm__ volatile ("xorl %%eax,%%eax\n" \ + "mov %%rbx, %%r10\n" \ + "cpuid\n" \ + "rdtsc\n" \ + "mov %%r10, %%rbx\n" \ + : "=a" (lo), "=d" (hi) \ + : /* No inputs. */ \ + : "%r10", "%rcx", "cc") # endif #define BENCH_ITERATIONS 10 #endif |