summaryrefslogtreecommitdiffstats
path: root/clang/lib/CodeGen/CGOpenCLRuntime.cpp
diff options
context:
space:
mode:
authorAlexey Bataev <a.bataev@hotmail.com>2015-01-22 05:29:28 +0000
committerAlexey Bataev <a.bataev@hotmail.com>2015-01-22 05:29:28 +0000
commit13c7c4930c9067c1e0639c8c938422a503480755 (patch)
tree356b3c96b039cb3262bc53418093b9b395b40e38 /clang/lib/CodeGen/CGOpenCLRuntime.cpp
parenta91745820385ca7cbeab2cfe1df15800703f619b (diff)
downloadbcm5719-llvm-13c7c4930c9067c1e0639c8c938422a503480755.tar.gz
bcm5719-llvm-13c7c4930c9067c1e0639c8c938422a503480755.zip
[OPENMP] CodeGen for "omp atomic read [seq_cst]" directive.
"omp atomic read [seq_cst]" accepts expressions "v=x;". In this patch we perform an atomic load of "x" (using builtin atomic loading instructions or a call to "atomic_load()" for simple lvalues and "kmpc_atomic_start();load <x>;kmpc_atomic_end();" for other lvalues), convert the result of loading to type of "v" (using EmitScalarConversion() for simple types and EmitComplexToScalarConversion() for conversions from complex to scalar) and then store the result in "v". Differential Revision: http://reviews.llvm.org/D6431 llvm-svn: 226784
Diffstat (limited to 'clang/lib/CodeGen/CGOpenCLRuntime.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud