Date: Sat, 17 May 2014 21:06:48 GMT From: John Baldwin <jhb@FreeBSD.org> To: Perforce Change Reviews <perforce@FreeBSD.org> Subject: PERFORCE change 1193935 for review Message-ID: <201405172106.s4HL6mMw000986@skunkworks.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://p4web.freebsd.org/@@1193935?ac=10 Change 1193935 by jhb@jhb_pippin on 2014/05/17 21:06:27 Finish rdseed/rdrand. Affected files ... .. //depot/projects/smpng/sys/amd64/amd64/db_disasm.c#15 edit .. //depot/projects/smpng/sys/modules/x86dis/x86dis.c#10 edit Differences ... ==== //depot/projects/smpng/sys/amd64/amd64/db_disasm.c#15 (text+ko) ==== @@ -71,6 +71,7 @@ #define R 5 /* register, in 'reg' field */ #define Rw 6 /* word register, in 'reg' field */ #define Rq 39 /* quad register, in 'reg' field */ +#define Rv 40 /* register in 'r/m' field */ #define Ri 7 /* register in instruction */ #define S 8 /* segment reg, in 'reg' field */ #define Si 9 /* segment reg, in instruction */ @@ -635,8 +636,8 @@ { "", TRUE, NONE, 0, 0 }, { "", TRUE, NONE, 0, 0 }, { "", TRUE, NONE, 0, 0 }, - { "rdrand",TRUE, LONG, op1(Ril), 0 }, - { "", TRUE, NONE, 0, 0 } + { "rdrand",TRUE, LONG, op1(Rv), 0 }, + { "rdseed",TRUE, LONG, op1(Rv), 0 } }; static const struct inst db_inst_table[256] = { @@ -1528,6 +1529,10 @@ db_printf("%s", db_reg[rex != 0 ? 1 : 0][(rex & REX_R) ? QUAD : LONG][f_rm(rex, inst)]); break; + case Rv: + db_printf("%s", db_reg[rex != 0 ? 1 : 0][(size == LONG && (rex & REX_W)) ? QUAD : size][f_rm(rex, regmodrm)]); + break; + case S: db_printf("%s", db_seg_reg[f_reg(rex, regmodrm)]); break; ==== //depot/projects/smpng/sys/modules/x86dis/x86dis.c#10 (text+ko) ==== @@ -120,4 +120,8 @@ __asm __volatile("vmwrite %0,%1" :: "m" (*addr), "r" ((uint64_t)reg)); __asm __volatile("vmxoff"); __asm __volatile("vmxon %0" :: "m" (*addr)); + (void)rdrand(); + (void)rdrand64(); + __asm __volatile("rdseed %0" : "=r" (val)); + __asm __volatile("rdseed %edi"); }
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201405172106.s4HL6mMw000986>