From 10f1cd6e4f511a903f5f6370052ec4a82e98dbd8 Mon Sep 17 00:00:00 2001 From: Julian Seward Date: Fri, 6 Aug 2010 07:55:29 +0000 Subject: [PATCH] Update for Core iX. git-svn-id: svn://svn.valgrind.org/vex/trunk@2000 --- VEX/useful/cpuid.c | 29 +++++++++++++++++++++++++++-- 1 file changed, 27 insertions(+), 2 deletions(-) diff --git a/VEX/useful/cpuid.c b/VEX/useful/cpuid.c index e4f3e9172a..30d88f2b51 100644 --- a/VEX/useful/cpuid.c +++ b/VEX/useful/cpuid.c @@ -21,20 +21,45 @@ int main ( void ) UInt eax, ebx, ecx, edx; UInt maxidx, maxextidx, i,ecx_in; + printf("\n"); cpuid(&eax,&ebx,&ecx,&edx, 0,0); maxidx = eax; - for (i = 1; i <= maxidx; i++) { + for (i = 1; i <= maxidx +2; i++) { + cpuid(&eax,&ebx,&ecx,&edx, i,0); + if (i == 4) { + printf("\n"); + for (ecx_in = 1; ecx_in < 10; ecx_in++) { + cpuid(&eax,&ebx,&ecx,&edx, i,ecx_in); + } + printf("\n"); + } + + if (i == 0xb) { + printf("\n"); for (ecx_in = 1; ecx_in < 10; ecx_in++) { cpuid(&eax,&ebx,&ecx,&edx, i,ecx_in); } + printf("\n"); } + + if (i == 0xd) { + printf("\n"); + for (ecx_in = 1; ecx_in < 5; ecx_in++) { + cpuid(&eax,&ebx,&ecx,&edx, i,ecx_in); + } + printf("\n"); + } + + } + printf("\n"); + cpuid(&eax,&ebx,&ecx,&edx, 0x80000000,0); maxextidx = eax; - for (i = 0x80000001; i <= maxextidx; i++) { + for (i = 0x80000001; i <= maxextidx +2; i++) { cpuid(&eax,&ebx,&ecx,&edx, i,0); } -- 2.47.3