212 Commits (3fabbfdcadce75957be485cd44f6b3d13ced3250)

Author SHA1 Message Date
Jules Villard 5c30ea1051 [debug] print full types in instructions on error
6 years ago
Sungkeun Cho 0ce0ec03d9 [inferbo] Support global constant
6 years ago
Mehdi Bouaziz ecedb27d77 Add missing FB copyrights
6 years ago
Sungkeun Cho fd3f298156 [inferbo] Add narrowing
6 years ago
Mehdi Bouaziz 3dd97cc40f [inferbo] Use WTO abstract interpreter
6 years ago
Sungkeun Cho fb4086c6f6 [inferbo] Add integer overflow issue type
6 years ago
Sungkeun Cho 1ae393dc76 [infer] Get widths of build-in integer types
6 years ago
Ezgi Çiçek 99c2a6da8d [hoisting] Hoist only expensive pure functions
6 years ago
Mehdi Bouaziz c3f2fbc8c6 [inferbo] Do not alias values representing multiple values (Java, C partially)
6 years ago
Mehdi Bouaziz c9b89b54dd Preparing for WeakTopologicalOrder-based abstract interpreter
6 years ago
Julian Sutherland 16c70d1c23 Fixed a bug that caused the stride of symbolic arrays to not be set.
6 years ago
Mehdi Bouaziz ddbb7e05d3 Reporting cleanup 22: log_error/warning -> use IssueType rather than exception
6 years ago
Mehdi Bouaziz 051c9d5e1f [inferbo] Report Unreachable_code_after with Checkers exception
6 years ago
Mehdi Bouaziz 0a9606b2b4 [inferbo] Report conditions always true/false using Checkers exception
6 years ago
Sungkeun Cho 3aab371b1f [inferbo] Detach Summary from Domain module
6 years ago
Sungkeun Cho 6759763a98 [inferbo] Simplify instantiate_ret_alias
6 years ago
Sungkeun Cho 0cffc52b3b [inferbo] Simplify memory instantiation of function call
6 years ago
Josh Berdine 40ab73037e [ocamlformat] upgrade to ocamlformat 0.7
6 years ago
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