summaryrefslogtreecommitdiff
path: root/src/arch/x86/isa/insts/general_purpose
diff options
context:
space:
mode:
authorGabe Black <gblack@eecs.umich.edu>2008-06-12 00:49:50 -0400
committerGabe Black <gblack@eecs.umich.edu>2008-06-12 00:49:50 -0400
commite0c20386ac0f8f54db2e8947793b4c2debabcefc (patch)
treef3aad0978e98724d3ab08054a031ea3887f047f6 /src/arch/x86/isa/insts/general_purpose
parent2bb8933f789d65f47a322e1384eb2e500699bf14 (diff)
downloadgem5-e0c20386ac0f8f54db2e8947793b4c2debabcefc.tar.xz
X86: Add microops and supporting code to manipulate the whole rflags register.
Diffstat (limited to 'src/arch/x86/isa/insts/general_purpose')
-rw-r--r--src/arch/x86/isa/insts/general_purpose/flags/push_and_pop.py8
1 files changed, 3 insertions, 5 deletions
diff --git a/src/arch/x86/isa/insts/general_purpose/flags/push_and_pop.py b/src/arch/x86/isa/insts/general_purpose/flags/push_and_pop.py
index fe60350c1..5937ac074 100644
--- a/src/arch/x86/isa/insts/general_purpose/flags/push_and_pop.py
+++ b/src/arch/x86/isa/insts/general_purpose/flags/push_and_pop.py
@@ -1,4 +1,4 @@
-# Copyright (c) 2007 The Hewlett-Packard Development Company
+# Copyright (c) 2007-2008 The Hewlett-Packard Development Company
# All rights reserved.
#
# Redistribution and use of this software in source and binary forms,
@@ -57,8 +57,7 @@ microcode = '''
def macroop PUSHF {
.adjust_env oszIn64Override
- # This should really read the whole flags register, not just user flags.
- ruflags t1
+ rflags t1
stupd t1, ss, [1, t0, rsp], "-env.dataSize"
};
@@ -67,7 +66,6 @@ def macroop POPF {
ld t1, ss, [1, t0, rsp]
addi rsp, rsp, dsz
- # This should really write the whole flags register, not just user flags.
- wruflags t1, t0
+ wrflags t1, t0
};
'''