1. 20 Mar, 2019 1 commit
    • Junjie Gu's avatar
      This is the second and final step to get rid of Node's flags. · 2d11db1d
      Junjie Gu authored
      A isolated node is the one with a single value, thus checking
      its parent will be enough to know if it is single-value congruent
      Remove Node's flags enum and several dead code. This commit
      should have no function change
      Change-Id: Ia8e1658fd08b18d67a9a4c565e4ec4d81acc9006
  2. 19 Mar, 2019 2 commits
    • Jurek, Pawel's avatar
      Call getAnalysis in doFinalization only if it is needed. · 5faeeecc
      Jurek, Pawel authored
      There is a corner case: when we compile a file that has no kernels in it, the analysis is not added to the manager and we can't use it. This could result in a crash
      Change-Id: Ia48c276277b35ff0072f4763cb93fe67b586d24d
    • Junjie Gu's avatar
      All nodes of congruent class (CC) are linked. The previous · 3bb520c8
      Junjie Gu authored
      implementation keeps an isolated node in that link. This change
      will remove an isolated node from the link and put it in a
      separate congruent class (single-valued, thus isolated).
      This change will make it be able to do re-union nodes from different
      congruent class later after DeSSA is done. And this change seems
      easier to understand as well.
      The first version of this change had a bug (did not reset leader
      always once a node is removed), which is fixed in this change.
      Also, for the existing Path Halving (getLeader), it did not set
      the parent node correctly, though this is not correctness issue
      but bad for performance, which is also fixed in this change
      Change-Id: I8976dd394d24034cef388f4fbe4e2f77be62af79
  3. 18 Mar, 2019 2 commits
  4. 15 Mar, 2019 3 commits
  5. 14 Mar, 2019 4 commits
  6. 13 Mar, 2019 2 commits
  7. 12 Mar, 2019 4 commits
  8. 11 Mar, 2019 11 commits
  9. 09 Mar, 2019 1 commit
  10. 06 Mar, 2019 4 commits
  11. 05 Mar, 2019 6 commits