[PATCH] D86262: [LoopIdiomRecognizePass] Options to disable part or the entire Loop Idiom Recognize Pass
Anh Tuyen Tran via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed Aug 19 21:29:48 PDT 2020
anhtuyen created this revision.
anhtuyen added reviewers: bmahjour, nemanjai, nikic, dfukalov, rupprecht, serge-sans-paille, Eugene.Zelenko.
anhtuyen added a project: LLVM.
Herald added subscribers: llvm-commits, wuzish, hiraditya.
anhtuyen requested review of this revision.
**Loop Idiom Recognize Pass** (LIRP) attempts to transform loops with subscripted arrays into **memcpy/memset **function calls. In some particular situation, this transformation introduces negative impacts. For example, the introduction of **memset/memcpy** function calls can confuse data dependence analysis (DA). While the existing DA can produce accurate dependence vectors based on subscripted array accesses, it might report inaccurate dependencies when the accesses are transformed into function calls.
This patch is to provide the user with options to disable part or the entire Loop Idiom Recognize Pass. The default behavior stays unchanged: no part of LIRP is disabled by default. The options will enable users to disable a particular part of the transformation, while he/she can still enjoy the benefit brought about by the rest of LIRP.
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D86262
Files:
llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
llvm/test/Transforms/LoopIdiom/disable-options.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D86262.286707.patch
Type: text/x-patch
Size: 12866 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200820/12859f51/attachment.bin>
More information about the llvm-commits
mailing list