[PATCH] D38611: Fix X86 regression on linpack
Evgeny Stupachenko via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Oct 5 19:37:24 PDT 2017
evstupac created this revision.
After setting LSR instructions number priority number 1 for X86, I've received several regression (on of them from Wei Mi) on the tests like this:
for (int i = 0; i < n; i++)
y[i] += c * x[i];
// y[i], c, x[i] are float
The reason was in too many complicated address calculations which conflict with other instructions.
The suggested heuristic limit number of complicated addresses, leaving all gains and avoiding the regression.
Repository:
rL LLVM
https://reviews.llvm.org/D38611
Files:
include/llvm/Analysis/TargetTransformInfo.h
lib/Target/X86/X86TargetTransformInfo.cpp
lib/Transforms/Scalar/LoopStrengthReduce.cpp
test/CodeGen/X86/misched-matrix.ll
test/Transforms/LoopStrengthReduce/X86/folded_addresses.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D38611.117950.patch
Type: text/x-patch
Size: 17992 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20171006/7fde63f2/attachment.bin>
More information about the llvm-commits
mailing list