diff options
author | James Y Knight <jyknight@google.com> | 2016-04-01 19:33:19 +0000 |
---|---|---|
committer | James Y Knight <jyknight@google.com> | 2016-04-01 19:33:19 +0000 |
commit | e6a46463726aa489a996fba33ed1622f2395bffb (patch) | |
tree | a1654924759350f7743215d57b3da3925bae1a6c /llvm/lib/Target/ARM | |
parent | 6f8cfccbd36de601b6f35a854cb0dba5b9757495 (diff) | |
download | bcm5719-llvm-e6a46463726aa489a996fba33ed1622f2395bffb.tar.gz bcm5719-llvm-e6a46463726aa489a996fba33ed1622f2395bffb.zip |
Remove useless check for ThreadModel==Single in ARMISelLowering. NFC.
ThreadModel::Single is already handled already by ARMPassConfig adding
LowerAtomicPass to the pass list, which lowers all atomics to non-atomic
ops and deletes fences.
So by the time we get to ISel, there's no atomic fences left, so they
don't need special handling.
llvm-svn: 265178
Diffstat (limited to 'llvm/lib/Target/ARM')
-rw-r--r-- | llvm/lib/Target/ARM/ARMISelLowering.cpp | 10 |
1 files changed, 3 insertions, 7 deletions
diff --git a/llvm/lib/Target/ARM/ARMISelLowering.cpp b/llvm/lib/Target/ARM/ARMISelLowering.cpp index ecf15d3bd6f..908f40db587 100644 --- a/llvm/lib/Target/ARM/ARMISelLowering.cpp +++ b/llvm/lib/Target/ARM/ARMISelLowering.cpp @@ -843,14 +843,10 @@ ARMTargetLowering::ARMTargetLowering(const TargetMachine &TM, setOperationAction(ISD::DYNAMIC_STACKALLOC, MVT::i32, Expand); // ARMv6 Thumb1 (except for CPUs that support dmb / dsb) and earlier use - // the default expansion. If we are targeting a single threaded system, - // then set them all for expand so we can lower them later into their - // non-atomic form. + // the default expansion. InsertFencesForAtomic = false; - if (TM.Options.ThreadModel == ThreadModel::Single) - setOperationAction(ISD::ATOMIC_FENCE, MVT::Other, Expand); - else if (Subtarget->hasAnyDataBarrier() && (!Subtarget->isThumb() || - Subtarget->hasV8MBaselineOps())) { + if (Subtarget->hasAnyDataBarrier() && + (!Subtarget->isThumb() || Subtarget->hasV8MBaselineOps())) { // ATOMIC_FENCE needs custom lowering; the others should have been expanded // to ldrex/strex loops already. setOperationAction(ISD::ATOMIC_FENCE, MVT::Other, Custom); |