]> git.ipfire.org Git - thirdparty/nettle.git/commitdiff
nettle-benchmark: Add volatile to inline asm.
authorNiels Möller <nisse@lysator.liu.se>
Thu, 10 Jan 2019 20:57:09 +0000 (21:57 +0100)
committerNiels Möller <nisse@lysator.liu.se>
Thu, 10 Jan 2019 20:57:09 +0000 (21:57 +0100)
ChangeLog
examples/nettle-benchmark.c

index cee3e546f2b54f667943ad88ad3122ad7e64f81c..fde29b4eb01a180ed50f5d66512c29e9add0853b 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -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.
index 101ba7d4abcc6701443ecd20b8c9d0cfca7ed584..6e0f560b6bdc6d6853998ddc33aa59be83dd4fcb 100644 (file)
@@ -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