Files
swift-mirror/lib/SILPasses/Passes.cpp
Arnold Schwaighofer 39e77dc7c6 Enable loop rotation and LICM
We want this to get tested.

O3:
Ackermann 8.0%
GlobalClass 30.8%
R17315246 -50.2%
Phonebook 7.4%

Ofast:
RC4 -9.7%

The R17315246 regression is because LLVM seems to unable to 'unswitch' the loop
that makes up this benchmark after rotation. The only explaination I have atm is
that after rotation the first exit is a cond_fail.

I looked at RC4's profile and did not see anything suspicious. I was chasing a
10% regression yesterday in phonebook (today it seems i see about 7%
improvement). So I am not sure how 'stable' wrt to cache effects our benchmarks
are (we are calling into runtimes and whatnot).

Swift SVN r20098
2014-07-17 16:12:45 +00:00

6.9 KiB