summaryrefslogtreecommitdiffstats
path: root/clang/lib/CodeGen/BackendUtil.cpp
diff options
context:
space:
mode:
authorJonathan Roelofs <jonathan@codesourcery.com>2014-10-03 21:57:44 +0000
committerJonathan Roelofs <jonathan@codesourcery.com>2014-10-03 21:57:44 +0000
commitb140a100a0479f9dfcb45c523f22dd64c41b68f0 (patch)
tree5c28a4c9a18528cf4ae78ca8a1a803d21fceeef8 /clang/lib/CodeGen/BackendUtil.cpp
parent0820e13e2a2676fd61500ec3cbe0a2c3d1902c43 (diff)
downloadbcm5719-llvm-b140a100a0479f9dfcb45c523f22dd64c41b68f0.tar.gz
bcm5719-llvm-b140a100a0479f9dfcb45c523f22dd64c41b68f0.zip
CFE Knob for: Add a thread-model knob for lowering atomics on baremetal & single threaded systems
http://reviews.llvm.org/D4985 llvm-svn: 219027
Diffstat (limited to 'clang/lib/CodeGen/BackendUtil.cpp')
-rw-r--r--clang/lib/CodeGen/BackendUtil.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/clang/lib/CodeGen/BackendUtil.cpp b/clang/lib/CodeGen/BackendUtil.cpp
index e28f504020e..6db952613d2 100644
--- a/clang/lib/CodeGen/BackendUtil.cpp
+++ b/clang/lib/CodeGen/BackendUtil.cpp
@@ -425,6 +425,11 @@ TargetMachine *EmitAssemblyHelper::CreateTargetMachine(bool MustCreateTM) {
llvm::TargetOptions Options;
+ Options.ThreadModel =
+ llvm::StringSwitch<llvm::ThreadModel::Model>(CodeGenOpts.ThreadModel)
+ .Case("posix", llvm::ThreadModel::POSIX)
+ .Case("single", llvm::ThreadModel::Single);
+
if (CodeGenOpts.DisableIntegratedAS)
Options.DisableIntegratedAS = true;
OpenPOWER on IntegriCloud