summaryrefslogtreecommitdiff
path: root/src/arch/x86/isa/insts/x87
diff options
context:
space:
mode:
authorGabe Black <gblack@eecs.umich.edu>2009-08-20 00:42:14 -0700
committerGabe Black <gblack@eecs.umich.edu>2009-08-20 00:42:14 -0700
commite8c0ca5cd15be99ea8b56ac64824fce50e76d577 (patch)
tree2ceb54ada8edb4ce73a386f57783348e3e3d6746 /src/arch/x86/isa/insts/x87
parent843d06466892d1dcce79e7fcdcdbb5d50b40b922 (diff)
downloadgem5-e8c0ca5cd15be99ea8b56ac64824fce50e76d577.tar.xz
X86: Fix the decoding for and fill out FST and FSTP.
Diffstat (limited to 'src/arch/x86/isa/insts/x87')
-rw-r--r--src/arch/x86/isa/insts/x87/data_transfer_and_conversion/load_or_store_floating_point.py8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/arch/x86/isa/insts/x87/data_transfer_and_conversion/load_or_store_floating_point.py b/src/arch/x86/isa/insts/x87/data_transfer_and_conversion/load_or_store_floating_point.py
index 2a4c3f0ed..4837e1b45 100644
--- a/src/arch/x86/isa/insts/x87/data_transfer_and_conversion/load_or_store_floating_point.py
+++ b/src/arch/x86/isa/insts/x87/data_transfer_and_conversion/load_or_store_floating_point.py
@@ -65,6 +65,10 @@ def macroop FLD_P {
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 @@ def macroop FST_P {
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