[Attributor] Allow cfg reasoning for thread-local objects
authorJohannes Doerfert <johannes@jdoerfert.de>
Wed, 21 Dec 2022 00:13:41 +0000 (16:13 -0800)
committerJohannes Doerfert <johannes@jdoerfert.de>
Tue, 10 Jan 2023 00:40:20 +0000 (16:40 -0800)
commit1b9ba5856add7d557a5c1100f9e3033ba54e7efe
tree33ae05e0b4127da2789305c9182cfb0b545365cd
parent56be9123ca411b001cc6ebd84c36a62c72bd825c
[Attributor] Allow cfg reasoning for thread-local objects

If an object (=memory) is thread-local we do not need to worry about
threading effects.
17 files changed:
llvm/include/llvm/Transforms/IPO/Attributor.h
llvm/lib/Transforms/IPO/Attributor.cpp
llvm/lib/Transforms/IPO/AttributorAttributes.cpp
llvm/test/Transforms/Attributor/ArgumentPromotion/X86/attributes.ll
llvm/test/Transforms/Attributor/ArgumentPromotion/X86/min-legal-vector-width.ll
llvm/test/Transforms/Attributor/ArgumentPromotion/alignment.ll
llvm/test/Transforms/Attributor/ArgumentPromotion/basictest.ll
llvm/test/Transforms/Attributor/call-simplify-pointer-info.ll
llvm/test/Transforms/Attributor/internal-noalias.ll
llvm/test/Transforms/Attributor/noreturn_sync.ll
llvm/test/Transforms/Attributor/openmp_parallel.ll
llvm/test/Transforms/Attributor/reduced/openmp_opt_dont_follow_gep_without_value.ll
llvm/test/Transforms/Attributor/value-simplify-assume.ll
llvm/test/Transforms/Attributor/value-simplify-gpu.ll
llvm/test/Transforms/Attributor/value-simplify-local-remote.ll
llvm/test/Transforms/Attributor/value-simplify-pointer-info.ll
llvm/test/Transforms/Attributor/value-simplify-reachability.ll