Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Revert "Temporarily Revert "Add basic loop fusion pass."" | Eric Christopher | 2019-04-17 | 1 | -0/+1088 |
| | | | | | | | | The reversion apparently deleted the test/Transforms directory. Will be re-reverting again. llvm-svn: 358552 | ||||
* | Temporarily Revert "Add basic loop fusion pass." | Eric Christopher | 2019-04-17 | 1 | -1088/+0 |
| | | | | | | | | As it's causing some bot failures (and per request from kbarton). This reverts commit r358543/ab70da07286e618016e78247e4a24fcb84077fda. llvm-svn: 358546 | ||||
* | [InstCombine] canonicalize -0.0 to +0.0 in fcmp | Sanjay Patel | 2018-11-05 | 1 | -17/+17 |
| | | | | | | | | | | | | | | | | | As stated in IEEE-754 and discussed in: https://bugs.llvm.org/show_bug.cgi?id=38086 ...the sign of zero does not affect any FP compare predicate. Known regressions were fixed with: rL346097 (D54001) rL346143 The transform will help reduce pattern-matching complexity to solve: https://bugs.llvm.org/show_bug.cgi?id=39475 ...as well as improve CSE and codegen (a zero constant is almost always easier to produce than 0x80..00). llvm-svn: 346147 | ||||
* | [InstCombine] loosen FP 0.0 constraint for fcmp+select substitution | Sanjay Patel | 2018-11-05 | 1 | -21/+14 |
| | | | | | | | | | | | | | | It looks like we correctly removed edge cases with 0.0 from D50714, but we were a bit conservative because getBinOpIdentity() doesn't distinguish between +0.0 and -0.0 and 'nsz' is effectively always true for fcmp (see discussion in: https://bugs.llvm.org/show_bug.cgi?id=38086 Without this change, we would get regressions by canonicalizing to +0.0 in all fcmp, and that's a step towards solving: https://bugs.llvm.org/show_bug.cgi?id=39475 llvm-svn: 346143 | ||||
* | [InstCombine] adjust tests for select with FP identity op; NFC | Sanjay Patel | 2018-11-05 | 1 | -30/+32 |
| | | | | | | These are mislabeled as negative tests. llvm-svn: 346142 | ||||
* | [InstCombine] add/adjust tests for select with fsub identity op; NFC | Sanjay Patel | 2018-11-05 | 1 | -4/+22 |
| | | | | llvm-svn: 346138 | ||||
* | [InstCombine] add tests for select with FP identity op; NFC | Sanjay Patel | 2018-11-05 | 1 | -0/+64 |
| | | | | llvm-svn: 346136 | ||||
* | [InstCombine] Fold Select with binary op - FP opcodes | David Bolvansky | 2018-08-23 | 1 | -35/+285 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Summary: Follow up for https://reviews.llvm.org/rL339520 and https://reviews.llvm.org/rL338300 Alive: ``` %A = fcmp oeq float %x, 0.0 %B = fadd nsz float %x, %z %C = select i1 %A, float %B, float %y => %C = select i1 %A, float %z, float %y ---------- %A = fcmp oeq float %x, 0.0 %B = fadd nsz float %x, %z %C = select %A, float %B, float %y => %C = select %A, float %z, float %y Done: 1 Optimization is correct %A = fcmp une float %x, -0.0 %B = fadd nsz float %x, %z %C = select i1 %A, float %y, float %B => %C = select i1 %A, float %y, float %z ---------- %A = fcmp une float %x, -0.0 %B = fadd nsz float %x, %z %C = select %A, float %y, float %B => %C = select %A, float %y, float %z Done: 1 Optimization is correct ``` Reviewers: spatel, lebedev.ri Reviewed By: spatel Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D50714 llvm-svn: 340538 | ||||
* | [NFC] Tests for select with binop fold - FP opcodes | David Bolvansky | 2018-08-14 | 1 | -20/+17 |
| | | | | llvm-svn: 339692 | ||||
* | [NFC] Renamed test file | David Bolvansky | 2018-08-12 | 1 | -0/+764 |
llvm-svn: 339523 |