changeset d9823ce926fa in /z/repo/m5
details: http://repo.m5sim.org/m5?cmd=changeset;node=d9823ce926fa
description:
        X86: Sometimes CPUID depends on ecx, so pass that in.

diffstat:

 src/arch/x86/cpuid.cc                         |  3 ++-
 src/arch/x86/cpuid.hh                         |  3 ++-
 src/arch/x86/isa/decoder/two_byte_opcodes.isa |  3 ++-
 3 files changed, 6 insertions(+), 3 deletions(-)

diffs (39 lines):

diff -r 68195a20503b -r d9823ce926fa src/arch/x86/cpuid.cc
--- a/src/arch/x86/cpuid.cc     Sun May 02 00:39:46 2010 -0700
+++ b/src/arch/x86/cpuid.cc     Sun May 02 00:40:17 2010 -0700
@@ -79,7 +79,8 @@
     }
 
     bool
-    doCpuid(ThreadContext * tc, uint32_t function, CpuidResult &result)
+    doCpuid(ThreadContext * tc, uint32_t function,
+            uint32_t index, CpuidResult &result)
     {
         uint16_t family = bits(function, 31, 16);
         uint16_t funcNum = bits(function, 15, 0);
diff -r 68195a20503b -r d9823ce926fa src/arch/x86/cpuid.hh
--- a/src/arch/x86/cpuid.hh     Sun May 02 00:39:46 2010 -0700
+++ b/src/arch/x86/cpuid.hh     Sun May 02 00:40:17 2010 -0700
@@ -55,7 +55,8 @@
         {}
     };
 
-    bool doCpuid(ThreadContext * tc, uint32_t function, CpuidResult &result);
+    bool doCpuid(ThreadContext * tc, uint32_t function,
+            uint32_t index, CpuidResult &result);
 } // namespace X86ISA
 
 #endif
diff -r 68195a20503b -r d9823ce926fa 
src/arch/x86/isa/decoder/two_byte_opcodes.isa
--- a/src/arch/x86/isa/decoder/two_byte_opcodes.isa     Sun May 02 00:39:46 
2010 -0700
+++ b/src/arch/x86/isa/decoder/two_byte_opcodes.isa     Sun May 02 00:40:17 
2010 -0700
@@ -767,7 +767,8 @@
                 0x1: pop_fs();
                 0x2: CPUIDInst::CPUID({{
                     CpuidResult result;
-                    success = doCpuid(xc->tcBase(), bits(Rax, 31, 0), result);
+                    success = doCpuid(xc->tcBase(), bits(Rax, 31, 0),
+                        bits(Rcx, 31, 0), result);
                     Rax = result.rax;
                     Rbx = result.rbx;
                     Rcx = result.rcx;
_______________________________________________
m5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/m5-dev

Reply via email to