1. 14 Mar, 2016 1 commit
  2. 11 Mar, 2016 1 commit
  3. 09 Mar, 2016 1 commit
  4. 08 Mar, 2016 3 commits
  5. 25 Feb, 2016 2 commits
  6. 22 Feb, 2016 1 commit
  7. 19 Feb, 2016 1 commit
  8. 05 Feb, 2016 9 commits
  9. 04 Feb, 2016 1 commit
    • Johannes Kanig's avatar
      N127-001 improve performance on fastWP · 2afdad2c
      Johannes Kanig authored
      On N121-024 we fixed a bug where a state was incorrectly reused during
      merge. The fix was to never reuse state when merging. This resulted in a
      performance drop.
      
      The new fix now marks states which should not be reused - basically
      states that come from raise - and when such a state is present during
      merging, we don't reuse. Otherwise, we reuse.  This seems to get us the
      performance and passes all tests.
      
      Marking is implemented simply by a flag in states
      
      * mlw_wp.ml:
      (mark) allows to set the marked flag of a state
      (empty) empty state is not marked
      (havoc) havoc doesn't change marked state
      (merge_vars, merge_regs) new argument "marked", only create a new
        variable when marked is true, otherwise reuse
      (fast_wp) in the case of Eraise, mark the used state
      
      M415-042 pass labels down to conjunctions
      
      Why3 parser groups the loop invariants into a single formula. This patch
      allows to have the VC labels on every conjunct
      
      mlw_wp.ml
      (fastwp) call wp_expl instead of t_label
      2afdad2c
  10. 02 Feb, 2016 1 commit
  11. 01 Feb, 2016 1 commit
  12. 26 Jan, 2016 1 commit
  13. 25 Jan, 2016 1 commit
  14. 23 Jan, 2016 1 commit
  15. 18 Jan, 2016 2 commits
  16. 17 Jan, 2016 1 commit
  17. 13 Jan, 2016 1 commit
  18. 12 Jan, 2016 2 commits
  19. 10 Jan, 2016 1 commit
    • Andrei Paskevich's avatar
      Mlw_expr: fix potentially unsound pattern matching in programs · eda92a0b
      Andrei Paskevich authored
      split the ppat_ghost field in program patterns into two distinct
      conditions:
      - ppat_ghost, indicating that the pattern starts as ghost,
        meaning that all variables in it are ghost, too;
      - ppat_fail, meaning that the pattern contains a refutable
        ghost subpattern, which makes the match in the extracted code
        impossible, which makes the whole match expression ghost.
      
      Until now, the two conditions were disjunctively combined, making
      admissible the invalid pattern matching in bench/p/b-d/ghost4.mlw.
      eda92a0b
  20. 08 Jan, 2016 1 commit
  21. 04 Jan, 2016 1 commit
  22. 16 Dec, 2015 1 commit
  23. 15 Dec, 2015 2 commits
  24. 11 Dec, 2015 3 commits