[PATCH] D52117: Generate llvm.loop.parallel_accesses instead of llvm.mem.parallel_loop_access metadata.
Michael Kruse via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Fri Dec 7 14:34:54 PST 2018
Meinersbur updated this revision to Diff 177320.
Meinersbur marked an inline comment as done.
Meinersbur added a comment.
- Allow multiple access groups per instructions, i.e. an instruction can be in multiple access groups. This allows a simple 'union' operation that occurs when inlining into another function. A memory access is considered parallel when at least one access group is listed in llvm.loop.parallel_accesses. This is prioritized over the 'intersect' case for combining instructions which would be dual. We only do best-effort here.
Repository:
rL LLVM
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D52117/new/
https://reviews.llvm.org/D52117
Files:
docs/LangRef.rst
include/llvm/Analysis/LoopInfo.h
include/llvm/Analysis/LoopInfoImpl.h
include/llvm/Analysis/VectorUtils.h
include/llvm/IR/LLVMContext.h
include/llvm/Transforms/Utils/LoopUtils.h
lib/Analysis/LoopInfo.cpp
lib/Analysis/VectorUtils.cpp
lib/IR/LLVMContext.cpp
lib/Transforms/InstCombine/InstCombineCalls.cpp
lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp
lib/Transforms/InstCombine/InstCombinePHI.cpp
lib/Transforms/Scalar/GVNHoist.cpp
lib/Transforms/Scalar/LoopVersioningLICM.cpp
lib/Transforms/Scalar/MemCpyOptimizer.cpp
lib/Transforms/Scalar/SROA.cpp
lib/Transforms/Scalar/Scalarizer.cpp
lib/Transforms/Utils/InlineFunction.cpp
lib/Transforms/Utils/Local.cpp
lib/Transforms/Utils/LoopUtils.cpp
lib/Transforms/Utils/SimplifyCFG.cpp
test/Analysis/LoopInfo/annotated-parallel-complex.ll
test/Analysis/LoopInfo/annotated-parallel-simple.ll
test/ThinLTO/X86/lazyload_metadata.ll
test/Transforms/Inline/parallel-loop-md-callee.ll
test/Transforms/Inline/parallel-loop-md-merge.ll
test/Transforms/Inline/parallel-loop-md.ll
test/Transforms/InstCombine/intersect-accessgroup.ll
test/Transforms/InstCombine/loadstore-metadata.ll
test/Transforms/InstCombine/mem-par-metadata-memcpy.ll
test/Transforms/LoopVectorize/X86/force-ifcvt.ll
test/Transforms/LoopVectorize/X86/parallel-loops-after-reg2mem.ll
test/Transforms/LoopVectorize/X86/parallel-loops.ll
test/Transforms/LoopVectorize/X86/pr34438.ll
test/Transforms/LoopVectorize/X86/vect.omp.force.ll
test/Transforms/LoopVectorize/X86/vect.omp.force.small-tc.ll
test/Transforms/LoopVectorize/X86/vector_max_bandwidth.ll
test/Transforms/SROA/mem-par-metadata-sroa.ll
test/Transforms/Scalarizer/basic.ll
test/Transforms/SimplifyCFG/combine-parallel-mem-md.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D52117.177320.patch
Type: text/x-patch
Size: 84731 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20181207/0487f419/attachment-0001.bin>
More information about the cfe-commits
mailing list