7583 Commits (4aea679d30eecb629791695678e38161e3ec36fb)

Author SHA1 Message Date
Nikos Gorogiannis 63586d98df [starvation] make analysis work with sil instead of hil
4 years ago
Sungkeun Cho 3dc96deea5 [cost] Fix test: field of object
4 years ago
Mitya Lyubarskiy b019143577 [nullsafe] Record relevant third party method in case of bad param passed.
4 years ago
Sungkeun Cho 03b330214f [cost] Add FN test: saving lambda in object field
4 years ago
Ezgi Çiçek 68597c5908 [cost] Remove --perf-profiler-data-file option and loom_test.json
4 years ago
Sungkeun Cho ead975f193 [closure] Substitute closure parameter when given via variable
4 years ago
Ezgi Çiçek 6678455838 [cost] Rename test files to enable arc lint & editor highlighting
4 years ago
Martin Trojer 15786e8f09 upgrade to clang10
4 years ago
Sungkeun Cho 8222d5fa1f [cost] Ignore tagged pointers in autoreleasepool size
4 years ago
Sungkeun Cho 498b49769c [cost] Add model of NSArray.index_of_object_passing_test
4 years ago
Sungkeun Cho 336e1c7b99 [cost] Refactoring: autorelease size models
4 years ago
Sungkeun Cho ecb409504d [SIL] Change WithBlockParameters to have Block.t
4 years ago
Ezgi Çiçek ee5ccfeb9b [cost] Add differential test for unreachable cost issue type
4 years ago
Jules Villard 6c8fc85e22 [preanalysis] do not nullify vars captured by ref
4 years ago
Sungkeun Cho 6ebc5033a8 [cost] Add model of CFAutorelease
4 years ago
Sungkeun Cho 4aa3338947 [cost] Add autorelease models: some methods of NSKeyedUnarchiver
4 years ago
Sungkeun Cho 83641788d1 [cost] Use prefix convention not returning autoreleased object
4 years ago
Sungkeun Cho 76ad9915a1 [cost] Increase autoreleasepool size when non-ARC call ARC
4 years ago
Ezgi Çiçek e1806cbbb2 [cost] Don't compare callsite location for symbols
4 years ago
Mitya Lyubarskiy 190216ca3a [nullsafe][refactor] More functional-style code for building errors
4 years ago
Daiva Naudziuniene 91a33f6edc [frontend] Captured struct variables in cpp lambdas
4 years ago
Daiva Naudziuniene 857daf63c9 [frontend] Capture reference variables
4 years ago
Daiva Naudziuniene 42abe5b277 [frontend] Fix type of captured vars in lambda's body
4 years ago
Daiva Naudziuniene ff7cd86140 [frontend] Rearrange translation of lambda's body
4 years ago
Daiva Naudziuniene 996c1b63e0 [frontend] Check if a method is a cpp lambda call operator
4 years ago
Daiva Naudziuniene d0cb245303 [frontend] Fix capture init for cpp lambdas
4 years ago
Sungkeun Cho d13ae13a71 [pulse] Fix linting issue
4 years ago
Qianyi Shu 88eb380cc3 [cost] fix objc block name comparison
4 years ago
Qianyi Shu 8a844ab67f [cost] add differential cost test for objc
4 years ago
Mitya Lyubarskiy bc4b1882dc [nullsafe] Add a field to jsonbug_t: unvetted third party methods
4 years ago
Mitya Lyubarskiy ee0b62b958 [nullsafe] Always output `nullsafe_extra` to the result json
4 years ago
Mitya Lyubarskiy 58e897edd0 [nullsafe][refactor] Consolidate information about the issue to be reported
4 years ago
Jules Villard 931cf2d72b [pulse][minor] resolve mysterious 'a in .mli
4 years ago
Jules Villard 03bc3f31c8 [pulse] add option to skip functions/classes
4 years ago
Sungkeun Cho cebf95afc4 [cost] Select autorelease trace with bigger polynomial
4 years ago
Sungkeun Cho 9f43c88565 [cost] Add a FN test using block (autoreleasepool)
4 years ago
Sungkeun Cho a40ad1c733 [cost] Report with relative paths on xcode_isysroot in tests
4 years ago
Nikos Gorogiannis 3f737cbd49 [biabduction][models] delete objcpp copy
4 years ago
Ezgi Çiçek 22e25fda76 [inferbo] Ignore symbolic values in ranges when upper bound is constant
4 years ago
Nikos Gorogiannis 49765274b5 Revert "[sqlite] enforce attribute.is_defined iff procdesc is not NULL"
4 years ago
Sungkeun Cho 6dc4612363 [cost] Add trace for autoreleasepool size
4 years ago
Ezgi Çiçek dcad238f11 [cost] Include the previous cost's trace in differential traces
4 years ago
Josh Berdine cd1cfe3487 Adjust Gc control parameters to use best-fit allocator with overhead 120
4 years ago
Nikos Gorogiannis 84ff14f2e7 [sqlite] enforce attribute.is_defined iff procdesc is not NULL
4 years ago
Nikos Gorogiannis d35a4f6f2e [debug] deterministically order procedures when printing
4 years ago
Josh Berdine 7a416739d6 [ocaml] Upgrade to OCaml 4.11.1 and dune 2.7.1
4 years ago
Mitya Lyubarskiy d4e46239b9 [nullsafe][EASY] Whitelist static fields from `java.nio.charset.StandardCharsets`
4 years ago
Ezgi Çiçek 9b84af1813 [cost] Replace polynomial category zero with unreachable
4 years ago
Nikos Gorogiannis 386f303b1d [scheduler][restart] use proc_uids instead of serialised procnames as targets
4 years ago
Sungkeun Cho 4d3c22e167 [cost] Fix cost-issues.exp in autoreleasepool
4 years ago
Jules Villard 7eba62c9ed [doc] update documentation on building checkers
4 years ago
Sungkeun Cho 8fde3f2479 [cost] Revise CostDomain.plus functionality: zero+unreachable
4 years ago
Sungkeun Cho 18baa1f126 [cost] Enable top_and_unreachable issues of autoreleasepool size
4 years ago
Sungkeun Cho 6ff1a42b6a [cost] Add tests run with ARC/non-ARC sources
4 years ago
Jules Villard b62c3f55b9 [pulse] fix fuel debug message
4 years ago
Sungkeun Cho cb4cf115e1 [cost] Autoreleasepool size analysis
4 years ago
Sungkeun Cho 4dbfb72260 [cost] Extend cost_item json format to print autoreleasepool_size
4 years ago
Nikos Gorogiannis 5406fa3224 [scheduler][restart] use filenames instead of procnames for dependencies
4 years ago
Nikos Gorogiannis 30fcdc7d29 [attributes] request attributes only when procdesc isn't required
4 years ago
Ezgi Çiçek 9681317f57 [preanalysis] Add mli file and documentation for the preanalysis about specializing methods with blocks
4 years ago
Nikos Gorogiannis db9828809e [sourcefiles] use custom serializer
4 years ago
Nikos Gorogiannis a2c1aa79c8 [procname] preserve sharing when serialising
4 years ago
Nikos Gorogiannis 1db53f43b5 [biabduction][models] move to sqlite
4 years ago
Nikos Gorogiannis cb2243741c [sqlite] remove proc_name_hum field
4 years ago
Nikos Gorogiannis e9a6195b52 [sqlite] index on proc_uid
4 years ago
Nikos Gorogiannis 343d6b1bea [preanal] do not rewrite capture db
4 years ago
Sungkeun Cho 65dd303415 [cost] Add new experimental cost kind
4 years ago
Ezgi Çiçek dab523f7eb [cost] Remove unused IO Cost kind
4 years ago
Qianyi Shu c3909c0434 [cost] add iterator model for NSOrderedSet
4 years ago
Qianyi Shu 5ed04a8e9a [frontend] Add translation of dictionaryWithObjects:forKeys:count:
4 years ago
Daiva Naudziuniene 20a8890fd5 [frontend] Clean up method creation
4 years ago
Sungkeun Cho 44ff6df1d6 [frontend] Add autoreleasepool code block
4 years ago
Qianyi Shu d908accd0c [cost] add inferbo model for NSArray.arrayByAddingObjectsFromArray, NSMutableArray.initWithCapacity
4 years ago
Daiva Naudziuniene 4401701578 [pulse] Model for std::function copy constructor
4 years ago
Ezgi Çiçek 2b1e036a15 [inferbo] Add model for NSDictionary.dictionary
4 years ago
Nikos Gorogiannis 1d908ff327 [sqlite] localise statements to where they are used
4 years ago
Ezgi Çiçek 06489dced0 [cost] Add FP test for NSDictionary initialization
4 years ago
Ezgi Çiçek 7cb8145ef6 [litho] Fix FN caused by special treatment of ResType suffixes
4 years ago
Dulma Churchill fdb1640e12 [closures preanalysis] [3/n] Adding models to dispatch functions and remove code for previous specialization and dispatch models
4 years ago
Dulma Churchill 2e66bf6b8f [closures preanalysis][2/n] Add second preanalysis that fills the body of the specialized methods with blocks
4 years ago
Dulma Churchill 892b16b8c0 [closures preanalysis] [1/n] Adding first step of preanalysis to specialize methods with concrete closures they are called with
4 years ago
Daiva Naudziuniene 0a4af7754d [pulse] Fix std::function::operator()
4 years ago
Qianyi Shu bb828a92af [cost] refactor cost model and add NSArray.sort cost model.
4 years ago
Qianyi Shu b71521a90a [cost] add iterator support for nsdictionary
4 years ago
Ezgi Çiçek 8447aa3fac [inferbo] Generalize init's model to NSObject
4 years ago
Dulma Churchill 6e67a6a569 [biabduction] Comment out resource leak test that is currently being flaky in the CI
4 years ago
Daiva Naudziuniene 29fd9e13d1 [pulse] Understand captured variables in cpp lambdas
4 years ago
Radu Grigore 9591276541 [topl] Cheap port to Pulse.
4 years ago
Qianyi Shu debeba5860 [cost] make the size of collection more accurate when modifying in loop
4 years ago
Ezgi Çiçek f02f7b379e [cost] Add FN test for functions that take blocks as arguments
4 years ago
Sungkeun Cho 4c2d5a4c49 [reanalyze] Fix reanalyze option
4 years ago
Radu Grigore 5f2849bf01 [topl] Atomic prunes.
4 years ago
Qianyi Shu 41f2533ff8 [cost] fix enumerator when not used in for-each loop in ObjC
4 years ago
Daiva Naudziuniene 87ff05c9b8 [pulse] Add a new test for npe in objc blocks
4 years ago
Jules Villard 5cceead7ae [pulse] normalize again when we discover new linear eqs
4 years ago
Jules Villard 50b94dbbd6 [pulse] cleanup arithmetic
4 years ago
Jules Villard 8b23fee8f8 [pulse] refactor Atom.eval_atom
4 years ago
Jules Villard ecdb153579 [pulse] streamline atom normalization
4 years ago
Jules Villard 7df30b0c4e [pulse] preserve physical equality on var subst in LinArith
4 years ago
Jules Villard eb37d2ced5 [pulse] substitute entire linear expressions
4 years ago
Jules Villard 36af901d79 [pulse] normalize any linear atom
4 years ago
Jules Villard 69995cebb6 [pulse] add a Linear variant to terms
4 years ago
Jules Villard 45894a7dd9 [pulse] move LinArith before Term
4 years ago
Jules Villard 1d56705cd4 [pulse] evaluate all constant expressions
4 years ago
Jules Villard bcba7c8475 [pulse][minor] moving some arithmetic stuff around
4 years ago
Jules Villard 5278cb7374 [pulse] `delete nullptr` is a no-op
4 years ago
Jules Villard af64d5dafe [pulse] detect when atoms become linear arithmetic
4 years ago
Qianyi Shu 9a3bfa67c7 [cost] fix iterator for constant array
4 years ago
Qianyi Shu b4f23ab599 [cost] add NSArray iterator
4 years ago
Nikos Gorogiannis 06f5eee680 [merge] measure tenv size only in debug mode
4 years ago
Nikos Gorogiannis 3133c18908 [dbwriter] mild refactor
4 years ago
Ezgi Çiçek c449f6e727 [pulse] Tweak error message for Memory Leak
4 years ago
Sungkeun Cho 5d23fb59aa [cost] Add FP test that has two control variables, but linear
4 years ago
Sungkeun Cho 88d5f4b9ad [Cost] Add cost model of binary search
4 years ago
Jules Villard 3e7bf4343b [pulse] make unit tests more robust to adding more tests
4 years ago
Jules Villard 1825b3779c [nullsafe] migrate 3rd-party methodes unit tests to ppx_expect
4 years ago
Jules Villard beca699bc4 [build] swap the build defaults to dev-with-errors
4 years ago
Nikos Gorogiannis dc29f8eeca [specs] fix reanalysis
4 years ago
Jules Villard 6fae5f641e [pulse] change constants to be rationals
4 years ago
Ezgi Çiçek 3fdf66dd11 [models] Refactor hardcoded infer models to use Builtin definitions
4 years ago
Daiva Naudziuniene dcc12d0a42 [closuressubstitution] Flip order of captured variables and actual parameters
4 years ago
Jules Villard 2caaa97d2a [minor] fix doc comment in cTrans.ml
4 years ago
Qianyi Shu 4683076ea6 [cost] add NSMutableArray's add and remove function model
4 years ago
Jules Villard 0433e9592e [pulse] new new arithmetic
4 years ago
Sungkeun Cho 6e0dc774a6 [purity][refactor] Add purityDomain.mli
4 years ago
Sungkeun Cho 55ecfd8811 [purity][refactor] Open AbstractDomain.Types
4 years ago
Qianyi Shu a7ff42069c [cost] write ObjC's NSCollection model separately and refactor
4 years ago
Nikos Gorogiannis 12189f4c4e [specs] remove sharding infra
4 years ago
Mitya Lyubarskiy 7635bb0414 [nullsafe] @Initializer annotation is inherited from parent signatures
4 years ago
Mitya Lyubarskiy 937d5386d1 [nullsafe][refactor] Migrate Overannotated rule to Procname.Java.t
4 years ago
Mitya Lyubarskiy 7d0671910a [nullsafe][easy] Add interface file for models.ml
4 years ago
Daiva Naudziuniene 69e0dce0ed [pulse] fix end() iterator false positive
4 years ago
Nikos Gorogiannis c98783a45a [specs] store analysis and report artefacts separately
4 years ago
Nikos Gorogiannis a9c9d97fb6 [specs] index by procname
4 years ago
Nikos Gorogiannis b763a9dd7e [specs] store in db
4 years ago
Artem Pianykh 16b2b2621d [java][tests] Compile with -g to make javac produce more debug info
4 years ago
Jules Villard 7b743ceb1a [pulse][formula] forget dead facts
4 years ago
Jules Villard bf40a9119e [pulse][formula] print readable variable names in unit tests
4 years ago
Jules Villard 6f5b125aa0 [pulse][formula] improve printing
4 years ago
Jules Villard 934a13a134 [pulse][minor] name ~callee argument for readability
4 years ago
Jules Villard 62e84185b1 [pulse] a few more unit tests
4 years ago
Jules Villard 97fcc3b0ad [pulse] apply equality relation to terms to be added to the equality relation
4 years ago
Jules Villard 2eb6eb3655 [pulse] skeleton for unit testing pulse
4 years ago
Jules Villard 7ccec3fd99 [build] make dune format files when testing
4 years ago
Jules Villard a64f311ea8 [formula] remember results of normalization
4 years ago
Jules Villard cfa81d168d [pulse] check formula unsat more often
4 years ago
Jules Villard f1e9e28f73 [pudge] delete
4 years ago
Jules Villard 5a39c158c5 [pulse] arithmetic domain: take 4!
4 years ago
Artem Pianykh e4a7d1f19d [nullsafe] Add tests around support for Java Lambdas
4 years ago
Artem Pianykh 570191741a [java][tests] Add kotlin-annotatins to classpath to fix warnings
4 years ago