sync.md (sync_add<mode>, [...]): Operand 0 is in-out.
* config/i386/sync.md (sync_add<mode>, sync_sub<mode>, sync_ior<mode>, sync_and<mode>, sync_xor<mode>): Operand 0 is in-out. From-SVN: r110645
This commit is contained in:
parent
85300b4692
commit
2cea5e8c50
2 changed files with 11 additions and 6 deletions
|
@ -1,3 +1,8 @@
|
|||
2006-02-02 Bernd Schmidt <bernd.schmidt@analog.com>
|
||||
|
||||
* config/i386/sync.md (sync_add<mode>, sync_sub<mode>, sync_ior<mode>,
|
||||
sync_and<mode>, sync_xor<mode>): Operand 0 is in-out.
|
||||
|
||||
2006-02-06 Daniel Berlin <dberlin@dberlin.org>
|
||||
|
||||
* tree-ssa-pre.c (bb_value_sets_t): Add antic_safe_loads.
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
;; GCC machine description for i386 synchronization instructions.
|
||||
;; Copyright (C) 2005
|
||||
;; Copyright (C) 2005, 2006
|
||||
;; Free Software Foundation, Inc.
|
||||
;;
|
||||
;; This file is part of GCC.
|
||||
|
@ -230,7 +230,7 @@
|
|||
"xchg{<modesuffix>}\t{%1, %0|%0, %1}")
|
||||
|
||||
(define_insn "sync_add<mode>"
|
||||
[(set (match_operand:IMODE 0 "memory_operand" "=m")
|
||||
[(set (match_operand:IMODE 0 "memory_operand" "+m")
|
||||
(unspec_volatile:IMODE
|
||||
[(plus:IMODE (match_dup 0)
|
||||
(match_operand:IMODE 1 "nonmemory_operand" "r<immconstraint>"))]
|
||||
|
@ -240,7 +240,7 @@
|
|||
"lock\;add{<modesuffix>}\t{%1, %0|%0, %1}")
|
||||
|
||||
(define_insn "sync_sub<mode>"
|
||||
[(set (match_operand:IMODE 0 "memory_operand" "=m")
|
||||
[(set (match_operand:IMODE 0 "memory_operand" "+m")
|
||||
(unspec_volatile:IMODE
|
||||
[(minus:IMODE (match_dup 0)
|
||||
(match_operand:IMODE 1 "nonmemory_operand" "r<immconstraint>"))]
|
||||
|
@ -250,7 +250,7 @@
|
|||
"lock\;sub{<modesuffix>}\t{%1, %0|%0, %1}")
|
||||
|
||||
(define_insn "sync_ior<mode>"
|
||||
[(set (match_operand:IMODE 0 "memory_operand" "=m")
|
||||
[(set (match_operand:IMODE 0 "memory_operand" "+m")
|
||||
(unspec_volatile:IMODE
|
||||
[(ior:IMODE (match_dup 0)
|
||||
(match_operand:IMODE 1 "nonmemory_operand" "r<immconstraint>"))]
|
||||
|
@ -260,7 +260,7 @@
|
|||
"lock\;or{<modesuffix>}\t{%1, %0|%0, %1}")
|
||||
|
||||
(define_insn "sync_and<mode>"
|
||||
[(set (match_operand:IMODE 0 "memory_operand" "=m")
|
||||
[(set (match_operand:IMODE 0 "memory_operand" "+m")
|
||||
(unspec_volatile:IMODE
|
||||
[(and:IMODE (match_dup 0)
|
||||
(match_operand:IMODE 1 "nonmemory_operand" "r<immconstraint>"))]
|
||||
|
@ -270,7 +270,7 @@
|
|||
"lock\;and{<modesuffix>}\t{%1, %0|%0, %1}")
|
||||
|
||||
(define_insn "sync_xor<mode>"
|
||||
[(set (match_operand:IMODE 0 "memory_operand" "=m")
|
||||
[(set (match_operand:IMODE 0 "memory_operand" "+m")
|
||||
(unspec_volatile:IMODE
|
||||
[(xor:IMODE (match_dup 0)
|
||||
(match_operand:IMODE 1 "nonmemory_operand" "r<immconstraint>"))]
|
||||
|
|
Loading…
Add table
Reference in a new issue