[PATCH] [SimplifyCFG] Be more aggressive

James Molloy james.molloy at arm.com
Thu Feb 12 02:07:24 PST 2015


Hi Hal,

Sure. There is no difference in any of the industry-standard test suites I have. In LNT, I see two small regressions and  9 small improvements (on AArch64):

Regressions:

- telecomm-gsm: 4.0%
- Nodesplitting-dbl: 1.04%

Improvements:

- aha: -7.8%
- lambda: -6.16%
- covariance (from polybench): -3.65%
- gemver: -2.65%
- +5 more sub-2% improvements.

Cheers,

James


REPOSITORY
  rL LLVM

================
Comment at: lib/Transforms/Utils/SimplifyCFG.cpp:57
@@ -56,1 +56,3 @@
+// Chosen as 2 so as to be cheap, but still to have enough power to fold
+// a select, so the "clamp" idiom (of a min followed by a max) will be caught.
 static cl::opt<unsigned>
----------------
hfinkel wrote:
> Do you mean two selects?
No; the heuristic has to be enough that it will hoist *one* select, to then remove the branch and in the end cause two selects.

http://reviews.llvm.org/D7507

EMAIL PREFERENCES
  http://reviews.llvm.org/settings/panel/emailpreferences/






More information about the llvm-commits mailing list