From: David Daney Date: Mon, 10 Sep 2007 18:23:27 +0000 (+0000) Subject: mips.md (UNSPEC_MEMORY_BARRIER): New entry in define_constants. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=bfd9cff5c5bbcbea235e60529138848df5222b0c;p=gcc.git mips.md (UNSPEC_MEMORY_BARRIER): New entry in define_constants. * config/mips/mips.md (UNSPEC_MEMORY_BARRIER): New entry in define_constants. (memory_barrier): Rewrote as an insn that clobbers memory. From-SVN: r128349 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index b5a55a38a35..9360ae05cf1 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2007-09-10 David Daney + + * config/mips/mips.md (UNSPEC_MEMORY_BARRIER): New entry in + define_constants. + (memory_barrier): Rewrote as an insn that clobbers memory. + 2007-09-10 Richard Sandiford * config/mips/mips.c (mips_global_pointer): Check diff --git a/gcc/config/mips/mips.md b/gcc/config/mips/mips.md index 76dde25fc9c..42f9b1ea323 100644 --- a/gcc/config/mips/mips.md +++ b/gcc/config/mips/mips.md @@ -57,6 +57,7 @@ (UNSPEC_SYNC_OLD_OP 38) (UNSPEC_SYNC_NEW_OP 39) (UNSPEC_SYNC_EXCHANGE 40) + (UNSPEC_MEMORY_BARRIER 41) (UNSPEC_ADDRESS_FIRST 100) @@ -4304,10 +4305,11 @@ ;; Atomic memory operations. -(define_expand "memory_barrier" - [(unspec_volatile [(const_int 0)] UNSPEC_SYNC)] +(define_insn "memory_barrier" + [(set (mem:BLK (scratch)) + (unspec:BLK [(const_int 0)] UNSPEC_MEMORY_BARRIER))] "ISA_HAS_SYNC" - "") + "sync") (define_insn "sync_compare_and_swap" [(set (match_operand:GPR 0 "register_operand" "=&d,d")