From c7ea29b2470e7700c913d9ba99a3a8b4b1e7c93b Mon Sep 17 00:00:00 2001 From: "H. Peter Anvin" Date: Tue, 15 Nov 2016 11:55:14 -0800 Subject: [PATCH] Add rdpid instruction Add the RDPID instruction, documented in the Intel SDM October 2016. Signed-off-by: H. Peter Anvin --- insns.dat | 5 +++++ test/rdpid.asm | 21 +++++++++++++++++++++ 2 files changed, 26 insertions(+) create mode 100644 test/rdpid.asm diff --git a/insns.dat b/insns.dat index a391802c..9ecb047b 100644 --- a/insns.dat +++ b/insns.dat @@ -5114,6 +5114,11 @@ VXORPS zmmreg|mask|z,zmmreg*,zmmrm512|b32 [rvm:fv: evex.nds.512.0f.w0 RDPKRU void [ 0f 01 ee] X64,FUTURE WRPKRU void [ 0f 01 ef] X64,FUTURE +; Read Processor ID +RDPID reg32 [m: f3 0f c7 /7] NOLONG,FUTURE +RDPID reg64 [m: o64nw f3 0f c7 /7] X64,FUTURE +RDPID reg32 [m: f3 0f c7 /7] X64,UNDOC,FUTURE + ; New memory instructions CLFLUSHOPT mem [m: 66 0f ae /7] FUTURE CLWB mem [m: 66 0f ae /6] FUTURE diff --git a/test/rdpid.asm b/test/rdpid.asm new file mode 100644 index 00000000..76d9fc26 --- /dev/null +++ b/test/rdpid.asm @@ -0,0 +1,21 @@ +%ifdef ERROR + %define ERR(x) x +%else + %define ERR(x) +%endif + + bits 16 + + rdpid eax + ERR(rdpid ax) + + bits 32 + + rdpid ebx + ERR(rdpid bx) + + bits 64 + + rdpid rcx + rdpid ecx + ERR(rdpid cx)