[all-commits] [llvm/llvm-project] 70cac4: Reapply "[OpenMP][IRBuilder] Perform finalization ...
Johannes Doerfert via All-commits
all-commits at lists.llvm.org
Wed Feb 12 20:30:01 PST 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: 70cac41a2b7e4a7a28c36a544c9813c833d494bb
https://github.com/llvm/llvm-project/commit/70cac41a2b7e4a7a28c36a544c9813c833d494bb
Author: Johannes Doerfert <johannes at jdoerfert.de>
Date: 2020-02-12 (Wed, 12 Feb 2020)
Changed paths:
M clang/lib/CodeGen/CodeGenFunction.cpp
M llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
M llvm/lib/Transforms/Utils/CodeExtractor.cpp
M llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
Log Message:
-----------
Reapply "[OpenMP][IRBuilder] Perform finalization (incl. outlining) late"
Reapply 8a56d64d7620b3764f10f03f3a1e307fcdd72c2f with minor fixes.
The problem was that cancellation can cause new edges to the parallel
region exit block which is not outlined. The CodeExtractor will encode
the information which "exit" was taken as a return value. The fix is to
ensure we do not return any value from the outlined function, to prevent
control to value conversion we ensure a single exit block for the
outlined region.
This reverts commit 3aac953afa34885a72df96f2b703b65f85cbb149.
More information about the All-commits
mailing list