aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Kenner <kenner@vlsi1.ultra.nyu.edu>2001-11-22 11:56:35 +0000
committerRichard Kenner <kenner@gcc.gnu.org>2001-11-22 06:56:35 -0500
commit669fe758846d90bda6cb07721573bd3bbffd25e7 (patch)
treed84f30eddcc27b32520e471120017a9d31015c24
parent98180123a1cc32e3f34605002b74db03c8fcd856 (diff)
downloadgcc-669fe758846d90bda6cb07721573bd3bbffd25e7.zip
gcc-669fe758846d90bda6cb07721573bd3bbffd25e7.tar.gz
gcc-669fe758846d90bda6cb07721573bd3bbffd25e7.tar.bz2
i386.md (leave, [...]): Have RTL reflect what insn actually does.
* config/i386/i386.md (leave, leave_rex64): Have RTL reflect what insn actually does. From-SVN: r47264
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/i386/i386.md8
2 files changed, 9 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index c95fbdf..685ef9a 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+Thu Nov 22 06:49:14 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * config/i386/i386.md (leave, leave_rex64): Have RTL reflect what
+ insn actually does.
+
2001-11-22 Nick Clifton <nickc@cambridge.redhat.com>
* doc/invoke.texi (M32R/D Option Summary): Document -m32r switch.
diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md
index d7ab20f..89f5b50 100644
--- a/gcc/config/i386/i386.md
+++ b/gcc/config/i386/i386.md
@@ -13714,8 +13714,8 @@
"ix86_expand_epilogue (2); DONE;")
(define_insn "leave"
- [(set (reg:SI 7) (reg:SI 6))
- (set (reg:SI 6) (mem:SI (pre_dec:SI (reg:SI 7))))
+ [(set (reg:SI 7) (plus:SI (reg:SI 6) (const_int 4)))
+ (set (reg:SI 6) (mem:SI (reg:SI 7)))
(clobber (mem:BLK (scratch)))]
"!TARGET_64BIT"
"leave"
@@ -13727,8 +13727,8 @@
(set_attr "ppro_uops" "few")])
(define_insn "leave_rex64"
- [(set (reg:DI 7) (reg:DI 6))
- (set (reg:DI 6) (mem:DI (pre_dec:DI (reg:DI 7))))
+ [(set (reg:DI 7) (plus:DI (reg:DI 6) (const_int 4)))
+ (set (reg:DI 6) (mem:DI (reg:DI 7)))
(clobber (mem:BLK (scratch)))]
"TARGET_64BIT"
"leave"