diff options
author | Max Kazantsev <max.kazantsev@azul.com> | 2018-11-01 06:18:27 +0000 |
---|---|---|
committer | Max Kazantsev <max.kazantsev@azul.com> | 2018-11-01 06:18:27 +0000 |
commit | e0a2613aeaae93bf75ccc6c616fec3c45147a3df (patch) | |
tree | 0e12925d5c07b0216e8be574049a4b67706fc725 /clang/lib/CodeGen/CodeGenModule.cpp | |
parent | 59b78bcba2c7c20fbf5b4dcd14ea7a23c196a289 (diff) | |
download | llvm-e0a2613aeaae93bf75ccc6c616fec3c45147a3df.zip llvm-e0a2613aeaae93bf75ccc6c616fec3c45147a3df.tar.gz llvm-e0a2613aeaae93bf75ccc6c616fec3c45147a3df.tar.bz2 |
[SCEV] Avoid redundant computations when doing AddRec merge
When we calculate a product of 2 AddRecs, we end up making quite massive
computations to deduce the operands of resulting AddRec. This process can
be optimized by computing all args of intermediate sum and then calling
`getAddExpr` once rather than calling `getAddExpr` with intermediate
result every time a new argument is computed.
Differential Revision: https://reviews.llvm.org/D53189
Reviewed By: rtereshin
llvm-svn: 345813
Diffstat (limited to 'clang/lib/CodeGen/CodeGenModule.cpp')
0 files changed, 0 insertions, 0 deletions