Robin Morisset 1ad925ccf8 Refactor AtomicExpandPass and add a generic isAtomic() method to Instruction
Summary:
Split shouldExpandAtomicInIR() into different versions for Stores/Loads/RMWs/CmpXchgs.
Makes runOnFunction cleaner (no more redundant checking/casting), and will help moving
the X86 backend to this pass.

This requires a way of easily detecting which instructions are atomic.
I followed the pattern of mayReadFromMemory, mayWriteOrReadMemory, etc.. in making
isAtomic() a method of Instruction implemented by a switch on the opcodes.

Test Plan: make check

Reviewers: jfb

Subscribers: mcrosier, llvm-commits

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@217080 91177308-0d34-0410-b5e6-96231b3b80d8
2014-09-03 21:29:59 +00:00
..
2014-07-18 15:51:28 +00:00
2014-07-18 15:51:28 +00:00
2014-06-27 18:19:56 +00:00
2014-06-25 23:39:08 +00:00
2014-08-25 00:28:27 +00:00
2014-07-18 15:51:28 +00:00
2014-06-27 18:19:56 +00:00
2014-06-27 18:19:56 +00:00
2014-08-26 12:47:26 +00:00
2014-08-29 21:53:01 +00:00
2014-07-24 14:25:39 +00:00
2014-08-29 21:53:01 +00:00
2014-04-29 13:21:05 +00:00
2014-08-01 23:28:49 +00:00
2014-08-23 23:07:14 +00:00