Michael Ilseman
09ee250e72
Added a slew of SimplifyInstruction floating-point optimizations, many of which take advantage of fast-math flags. Test cases included.
...
fsub X, +0 ==> X
fsub X, -0 ==> X, when we know X is not -0
fsub +/-0.0, (fsub -0.0, X) ==> X
fsub nsz +/-0.0, (fsub +/-0.0, X) ==> X
fsub nnan ninf X, X ==> 0.0
fadd nsz X, 0 ==> X
fadd [nnan ninf] X, (fsub [nnan ninf] 0, X) ==> 0
where nnan and ninf have to occur at least once somewhere in this expression
fmul X, 1.0 ==> X
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169940 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-12 00:27:46 +00:00
..
2012-12-10 18:37:26 +00:00
2012-12-03 17:02:12 +00:00
2012-12-03 17:02:12 +00:00
2011-12-20 20:03:10 +00:00
2012-12-03 17:02:12 +00:00
2012-12-03 17:02:12 +00:00
2012-12-03 17:02:12 +00:00
2012-12-03 17:02:12 +00:00
2012-10-08 16:38:25 +00:00
2012-10-08 16:38:25 +00:00
2012-12-03 17:02:12 +00:00
2011-12-20 02:50:00 +00:00
2012-12-03 17:02:12 +00:00
2012-12-03 17:02:12 +00:00
2012-12-03 17:02:12 +00:00
2012-12-03 17:02:12 +00:00
2012-12-12 00:27:46 +00:00
2012-02-05 22:14:15 +00:00
2012-09-19 13:45:43 +00:00
2012-10-08 16:38:25 +00:00
2012-10-08 16:38:25 +00:00
2012-09-27 10:14:43 +00:00
2012-10-08 16:38:25 +00:00
2012-12-03 17:02:12 +00:00
2012-12-03 17:02:12 +00:00
2012-07-17 15:35:40 +00:00
2012-12-03 21:56:57 +00:00
2012-12-03 17:02:12 +00:00
2012-12-03 17:02:12 +00:00
2012-11-02 21:48:17 +00:00
2012-12-03 17:02:12 +00:00
2012-12-03 17:02:12 +00:00
2012-12-03 17:02:12 +00:00
2012-12-03 16:50:05 +00:00
2012-08-29 20:32:13 +00:00
2012-12-03 17:02:12 +00:00
2012-12-03 17:02:12 +00:00
2012-08-24 18:31:44 +00:00
2012-12-11 10:29:10 +00:00
2012-09-17 06:43:55 +00:00
2012-12-03 17:02:12 +00:00
2012-12-03 21:56:57 +00:00
2012-12-03 17:02:12 +00:00
2012-12-03 17:02:12 +00:00
2012-12-03 17:02:12 +00:00
2012-12-03 17:02:12 +00:00
2012-12-03 17:02:12 +00:00
2012-10-08 16:38:25 +00:00