summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordim <dim@FreeBSD.org>2013-10-08 17:26:28 +0000
committerdim <dim@FreeBSD.org>2013-10-08 17:26:28 +0000
commitecbbed9b9e6d00633773f3e840bee51e01e4cef7 (patch)
treef7c9eb3b98d55d163964f9ea7c50ba153063fcd4
parentd19ce831a15e21cb112c7ef69143deb3e69c1775 (diff)
downloadFreeBSD-src-ecbbed9b9e6d00633773f3e840bee51e01e4cef7.zip
FreeBSD-src-ecbbed9b9e6d00633773f3e840bee51e01e4cef7.tar.gz
Now our binutils's assembler supports the Intel Random Number Generator
extensions, we can change the .byte directives in sys/dev/random/ivy.c to plain 'rdrand' mnemonics. This already worked for clang users, but now it will also work for gcc users. Approved by: re (kib) Approved by: so (des) MFC after: 1 week
-rw-r--r--sys/dev/random/ivy.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/dev/random/ivy.c b/sys/dev/random/ivy.c
index 07c8712..5473312 100644
--- a/sys/dev/random/ivy.c
+++ b/sys/dev/random/ivy.c
@@ -68,12 +68,12 @@ ivy_rng_store(long *tmp)
__asm __volatile(
#ifdef __amd64__
- ".byte\t0x48,0x0f,0xc7,0xf0\n\t" /* rdrand %rax */
+ "rdrand\t%%rax\n\t"
"jnc\t1f\n\t"
"movq\t%%rax,%1\n\t"
"movl\t$8,%%eax\n"
#else /* i386 */
- ".byte\t0x0f,0xc7,0xf0\n\t" /* rdrand %eax */
+ "rdrand\t%%eax\n\t"
"jnc\t1f\n\t"
"movl\t%%eax,%1\n\t"
"movl\t$4,%%eax\n"
OpenPOWER on IntegriCloud