diff options
author | Andy Polyakov <appro@openssl.org> | 2010-07-08 09:15:49 +0000 |
---|---|---|
committer | Andy Polyakov <appro@openssl.org> | 2010-07-08 09:15:49 +0000 |
commit | b29b89ef215c6fda3bec921f7fbc5def18a69c15 (patch) | |
tree | e5ea3a609f47d15ee05bfba18cf5fd553a32edb6 /crypto/rand | |
parent | 81ae27d56ac14ab1a9f3fe6b807f7c3dcfccd415 (diff) |
rand_nw.c: compensate for gcc bug (using %edx instead of %eax at -O3)
[from HEAD].
PR: 2296
Diffstat (limited to 'crypto/rand')
-rw-r--r-- | crypto/rand/rand_nw.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/crypto/rand/rand_nw.c b/crypto/rand/rand_nw.c index f177ffbe82..8d5b8d2e32 100644 --- a/crypto/rand/rand_nw.c +++ b/crypto/rand/rand_nw.c @@ -160,8 +160,8 @@ int RAND_poll(void) rdtsc mov tsc, eax } -#else - asm volatile("rdtsc":"=A" (tsc)); +#elif defined(__GNUC__) && __GNUC__>=2 && !defined(OPENSSL_NO_ASM) && !defined(OPENSSL_NO_INLINE_ASM) + asm volatile("rdtsc":"=a"(tsc)::"edx"); #endif RAND_add(&tsc, sizeof(tsc), 1); |