94 Commits (eaf95951f55f1105c991ff96687bea3bb775cba7)

Author SHA1 Message Date
Jules Villard 1652144176 [pulse][9/9] add PulseDiagnostic to PulseBasicInterface
5 years ago
Jules Villard e3285d1340 [pulse][8/9] Domain interface
5 years ago
Jules Villard 4ded39240f [pulse][6/9] add PulseAbstractValue to PulseBasicInterface
5 years ago
Jules Villard 994d35ed38 [pulse][5/9] add PulseAttribute{,s} to PulseBasicInterface
5 years ago
Jules Villard 27c0d7258d [pulse][4/9] add PulseTrace to PulseBasicInterface
5 years ago
Jules Villard 8251e2dea8 [pulse][3/9] add PulseValueHistory to PulseBasicInterface
5 years ago
Jules Villard 168237a605 [pulse][2/9] add PulseInvalidation to PulseBasicInterface
5 years ago
Jules Villard 6a738045fd [pulse] interprocedural histories and traces
5 years ago
Jules Villard 4e3188a127 [pulse][minor] reorder arguments of AddressOfStackVariable
5 years ago
Jules Villard 669383d315 [pulse] more details about variable declaration events
5 years ago
Jules Villard fcbcfc3913 [pulse][minor] easier-to-understand debug output
5 years ago
Jules Villard 3ac8e27062 [pulse] use constant equality to prune unfeasible paths
5 years ago
Jules Villard 98e27f5c4a [pulse] record equality to constants as attributes
5 years ago
Jules Villard f2b4536970 [pulse][trivial] OCaml can infer the modules on its own
5 years ago
Jules Villard 807cc727b5 [pulse] use `Memory.add_attribute` for singleton attributes sets
5 years ago
Ezgi Çiçek c5ca4db8d0 [pulse][impurity] Use pulse for detecting impurity
6 years ago
Ezgi Çiçek a18e22ef7f [pulse] Remove empty edges and their WrittenTo from post
6 years ago
Jules Villard 0911a1297a [pulse] do not record addresses of logical variables
6 years ago
Ezgi Çiçek 8081dbfbf1 [pulse] Record the trace of the address written to
6 years ago
Ezgi Çiçek 675c79480d [pulse] Record writes explicitly as Attributes and get rid of heuristic in is_cell_read_only
6 years ago
Ezgi Çiçek 127902222d [pulse] Filter AddressOfStackVariable from read only heuristic check
6 years ago
Ezgi Çiçek 09ab685c7e [pulse] Handle stack refs escaping their scope via pointer
6 years ago
Ezgi Çiçek 4d1b300e5b [pulse] Remove bindings with empty edges in pre
6 years ago
Jules Villard d9aadf5df2 [pulse] allow models in invalidation traces
6 years ago
Jules Villard 86decb83f6 [pulse] record attributes of address not edge-reachable in the post
6 years ago
Jules Villard 493d38a682 [pulse] overwrite attributes of modified cells in interproc calls
6 years ago
Jules Villard 910131edca [pulse][trivial] remove unecessary option type, exception catching, and mutual recursion
6 years ago
Jules Villard 433c144840 [pulse] calling known lambdas calls the corresponding proc name
6 years ago
Jules Villard f15d9915a0 [pulse] better types to avoid `_fun_` prefix to proc names in bug traces
6 years ago
Jules Villard a3311fb751 [pulse] C++ temporaries bound to globals do not "escape"
6 years ago
Jules Villard 7f12ced394 [pulse] move to SIL proper
6 years ago
Jules Villard 0592bac25e [pulse] explain SIL logical variables in terms of program access paths
6 years ago
Jules Villard 695b493b56 [pulse] move [PulseTrace] inside [PulseDomain]
6 years ago
Jules Villard 457b017343 [pulse] more general graph visitor API
6 years ago
Josh Berdine cfc1c8be36 [copyright] Remove years
6 years ago
Jules Villard 6364199b94 [pulse] traces record how values were constructed
6 years ago
Jules Villard b5589661ce [pulse] improve error messages and traces
6 years ago
Jules Villard 9dbbd68472 [pulse] apply summaries to globals too
6 years ago
Jules Villard 31c2a39e81 [pulse] tighten up summaries
6 years ago
Jules Villard 7c90480758 [pulse] do not create `&` back-edges eagerly
6 years ago
Jules Villard ac62b64009 [pulse][minor] improve debug html
6 years ago
Jules Villard 3ce095a288 [pulse] more efficient representation of attributes
6 years ago
Jules Villard 53b1577b4c [pulse][interproc 3/3] interproc call
6 years ago
Jules Villard 0300d5374c [pulse][interproc 2/3] abductive domain
6 years ago