summaryrefslogtreecommitdiffstats
path: root/lib/CodeGen/SelectionDAG/TargetLowering.cpp
diff options
context:
space:
mode:
authorJim Grosbach <grosbach@apple.com>2010-06-23 16:07:42 +0000
committerJim Grosbach <grosbach@apple.com>2010-06-23 16:07:42 +0000
commit9a526495e0c06c4014d7500788cad1929fd244d3 (patch)
treedbab44706775e2cd8dbfcd7b8529afffa2271c93 /lib/CodeGen/SelectionDAG/TargetLowering.cpp
parentb9cd499dec44397571b682c9de3f132df2721bb5 (diff)
downloadexternal_llvm-9a526495e0c06c4014d7500788cad1929fd244d3.zip
external_llvm-9a526495e0c06c4014d7500788cad1929fd244d3.tar.gz
external_llvm-9a526495e0c06c4014d7500788cad1929fd244d3.tar.bz2
Some targets don't require the fencing MEMBARRIER instructions surrounding
atomic intrinsics, either because the use locking instructions for the atomics, or because they perform the locking directly. Add support in the DAG combiner to fold away the fences. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@106630 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/SelectionDAG/TargetLowering.cpp')
-rw-r--r--lib/CodeGen/SelectionDAG/TargetLowering.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/lib/CodeGen/SelectionDAG/TargetLowering.cpp b/lib/CodeGen/SelectionDAG/TargetLowering.cpp
index 945cbbb..bfd689b 100644
--- a/lib/CodeGen/SelectionDAG/TargetLowering.cpp
+++ b/lib/CodeGen/SelectionDAG/TargetLowering.cpp
@@ -581,6 +581,7 @@ TargetLowering::TargetLowering(const TargetMachine &tm,
IfCvtBlockSizeLimit = 2;
IfCvtDupBlockSizeLimit = 0;
PrefLoopAlignment = 0;
+ ShouldFoldAtomicFences = false;
InitLibcallNames(LibcallRoutineNames);
InitCmpLibcallCCs(CmpLibcallCCs);