[PATCH] D45330: [IPSCCP] Use PredicateInfo to propagate facts from cmp instructions.
Florian Hahn via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri May 4 05:30:52 PDT 2018
fhahn updated this revision to Diff 145176.
fhahn retitled this revision from "[WIP][IPSCCP] Use PredicateInfo to propagate facts from cmp instructions." to "[IPSCCP] Use PredicateInfo to propagate facts from cmp instructions.".
fhahn edited the summary of this revision.
fhahn added a comment.
Rebased and fixed a few problems. This now passes the test-suite, SPEC2000 & SPEC2006 with LTO. I've now also done a benchmarking run with the suites mentioned earlier on a cortex-a57 with LTO. Overall the geomean runtime improvement is 0.65 percent. The biggest improvements were
SingleSource/Benchmarks/BenchmarkGame/recursive -13.16%
SingleSource/Benchmarks/Stanford/RealMM -9.89%
MultiSource/Benchmarks/McCat/08-main/main -7.90%
MultiSource/Benchmarks/MiBench/telecomm-CRC32/telecomm-CRC32 -6.64%
MultiSource/Benchmarks/Prolangs-C++/ocean/ocean -6.26%
MultiSource/Benchmarks/ASC_Sequoia/IRSmk/IRSmk -6.13%
MultiSource/Benchmarks/Olden/mst/mst -6.08%
MultiSource/Benchmarks/mediabench/adpcm/rawcaudio/rawcaudio -5.21%
SingleSource/Benchmarks/Shootout-C++/Shootout-C++-objinst -5.19%
SingleSource/Benchmarks/Polybench/stencils/jacobi-1d-imper/jacobi-1d-imper -4.48%
MultiSource/Benchmarks/Prolangs-C++/simul/simul -4.26%
SingleSource/Benchmarks/Shootout/Shootout-objinst -3.72%
There are a few regression ranging from 0 to up 4% worse execution time
The sum of all SCCP stats for all benchmarks is 401732 over 374020 without this patch (+7%).
https://reviews.llvm.org/D45330
Files:
include/llvm/Transforms/Scalar/SCCP.h
lib/Transforms/IPO/SCCP.cpp
lib/Transforms/Scalar/SCCP.cpp
test/Transforms/IPConstantProp/musttail-call.ll
test/Transforms/SCCP/ipsccp-predicated.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D45330.145176.patch
Type: text/x-patch
Size: 12508 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180504/1037fac2/attachment.bin>
More information about the llvm-commits
mailing list