[all-commits] [llvm/llvm-project] 07c375: [OpenMP][FIX] Restrict more unsound assmptions abo...
Johannes Doerfert via All-commits
all-commits at lists.llvm.org
Tue Dec 13 22:58:52 PST 2022
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 07c375348083170e39c9498a42a9679c7e08f07f
https://github.com/llvm/llvm-project/commit/07c375348083170e39c9498a42a9679c7e08f07f
Author: Johannes Doerfert <johannes at jdoerfert.de>
Date: 2022-12-13 (Tue, 13 Dec 2022)
Changed paths:
M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
M llvm/test/Transforms/Attributor/IPConstantProp/return-argument.ll
M llvm/test/Transforms/Attributor/internal-noalias.ll
M llvm/test/Transforms/Attributor/value-simplify-assume.ll
M llvm/test/Transforms/Attributor/value-simplify-gpu.ll
M llvm/test/Transforms/Attributor/value-simplify-reachability.ll
A llvm/test/Transforms/OpenMP/value-simplify-openmp-opt.ll
Log Message:
-----------
[OpenMP][FIX] Restrict more unsound assmptions about threading
Even if all loads and stores are in `nosync` functions we cannot
guarantee there is no synchronization going on between them. As such, we
cannot use CFG reasoning. We could check the entire module, or, what
happens now to minimize test churn, is to check if all accesses are in
the same function that is `nosync`. A follow up will undo some of the
regressions where possible.
Similarly, reachability cannot be used to exclude an access if the
access is not known to be executed by the same thread as the given
instruction.
The OpenMP-opt test was added for the latter problem.
Commit: 4a5d0d8704aa2860c0459a63adfdd415a451c4f1
https://github.com/llvm/llvm-project/commit/4a5d0d8704aa2860c0459a63adfdd415a451c4f1
Author: Johannes Doerfert <johannes at jdoerfert.de>
Date: 2022-12-13 (Tue, 13 Dec 2022)
Changed paths:
M llvm/include/llvm/Transforms/IPO/Attributor.h
Log Message:
-----------
[Attributor][FIX] Avoid memory leakage through InstExclusionSet
Compare: https://github.com/llvm/llvm-project/compare/36a879e80f81...4a5d0d8704aa
More information about the All-commits
mailing list