194 Commits (e5e7237d9d64a471db4473899920822f11da8697)

Author SHA1 Message Date
Mehdi Bouaziz 060924adff [inferbo] Get rid of condition trace for proof obligations in summary
6 years ago
Sungkeun Cho 1bf8ed95b8 [inferbo] Simplify stack/heap memory domain
6 years ago
Mehdi Bouaziz a06685c517 [inferbo] Add mli for proof obligations
6 years ago
Sungkeun Cho 524ae3a7e2 [inferbo] Return unknown value on non-const function calls
6 years ago
Mehdi Bouaziz 277fd06782 [inferbo] Simplify condition trace
6 years ago
Mehdi Bouaziz 693089ab08 [inferbo] Alloc site in the trace for INFERBO_ALLOC_xx issues
6 years ago
Mehdi Bouaziz 364099530e [inferbo] Retrieve callee_pdesc and payload at the same time
6 years ago
Ezgi Çiçek bedf32bed5 [Cost, InferBo] generalize ArrayLists to Collections and Iterators
6 years ago
Mehdi Bouaziz ad986dffde Get rid of Declare_locals
6 years ago
Ezgi Çiçek 832e0130cd [Inferbo] Fix the way pointers to arrays are handled in Java
6 years ago
Mehdi Bouaziz 427bb440d6 Inferbo: use Procdesc.get_locals rather than the Declare_locals instruction
6 years ago
Sungkeun Cho c50b28480b [inferbo] Add trace on make_sym
6 years ago
Mehdi Bouaziz 96323b68e6 ProcnameDispatcher: allow matching to depend on a context
6 years ago
Sungkeun Cho df80ccda08 [inferbo] Use SymbolPath map in summary instead of entry memory
6 years ago
Sungkeun Cho 9eca72d405 [Inferbo] Add relational domains
6 years ago
Ezgi Çiçek 396caca5d6 Fix array size for Java in `get_malloc_info`
6 years ago
Ezgi Çiçek 2d889791e2 Fix Java's handling of pointer parameters in Inferbo
6 years ago
Ezgi Çiçek 0c6eacc902 Add support for Java's ArrayLists.add*
6 years ago
Nikos Gorogiannis c2416defed Fix IntLit.to_int interface and uses.
6 years ago
Sungkeun Cho 06a04ca9f5 Revert "[Inferbo] Add relational domain"
6 years ago
Sungkeun Cho 1f7a6e53fb [Inferbo] Add relational domain
6 years ago
Mehdi Bouaziz bea71d9168 Inferbo/perf: path rather than symbols
7 years ago
Mehdi Bouaziz bd725602ee Inferbo: size of arrayblk is unsigned
7 years ago
Mehdi Bouaziz 507de1e96c Inferbo models: separate ret
7 years ago
Mehdi Bouaziz 69ead917c3 Instrs: Arrays and RevArrays only
7 years ago
Mehdi Bouaziz fc5c093d1e ProcCfg: do not include module Node
7 years ago
Jules Villard 8b882ac1df Change license to MIT
7 years ago
Mehdi Bouaziz 4927e31c2f Abstract type for list of instructions in node
7 years ago
Mehdi Bouaziz 42b3958a07 ProcCfg: fold on nodes only
7 years ago
Mehdi Bouaziz bfcc88a5e2 Inferbo: use instr_is_auxiliary
7 years ago
Mehdi Bouaziz 1898ef3a7a [Summary] Move payloads to a separate module
7 years ago
Jules Villard 3aa6fdf1ce [rename] specs -> summary, Summary -> SummaryPayload
7 years ago
Jules Villard 902de9d6e3 [sil] make return value and type mandatory
7 years ago
Mehdi Bouaziz e8ceedeb82 [Cost] Forces Inferbo
7 years ago
Mehdi Bouaziz a3487e14ee [Inferbo] Do not add Unknown to heap if unknown call does not return
7 years ago
Mehdi Bouaziz 14d6b2f019 [Cost] Use inferbo abstract state as extra rather than calling inferbo transfer functions
7 years ago
Mehdi Bouaziz ace0ea3d8b [inferbo] Do not reexecute for checking
7 years ago
Mehdi Bouaziz 722258d41b Real InstrNode
7 years ago
Josh Berdine 16988b0a7a [ocamlformat] Upgrade to ocamlformat 0.5
7 years ago
Mehdi Bouaziz 4aefa6f76b Debug: session name
7 years ago
Mehdi Bouaziz 66b3357479 Share ProcCfg.OneInstrPerNode(Normal)
7 years ago
Mehdi Bouaziz 779bde226d [Inferbo] Use the OneInstrPerNode CFG
7 years ago
Mehdi Bouaziz e9a3913fdb [Inferbo] Do not propagate all safety conditions
7 years ago
Sungkeun Cho 4aafe8a990 [inferbo][bugfix] Revise gathering safety conditions in sub-exp
7 years ago
Sungkeun Cho 00e1139071 [frontend] Parse binary operator using types of parameters
7 years ago
Mehdi Bouaziz 14e48fb5a0 [RFC] Cost: pair with Inferbo
7 years ago
Mehdi Bouaziz 3ebec206dc [inferbo] prune_pairs: kill ref
7 years ago
Mehdi Bouaziz 3aebd72d53 [inferbo] Use Ondemand.get_proc_desc
7 years ago
Mehdi Bouaziz 82a264ff9f [Inferbo] Refactoring 8/8: struct for extras
7 years ago
Mehdi Bouaziz a4eac6c2d6 [Inferbo] Refactoring 7/8: remove dependency on CFG
7 years ago
Mehdi Bouaziz 1b2adb9422 [inferbo] Refactoring 5/8: simplify Utils.Check.array_access
7 years ago
Mehdi Bouaziz 6838fed3e6 [inferbo] Refactoring 4/8: pass node_hash instead of node
7 years ago
Mehdi Bouaziz 672fd3a9a5 [inferbo] Refactor 3/8: model_by_value without model_env
7 years ago
Mehdi Bouaziz 90b5600c8f [inferbo] Refactoring 2/8: abstract type for counter
7 years ago
Mehdi Bouaziz c29c636768 [Inferbo] No need to check Bottom states
7 years ago
Mehdi Bouaziz cbbe455c4a [Inferbo] Reporting: refactoring
7 years ago
Mehdi Bouaziz 1db6e0c2c6 [easy] Labels for Procdesc.fold_nodes/instrs
7 years ago
Dino Distefano d2cc5e72f7 Extending analysis to parametric case
7 years ago
Mehdi Bouaziz 6f4c08f798 [inferbo][trace] Trace element for Unknown values
7 years ago
Mehdi Bouaziz 72ec9516d4 [inferbo][trace] Show some SymAssigns
7 years ago
Mehdi Bouaziz 55fee73669 [inferbo][traces] Nits
7 years ago
Mehdi Bouaziz 04f7e83351 [Inferbo] Small factorizations
7 years ago
Sungkeun Cho d6740e94b2 [inferbo] Collect array accesses from sub expressions
7 years ago
Mehdi Bouaziz 6b22ee3932 [ProcnameDispatcher] Rename Procname to Call
7 years ago
Sungkeun Cho 6bacdf4a4d [inferbo] Return newly allocated locations in callees
7 years ago
Sungkeun Cho e304b511fa [inferbo][bugfix] Declare parameter of flexible array member
7 years ago
Josh Berdine 3534838b73 [ocamlformat] Upgrade to ocamlformat 0.4
7 years ago
Sungkeun Cho 373e6b39cc [infer] Use inline record for Typ.Tarray
7 years ago
Sungkeun Cho f55f382a78 [inferbo] Support flexible array member
7 years ago
Sungkeun Cho 8dd45eebde [inferbo] Use record environment type for model
7 years ago
Sungkeun Cho ebddb14206 [inferbo] Prune by assert
7 years ago
Mehdi Bouaziz 4fdaf257ae [inferbo/unreachable] Fix FPs with exit at end of block/procedure
7 years ago
Mehdi Bouaziz dbaf9e459d [Inferbo] Do not use deprecated API to log issues
7 years ago
Josh Berdine 63439ecc02 [ocamlformat] Upgrade base and ocamlformat
7 years ago
Sam Blackshear ab3da5b1d1 [cleanup] remove unused dynamic dispatch modes
7 years ago
Mehdi Bouaziz 3fc41af811 [inferbo] Model for folly::split
7 years ago
Jeremy Dubreil 1f6d73269e [infer] simplify the API to report errors
7 years ago
Mehdi Bouaziz 0ed1a51944 [inferbo] Prepare for type models
7 years ago
Jeremy Dubreil 7b8a5a1a2b [infer] always run all the pre-analysis passes independently form the checkers that are being run
7 years ago
Mehdi Bouaziz cd35b2f0a3 [inferbo] Moving Inferbo utils functions
7 years ago
Mehdi Bouaziz 168ce5a6bb [inferbo] Add alloc size safety condition
7 years ago
Mehdi Bouaziz d12371c6c3 [inferbo] Prepare for several kinds of safety conditions
7 years ago
Mehdi Bouaziz cb363d8dcb [inferbo] Modeled functions may also generate proof obligations
7 years ago
Mehdi Bouaziz a73162d8e4 [dispatcher] + Capture function argument
7 years ago
Mehdi Bouaziz d26e227267 [c++] Procname dispatcher
7 years ago
Mehdi Bouaziz 55ff444a74 [inferbo] Sem.eval do not need a location
7 years ago
Josh Berdine f62ab09e61 [ocamlformat] Upgrade ocamlformat to v0.2 from opam
7 years ago
Mehdi Bouaziz 15ffac4e02 [inferbo] Move models to their own module
7 years ago
Mehdi Bouaziz eb33fb7a97 [inferbo] Use a dispatcher for models
7 years ago
Sungkeun Cho 042dd7d9cb [inferbo] revise semantics of vector::data
7 years ago
Josh Berdine f89e687efa [ocamlformat] Use ocamlformat from github
7 years ago
Sungkeun Cho 54de59919e [inferbo] Prune vector's size by vector::empty() condition check
7 years ago
Mehdi Bouaziz eff7bb5bdf [inferbo] Replace buckets with issue types
7 years ago
Mehdi Bouaziz d5c08ee752 [inferbo] Move proof obligations to their own module and split them
7 years ago
Mehdi Bouaziz 26f847f381 [inferbo] Conditions should not have bottom intervals
7 years ago
Mehdi Bouaziz 39ff045569 [ai] No need to create a domain for a bottom_lifted type
7 years ago
Mehdi Bouaziz cfd6148dab [inferbo] Better pp
7 years ago
Sungkeun Cho 9f9dbdb914 [Inferbo] Extend abstract domain for vector::empty
7 years ago
Sam Blackshear fd105802db [thread-safety] don't use Map.choose or Set.choose
7 years ago
Jules Villard 1c375a17ac [log] die more appropriately
7 years ago