svn commit: r256157 - head/sys/dev/random

Dimitry Andric dim at FreeBSD.org
Tue Oct 8 17:26:28 UTC 2013


Author: dim
Date: Tue Oct  8 17:26:28 2013
New Revision: 256157
URL: http://svnweb.freebsd.org/changeset/base/256157

Log:
  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

Modified:
  head/sys/dev/random/ivy.c

Modified: head/sys/dev/random/ivy.c
==============================================================================
--- head/sys/dev/random/ivy.c	Tue Oct  8 16:36:17 2013	(r256156)
+++ head/sys/dev/random/ivy.c	Tue Oct  8 17:26:28 2013	(r256157)
@@ -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"


More information about the svn-src-head mailing list