[mips] Define patterns for the atomic_{load,store}_{8,16,32,64} nodes.
authorVasileios Kalintiris <Vasileios.Kalintiris@imgtec.com>
Fri, 6 Nov 2015 12:07:20 +0000 (12:07 +0000)
committerVasileios Kalintiris <Vasileios.Kalintiris@imgtec.com>
Fri, 6 Nov 2015 12:07:20 +0000 (12:07 +0000)
commit309de66dc950e817a8a6462d96587ecd3493b6f4
tree1f7b0fcc652b0dfeb17733e61c435bcda63c1638
parent65cad952e45253940a2cc37f8d9ce00010938338
[mips] Define patterns for the atomic_{load,store}_{8,16,32,64} nodes.

Summary:
Without these patterns we would generate a complete LL/SC sequence.
This would be problematic for memory regions marked as WRITE-only or
READ-only, as the instructions LL/SC would read/write to the protected
memory regions correspondingly.

Reviewers: dsanders

Subscribers: llvm-commits, dsanders

Differential Revision: http://reviews.llvm.org/D14397

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@252293 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/Mips/Mips64InstrInfo.td
lib/Target/Mips/MipsISelLowering.cpp
lib/Target/Mips/MipsInstrInfo.td
test/CodeGen/Mips/atomicSCr6.ll [deleted file]
test/CodeGen/Mips/llvm-ir/atomicrmx.ll [new file with mode: 0644]
test/CodeGen/Mips/llvm-ir/load-atomic.ll [new file with mode: 0644]
test/CodeGen/Mips/llvm-ir/store-atomic.ll [new file with mode: 0644]