[all-commits] [llvm/llvm-project] f08c37: [ARM] Disable WLSTP loops
David Green via All-commits
all-commits at lists.llvm.org
Fri Nov 20 05:31:15 PST 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: f08c37da7bd40b6f70b5def310aa5b6acd2613dc
https://github.com/llvm/llvm-project/commit/f08c37da7bd40b6f70b5def310aa5b6acd2613dc
Author: David Green <david.green at arm.com>
Date: 2020-11-20 (Fri, 20 Nov 2020)
Changed paths:
M llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
M llvm/test/CodeGen/Thumb2/LowOverheadLoops/fast-fp-loops.ll
M llvm/test/CodeGen/Thumb2/LowOverheadLoops/mov-operand.ll
M llvm/test/CodeGen/Thumb2/LowOverheadLoops/mve-tail-data-types.ll
M llvm/test/CodeGen/Thumb2/LowOverheadLoops/reductions.ll
M llvm/test/CodeGen/Thumb2/LowOverheadLoops/while-loops.ll
M llvm/test/CodeGen/Thumb2/mve-fma-loops.ll
M llvm/test/CodeGen/Thumb2/mve-postinc-lsr.ll
Log Message:
-----------
[ARM] Disable WLSTP loops
This checks to see if the loop will likely become a tail predicated loop
and disables wls loop generation if so, as the likelihood for reverting
is currently too high. These should be fairly rare situations anyway due
to the way iterations and element counts are used during lowering. Just
not trying can alter how SCEV's are materialized however, leading to
different codegen.
It also adds a option to disable all while low overhead loops, for
debugging.
Differential Revision: https://reviews.llvm.org/D91663
More information about the All-commits
mailing list