diff options
author | Rong Xu <xur@google.com> | 2014-08-06 17:50:42 -0700 |
---|---|---|
committer | Rong Xu <xur@google.com> | 2014-08-06 17:50:42 -0700 |
commit | f1c18afafc2b321465ae6b07ede127095942d7dc (patch) | |
tree | 812093eebfa8510367718c12c02f7da03c0e73bf /gcc-4.9/gcc/config/sparc | |
parent | 38a8aecfb882072900434499696b5c32a2274515 (diff) | |
download | toolchain_gcc-f1c18afafc2b321465ae6b07ede127095942d7dc.tar.gz toolchain_gcc-f1c18afafc2b321465ae6b07ede127095942d7dc.tar.bz2 toolchain_gcc-f1c18afafc2b321465ae6b07ede127095942d7dc.zip |
[gcc-4.9] Merge svn r213650 from google/gcc-4_9 branch
Merge svn r213650 from google/gcc-4_9 branch. Tested with
arm,x86,mips,arm64,x86_64,mips64 build in liunux/windows.
Change-Id: I0c07f67d516074172aa393003eee664d01f2e0f2
Diffstat (limited to 'gcc-4.9/gcc/config/sparc')
-rw-r--r-- | gcc-4.9/gcc/config/sparc/sync.md | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/gcc-4.9/gcc/config/sparc/sync.md b/gcc-4.9/gcc/config/sparc/sync.md index e6e237f25..98ac0d3d6 100644 --- a/gcc-4.9/gcc/config/sparc/sync.md +++ b/gcc-4.9/gcc/config/sparc/sync.md @@ -64,11 +64,19 @@ "stbar" [(set_attr "type" "multi")]) +;; For LEON3, STB has the effect of membar #StoreLoad. +(define_insn "*membar_storeload_leon3" + [(set (match_operand:BLK 0 "" "") + (unspec:BLK [(match_dup 0) (const_int 2)] UNSPEC_MEMBAR))] + "TARGET_LEON3" + "stb\t%%g0, [%%sp-1]" + [(set_attr "type" "store")]) + ;; For V8, LDSTUB has the effect of membar #StoreLoad. (define_insn "*membar_storeload" [(set (match_operand:BLK 0 "" "") (unspec:BLK [(match_dup 0) (const_int 2)] UNSPEC_MEMBAR))] - "TARGET_V8" + "TARGET_V8 && !TARGET_LEON3" "ldstub\t[%%sp-1], %%g0" [(set_attr "type" "multi")]) |