Skip to content
Snippets Groups Projects
  1. Oct 13, 2022
  2. Jul 19, 2022
  3. Jul 12, 2022
  4. Apr 11, 2022
  5. Mar 03, 2022
  6. Feb 23, 2022
  7. Feb 17, 2022
  8. Feb 16, 2022
  9. Feb 15, 2022
  10. Jan 13, 2022
  11. Feb 16, 2021
  12. Jan 21, 2021
  13. Sep 07, 2020
  14. Mar 06, 2020
  15. Feb 12, 2020
  16. Feb 10, 2020
  17. Jan 23, 2020
    • David Bühler's avatar
      [Eva] Saves the set of functions replaced by a builtin for an analysis. · c4e893cc
      David Bühler authored
      New function Builtins.is_builtin_overridden that indicates whether a function
      is replaced by a builtin.
      This function remains correct after loading the result of a previous analysis,
      and can thus be used by other plugins using Eva's results.
      Thus, Db.Value.use_spec_instead_of_definition now uses this function.
      c4e893cc
  18. Sep 16, 2019
    • David Bühler's avatar
    • David Bühler's avatar
      [Eva] Structure: adds data to the shape leaves. · a5d0d5ad
      David Bühler authored
      In abstract.ml, the structure of compound abstract values, locations and states
      carries the first class module of their leaf components as data.
      a5d0d5ad
    • David Bühler's avatar
      [Eva] Structure: separates keys and shapes in two distinct modules. · 4d2e9c76
      David Bühler authored
      Keys for abstract values, locations and states are created in structure.ml.
      Shapes are created in the respective modules Value, Location and Domain
      in abstract.ml.
      4d2e9c76
    • David Bühler's avatar
      [Eva] New file abstract defining the Internal and External module types. · e342fcf1
      David Bühler authored
      These module definitions were previously in abstract_value, abstract_location
      and abstract_domain. They are now grouped in this new file for the three
      abstractions.
      These module types should only be useful for the engine, and need not to be
      visible in the implementation of the various abstractions.
      
      New module type Leaf in abstract_value, abstract_location and abstract_domain
      with the key identifying the module. The internal structure is no longer needed
      in these abstractions, and is instead built by the engine from this key.
      
      Keys are no longer exported outside the modules.
      For abstract domains, the key is automatically created by the functor
      Domain_builder.Complete from the domain name.
      
      Many changes throughout the analyzer:
      - in the engine, Abstract_value.{Internal|External} becomes
        Abstract.Value.{Internal|External}.
      - in the abstractions, Abstract_value.Internal becomes Abstract_value.Leaf.
      e342fcf1
  19. Sep 06, 2019
  20. Aug 02, 2019
  21. Apr 03, 2019
  22. Mar 28, 2019
    • David Bühler's avatar
      [Eva] Base: rewrites is_valid_offset and valid_offset. · c82ea6d5
      David Bühler authored
      - shares and moves the functions [reduce_offset_by_validity] of Locations and
        Precise_locs into base.ml.
      - replaces the boolean argument ~for_writing into the new type access, that
        represents Read, Write or No_access. Without any access, offsets must point
        into or just beyond the base validity.
      - fixes the support of accesses of size 0: they are now invalid:
        + in bases with Invalid validity;
        + one past a base validity unless the base ends with an empty struct.
      c82ea6d5
  23. Feb 05, 2019
  24. Jan 21, 2019
  25. Jan 14, 2019
  26. Dec 12, 2018
  27. Dec 04, 2018
  28. Dec 03, 2018
Loading