summaryrefslogtreecommitdiffstats
path: root/gcc
diff options
context:
space:
mode:
authorkcook <kcook@138bc75d-0d04-0410-961f-82ee72b054a4>2004-06-21 22:52:04 +0000
committerkcook <kcook@138bc75d-0d04-0410-961f-82ee72b054a4>2004-06-21 22:52:04 +0000
commitfb729ffe890cee3aedf1d801703ab725baca9061 (patch)
tree28ece762ecef29ceff4306e6d498eca880164475 /gcc
parente8ea3b9e130d9993080a230df4e85b805eac6f8d (diff)
downloadppe42-gcc-fb729ffe890cee3aedf1d801703ab725baca9061.tar.gz
ppe42-gcc-fb729ffe890cee3aedf1d801703ab725baca9061.zip
2004-06-21 Kelley Cook <kcook@gcc.gnu.org>
PR target/15551 * config/i386/i386.md: Change UNSPEC_STACK_PROBE to UNSPECV_STACK_PROBE. (allocate_stack_worker): Make unspec_volatile. (allocate_stack_worker_rex64): Likewise. (allocate_stack_worker_postreload): Likewise. (allocate_stack_worker_rex64_postreload): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83458 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog9
-rw-r--r--gcc/config/i386/i386.md17
2 files changed, 19 insertions, 7 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index db93898e4b6..3a87ac980e3 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,12 @@
+2004-06-21 Kelley Cook <kcook@gcc.gnu.org>
+
+ PR target/15551
+ * config/i386/i386.md: Change UNSPEC_STACK_PROBE to UNSPECV_STACK_PROBE.
+ (allocate_stack_worker): Make unspec_volatile.
+ (allocate_stack_worker_rex64): Likewise.
+ (allocate_stack_worker_postreload): Likewise.
+ (allocate_stack_worker_rex64_postreload): Likewise.
+
2004-06-21 Daniel Berlin <dberlin@dberlin.org>
Fix PR optimization/15982
diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md
index 54d327e5727..f7270a8bb46 100644
--- a/gcc/config/i386/i386.md
+++ b/gcc/config/i386/i386.md
@@ -1,3 +1,4 @@
+
;; GCC machine description for IA-32 and x86-64.
;; Copyright (C) 1988, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
;; 2001, 2002, 2003, 2004
@@ -63,7 +64,6 @@
(UNSPEC_INDNTPOFF 8)
; Prologue support
- (UNSPEC_STACK_PROBE 10)
(UNSPEC_STACK_ALLOC 11)
(UNSPEC_SET_GOT 12)
(UNSPEC_SSE_PROLOGUE_SAVE 13)
@@ -143,6 +143,7 @@
(define_constants
[(UNSPECV_BLOCKAGE 0)
+ (UNSPECV_STACK_PROBE 10)
(UNSPECV_EMMS 31)
(UNSPECV_LDMXCSR 37)
(UNSPECV_STMXCSR 40)
@@ -18310,7 +18311,8 @@
})
(define_insn "allocate_stack_worker_1"
- [(unspec:SI [(match_operand:SI 0 "register_operand" "a")] UNSPEC_STACK_PROBE)
+ [(unspec_volatile:SI [(match_operand:SI 0 "register_operand" "a")]
+ UNSPECV_STACK_PROBE)
(set (reg:SI SP_REG) (minus:SI (reg:SI SP_REG) (match_dup 0)))
(clobber (match_scratch:SI 1 "=0"))
(clobber (reg:CC FLAGS_REG))]
@@ -18320,8 +18322,8 @@
(set_attr "length" "5")])
(define_expand "allocate_stack_worker_postreload"
- [(parallel [(unspec:SI [(match_operand:SI 0 "register_operand" "a")]
- UNSPEC_STACK_PROBE)
+ [(parallel [(unspec_volatile:SI [(match_operand:SI 0 "register_operand" "a")]
+ UNSPECV_STACK_PROBE)
(set (reg:SI SP_REG) (minus:SI (reg:SI SP_REG) (match_dup 0)))
(clobber (match_dup 0))
(clobber (reg:CC FLAGS_REG))])]
@@ -18329,7 +18331,8 @@
"")
(define_insn "allocate_stack_worker_rex64"
- [(unspec:DI [(match_operand:DI 0 "register_operand" "a")] UNSPEC_STACK_PROBE)
+ [(unspec_volatile:DI [(match_operand:DI 0 "register_operand" "a")]
+ UNSPECV_STACK_PROBE)
(set (reg:DI SP_REG) (minus:DI (reg:DI SP_REG) (match_dup 0)))
(clobber (match_scratch:DI 1 "=0"))
(clobber (reg:CC FLAGS_REG))]
@@ -18339,8 +18342,8 @@
(set_attr "length" "5")])
(define_expand "allocate_stack_worker_rex64_postreload"
- [(parallel [(unspec:DI [(match_operand:DI 0 "register_operand" "a")]
- UNSPEC_STACK_PROBE)
+ [(parallel [(unspec_volatile:DI [(match_operand:DI 0 "register_operand" "a")]
+ UNSPECV_STACK_PROBE)
(set (reg:DI SP_REG) (minus:DI (reg:DI SP_REG) (match_dup 0)))
(clobber (match_dup 0))
(clobber (reg:CC FLAGS_REG))])]
OpenPOWER on IntegriCloud