[OPENMP] Fixed codegen for 'omp cancel' construct.
authorAlexey Bataev <a.bataev@hotmail.com>
Tue, 15 Nov 2016 09:11:50 +0000 (09:11 +0000)
committerAlexey Bataev <a.bataev@hotmail.com>
Tue, 15 Nov 2016 09:11:50 +0000 (09:11 +0000)
commit473a3e7fed16ec27db398047d29082ce6cf9d318
tree584f7d4a848be53a40d21bc09af776deb47b4517
parent53315a7b98dd97f9ead880ecf84906b01e8958d2
[OPENMP] Fixed codegen for 'omp cancel' construct.

If 'omp cancel' construct is used in a worksharing construct it may cause
hanging of the software in case if reduction clause is used. Patch fixes
this problem by avoiding extra reduction processing for branches that
were canceled.

llvm-svn: 286944
clang/lib/CodeGen/CGStmtOpenMP.cpp
clang/lib/CodeGen/CodeGenFunction.h
clang/test/OpenMP/cancel_codegen.cpp