Skip to content
  1. Dec 04, 2023
  2. Nov 20, 2023
    • Carlos Galindo's avatar
      Work-list based and Reps tabular slicing for recursive programs. · 58d95b2c
      Carlos Galindo authored
      - Worklist approach implemented through a Config flag in SummaryTable.
      - Unconstrained and constrained variantes (TabularAlgorithm & ConstrainedTabularAlgorithm). The constrained version features a limit to the size of the stack.
      - Constrained subsumed variant for efficiency (ConstrainedSubsumedTabularAlgorithm).
      - Efficient EdgeList (linked-list) to store edges visited through a traversal.
      - Bump language level to 16.
      - eKnife cli: added switch to use tabular algorithms.
      - Moved benchmarks out of eKnife and BencherTest.
      58d95b2c
  3. Jul 13, 2023
    • Carlos Galindo's avatar
      Benchmarks for JSS Revision 1 (erlsom) · b909e059
      Carlos Galindo authored
      - Basic support for records, bin, float, try, catch
      - Feature to count access constraints traversed
      - Feature to count access constraints present in the graph
      - Bugs fixed:
        - Can handle empty string represented as list `[]`.
        - Can handle other unary operators apart from `-int`.
        - Can handle nested list comprehensions.
      - Now requires a running instance of erlang, use the following command:
      
          erl -pa (pwd)/e-Knife/src/main/resources -name server@localhost -setcookie erlang -noshell
      
      - BencherTest now accepts `-DiterGen=NUM` and `-DiterSlice=NUM` as Java arguments.
      b909e059
  4. Feb 23, 2023
  5. Feb 16, 2023
  6. Oct 01, 2021
  7. Sep 10, 2021
  8. Sep 07, 2021
    • Sergio Pérez's avatar
      New treatment for generators: · fc7ceba1
      Sergio Pérez authored
      - Generators implicit and explicit restrictions are now more accurately treated
      - Created +-[]S (List structure constraints)
      - Created +-{}S (Tuple structure constraints)
      - New kind of edges (ValueStructural Edges)
      - Prevented the interference of the traversal of (Black) Structural Edges with other edges
      fc7ceba1
  9. Jul 27, 2021
    • Sergio Pérez's avatar
      FIXES AND SUMMARY IMPROVEMENTS · 91e8eaea
      Sergio Pérez authored
      * Erlang script path defined
      * Fixes in code generation: some sliced expressions removed instead of replaced
      * Fix guard stacks in CFG generation
      * Logic simplification in Node-Result creation process
      * Fixed dead clause detection
      * Improvements added to summary generation:
          + Function calls associated to a particular formal-out-formal-in summary edge are only repended when the grammar term is created, and not for each added production
          + The list of constraints stacked after an AsteriskConstraint are removed when another AsteriskConstraint is pushed to the stack
      91e8eaea
  10. Jul 23, 2021
  11. Jul 09, 2021
    • Sergio Pérez's avatar
      LAST adapted to Erlang with some improvements: · 40b40855
      Sergio Pérez authored
      * ast.erl and saver.erl has been moved to e-knife resources folder
      * CFG and Value arcs are now in e-Knife
      * CFGs are built with a the visitor pattern
      * The graph library is now jgrapht
      * CFGs of the clauses of the same method are now independent
      * Interprocedural clause matching has been improved to not link unreachable clauses
      * Shadowed variables and its value are now delimited to their context
      * Classic algorithm has been added to slicing computed algorithms
      40b40855
  12. Jun 11, 2021
  13. Jun 10, 2021
Loading