changeset de112a8ac3d8 in /z/repo/m5
details: http://repo.m5sim.org/m5?cmd=changeset;node=de112a8ac3d8
description:
        X86: Fix the decoding for and fill out FST and FSTP.

diffstat:

2 files changed, 10 insertions(+), 2 deletions(-)
src/arch/x86/isa/decoder/x87.isa                                                
        |    4 ++--
src/arch/x86/isa/insts/x87/data_transfer_and_conversion/load_or_store_floating_point.py
 |    8 ++++++++

diffs (39 lines):

diff -r 2cd3ce4fa03f -r de112a8ac3d8 src/arch/x86/isa/decoder/x87.isa
--- a/src/arch/x86/isa/decoder/x87.isa  Thu Aug 20 00:41:27 2009 -0700
+++ b/src/arch/x86/isa/decoder/x87.isa  Thu Aug 20 00:42:14 2009 -0700
@@ -249,8 +249,8 @@
                 0x3: Inst::UD2();
                 default: fisttp();
             }
-            0x2: Inst::FST(Mq);
-            0x3: Inst::FSTP(Mq);
+            0x2: Inst::FST(Eq);
+            0x3: Inst::FSTP(Eq);
             0x4: decode MODRM_MOD {
                 0x3: fucom();
                 default: frstor();
diff -r 2cd3ce4fa03f -r de112a8ac3d8 
src/arch/x86/isa/insts/x87/data_transfer_and_conversion/load_or_store_floating_point.py
--- 
a/src/arch/x86/isa/insts/x87/data_transfer_and_conversion/load_or_store_floating_point.py
   Thu Aug 20 00:41:27 2009 -0700
+++ 
b/src/arch/x86/isa/insts/x87/data_transfer_and_conversion/load_or_store_floating_point.py
   Thu Aug 20 00:42:14 2009 -0700
@@ -65,6 +65,10 @@
     movfp st(-1), ufp1, spm=-1
 };
 
+def macroop FST_R {
+    movfp sti, st(0)
+};
+
 def macroop FST_M {
     stfp st(0), seg, sib, disp
 };
@@ -74,6 +78,10 @@
     stfp st(0), seg, riprel, disp
 };
 
+def macroop FSTP_R {
+    movfp sti, st(0), spm=1
+};
+
 def macroop FSTP_M {
     movfp ufp1, st(0), spm=1
     stfp ufp1, seg, sib, disp
_______________________________________________
m5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/m5-dev

Reply via email to