8189 Commits (2d49f4b7ade8e959f36f2c5846fcfc535e44ae8a)

Author SHA1 Message Date
Sungkeun Cho a577d5fe0f [ConfigImpact] Add FP test due to anonymous class
4 years ago
Daiva Naudziuniene fbfe5f8be5 [pulse][objc] Special case for calling objc dispatch methods
4 years ago
Daiva Naudziuniene 85eb72f7cd refactor objc dispatch models
4 years ago
Ezgi Çiçek ab7d569e50 [refactor] Remove redundant calls
4 years ago
Sungkeun Cho 291d250b9b [frontend] Add field for property to the type environment in ObjC
4 years ago
Jules Villard 8f1df1f11e [pulse] deduplicate histories and traces for memleaks
4 years ago
Jules Villard 23fcb72d3d [pulse] refactor translating callee attributes to callers
4 years ago
Jules Villard 16054a4510 [pulse] interproc memleak trace test
4 years ago
Jules Villard 8fcd79a0b7 [pulse][models] refactor garbage-collected allocations
4 years ago
Jules Villard 0ab6f883e0 [pulse] refactor check whether an address is allocated but not freed
4 years ago
Jules Villard c59765b95c [pulse] refactor an ISL function
4 years ago
Jules Villard 427937083b [pulse] do not report null deref errors where the source of null is unclear
4 years ago
Jules Villard 02e6d46e7f [pulse] follow values inside function calls
4 years ago
Xiaoyu Liu 287eee78f5 CIL race condition detection support (#1443)
4 years ago
Daiva Naudziuniene 5fb747eda6 [pulse][objc][nullptr] Dereference call expression to catch nil block issues
4 years ago
Daiva Naudziuniene c6bf155004 [pulse][objc][nullptr] Copy tests for calling nil blocks from bi-abduction
4 years ago
Sungkeun Cho 903106b298 [ConfigImpact] Fix inefficient config impact data checking
4 years ago
Daiva Naudziuniene bf8bc66707 [pulse][objc][nullptr] Model NSArray methods to catch nil insertion into collection issues
4 years ago
Daiva Naudziuniene 5c8b5657d1 [clang frontend][objc][nullptr] Insert missing load to catch nil insertion into collection issues
4 years ago
Nikos Gorogiannis c287afe07d [logging] fix always zero count for modified files
4 years ago
Daiva Naudziuniene 6c7cce6588 [pulse][objc][nullptr] Model NSSet methods to catch nil issues
4 years ago
Nikos Gorogiannis 68ae6ee6f3 [merge] forked global tenv merge
4 years ago
Artem Pianykh b38cc767fa [nullsafe] Add models for java.util.Locale public fields
4 years ago
Sungkeun Cho f26573c0ef [Cost] Comment out non-deterministic test
4 years ago
Radu Grigore 6a0f16b463 [erl-frontend] Build names environment for resolving functions
4 years ago
Radu Grigore 6536919d6a [erl-frontend] Procnames for Erlang.
4 years ago
Daiva Naudziuniene 6bcf4203c3 [pulse][objc][nullptr] Model NSDictionary methods to catch nil insertion issues
4 years ago
Jules Villard 9409685a2f [pulse] a few textual changes in traces
4 years ago
Jules Villard 54228740dd [pulse] fix typo in test
4 years ago
Daiva Naudziuniene 174320f890 [pulse][objc][nullptr] Model more methods for NSMutableArray to catch nil issues
4 years ago
Sungkeun Cho 12415a174d [frontend] ObjC++ setter/getter for C struct field
4 years ago
Daiva Naudziuniene 6e0dc0a5c6 [pulse][objc][nullptr] Tests for NSDictionary literals
4 years ago
Ezgi Çiçek 84a30c4530 [ConfigImpact] Track the intermediate callers for better readability
4 years ago
Daiva Naudziuniene 119e206988 [pulse][objc][nullptr] Model NSMutableSet methods to catch nil issues
4 years ago
Daiva Naudziuniene 6d75961a87 [config] Allow regex in --skip-translation-headers
4 years ago
Jules Villard 9980c4f614 [pulse] correct order of calling context in trace
4 years ago
Daiva Naudziuniene 3e629281c6 [pulse][objc][nullptr] Model more NSMutableDictionary methods to catch nil insertion into collection issues
4 years ago
Sungkeun Cho 2bfda57cb1 [ConfigImpact] Revise qualifier
4 years ago
Loc Le aa3a2ce049 [pulse] added an test on memory_leak.c
4 years ago
Sungkeun Cho b7b7e89159 [pulse] Address some modeled fields as pointers
4 years ago
Daiva Naudziuniene 483d0b54ee [pulse][objc][nullptr] Model NSMutableDictionary.setObject:forKeyedSubscript:
4 years ago
Radu Grigore e2cc723074 [erl-frontend] Started ErlangTranslator
4 years ago
Daiva Naudziuniene 765d45c2fd [pulse][objc] Enable nil issue types by default
4 years ago
Sungkeun Cho 64406137e9 [ConfigImpact] Loosely compare ObjC method names
4 years ago
Radu Grigore 1bd741b070 [erl-frontend] Erlang AST, and parser for JSON AST.
4 years ago
Sungkeun Cho 1c87f61728 [ConfigImpact] Add config impact differential test in ObjC
4 years ago
Jules Villard d97b82f8db [pulse] add tests for pulse.isl
4 years ago
Radu Grigore f7278e53af [erl-frontend] Added a build-system test for Rebar3.
4 years ago
Daiva Naudziuniene 3939a66da8 [pulse][objc][nullptr] Model NSArray methods to catch nil insertion into collection issues
4 years ago
Jules Villard dbdf076e30 [pulse] take histories into account for all aspects of a report
4 years ago
Jules Villard 7853c322b3 [pulse] resolve function pointers when known
4 years ago
Jules Villard 16cb07698e [pulse] no longer drop attributes of dead addresses
4 years ago
Sungkeun Cho e5d52c3dc3 [ConfigImapct] Add models of SharedPreferences methods
4 years ago
Daiva Naudziuniene cc8b6fb8c1 [pulse][nullptr][objc] A separate issue type for nil insertion into collections
4 years ago
Ezgi Çiçek 53b2ec61de [Inefficient Keyset Iterator] reduce severity to Warning
4 years ago
Ezgi Çiçek 965d916e57 [cost][inferbo] Add models for NSAttributedString
4 years ago
Jules Villard 186b10e4f5 [pulse] record all the invalidations we can in histories
4 years ago
Daiva Naudziuniene 713cdbf580 [pulse] Inline initializers for global constant accesses
4 years ago
kmh11 400b4eba99 Implement AtomicExpr translation (#1434)
4 years ago
Daiva Naudziuniene aadd4fe014 [pulse][objc] Model NSMutableDictionary setObject:forKey: to catch insertion into collection issues
4 years ago
Ezgi Çiçek d713b98a94 [cost] Fix cost models that accept blocks to take captured vars into account
4 years ago
Jules Villard 13858e8d09 [pulse] make sure we do not lose attributes when merging
4 years ago
Jules Villard d94fa76eea [pulse] expose fewer details of internal modules of AbductiveDomain
4 years ago
Jules Villard df9352e981 [pulse] report latent issues in "main"
4 years ago
Jules Villard 312d4a2c0f [pulse] change the API of `simplify` to take `~can_be_pruned ~keep`
4 years ago
Boris Yakobowski eaa7c2a8ad Fix taskbar nesting for ondemand analyses (#1431)
4 years ago
Yoonseok Ko 713199ac2a [pulse] Fixed a bug in AbductiveDomain.leq operator. (#1424)
4 years ago
Nikos Gorogiannis c44fba8944 [buck] deal with files under `buck-out/gen/<hash>`
4 years ago
Jules Villard 3bce92d804 [pulse] better traces when invalidation happens along the access trace
4 years ago
Jules Villard d4bdfec49a [pulse] record invalidation events in histories
4 years ago
Radu Grigore 495c89284b [erl-frontend] Skeleton integration for Rebar3
4 years ago
Jules Villard 7207e05682 [pulse] discard "pruned" atoms that refer to variables outside the pre
4 years ago
Sungkeun Cho 6ea3a9300c [ConfigImpact] Add semantics for temporary boolean variable
4 years ago
Sungkeun Cho 08ea9eaee8 [ConfigImpact] Revise checking of having known expensive calls
4 years ago
Jules Villard 46c0c0297b [refactor] Pvar.is_local_to_procedure
4 years ago
Jules Villard 96d8c3dc6c [clang] fix typo making public methods protected
4 years ago
Jules Villard 49883a8332 [refactor] invert ProcAttributes -> Pvar dependency
4 years ago
Jules Villard 9b0f1ab415 [pulse] make sure we do not leak local mutations of formals into the summary
4 years ago
Sungkeun Cho c8b258c64c [ConfigCheck] Add semantics for long typed config values
4 years ago
Sungkeun Cho 0a48a6cba0 [refactoring] Introduce ISys.file_exists
4 years ago
Sungkeun Cho 3f053e389c [ConfigCheck] Add semantics for returning config values
4 years ago
Ezgi Çiçek ce209f6e4f [cost][inferbo] Add more models for NSDictionary and NSMutableDictionary
4 years ago
Jules Villard f5fef60a42 [pulse] refactor arguments of models into a record
4 years ago
Nikos Gorogiannis 38cef2df0b [starvation] add model for Display.getRealSize
4 years ago
Nikos Gorogiannis 63ea040355 [racerd] clarify C++/ObjC behaviour
4 years ago
Sungkeun Cho 2886e849da [frontend,pulse] Avoid dereference of C struct
4 years ago
Sungkeun Cho fdd051afb1 [frontend] Quick fix on incorrect module name
4 years ago
Sungkeun Cho 851fb3267b [frontend] ObjC setter/getter for C struct field
4 years ago
Sungkeun Cho f43d7aa5fb [frontend] Refactoring for the following diff
4 years ago
Matteo Marescotti 4e02e58709 [erl-frontend] rebar3 wrapper for Erlang projects
4 years ago
Martin Trojer 8a234f1e9f [buck] deal with both ways buck can report infer-deps.txt
4 years ago
Ezgi Çiçek aae741419c [ConfigImpact] Ignore unknown library calls with no cost model
4 years ago
Jules Villard cd7b11889e [pulse] remove now-unneeded hack to avoid dedup of error states
4 years ago
Jules Villard eb86c9cc17 [pulse] dedup states during join
4 years ago
Sungkeun Cho fa10bb225a [uninit/pulse] Do not track captured variables of block
4 years ago
Ezgi Çiçek df9bb5dc37 [absint] Use none_if_top_opt
4 years ago
Sungkeun Cho d17cbfc155 [absint] Add filter_map to MonoMap signature
4 years ago
Artem Pianykh 35d6c53e9c [nullsafe] Add models for FileChannel$MapMode
4 years ago
Sungkeun Cho c264fc20c1 [ConfigImpact] Address unknown ObjC init methods as cheap
4 years ago
Sungkeun Cho 6e3b02eaee [ConfigImpact] Filter known expensive callees when cost is constant
4 years ago
Sungkeun Cho e98fe8d24c [ConfigImpact] Add known cheap builtin callee: __cast
4 years ago
Loc Le ad2fc1148d [pulse][isl] manifest errors
4 years ago
Jules Villard 4c48b79f6c [siof] detect constexpr for all procedures
4 years ago
Sungkeun Cho 02a7dd7349 [ConfigImpact] Fix a bug on analyzing fields of configs
4 years ago
Daiva Naudziuniene e2c2c2b7ab [pulse] Separate issue type for nil messaging of non-pod return type
4 years ago
Ezgi Çiçek 4afc51755c [ConfigImpact] Increase config-impact-max-callees-to-print from 3 to 5
4 years ago
Artem Pianykh e7efc38eb0 [ci] Use Java 11 version of Buck in tests
4 years ago
Sungkeun Cho 9a2768d66d [purity] Use instruction index for gettting inferbo result
4 years ago
Sungkeun Cho fd219ae457 [absint] Give instr index to `exec_instr` to get inferbo result
4 years ago
Artem Pianykh a2bc973125 [nullsafe] Fix a bug in handling of modelled nullable fields
4 years ago
Sungkeun Cho 341169ff0f [inferbo] Evaluate cpp vector parameter symbolically
4 years ago
Ezgi Çiçek 2bdc4e5573 [ConfigImpact] Take cost insantiation and models into account
4 years ago
Artem Pianykh 8ad471d5b3 [nullsafe] Add a model for `android.provider.ContactsContract$Contacts.CONTENT_URI`
4 years ago
Ezgi Çiçek 913dfb8c37 [hoisting] Instantiate cost at call instruction
4 years ago
Ezgi Çiçek 6b9d68a267 [ConfigImpact] Consider list.size as cheap and add tests
4 years ago
Radu Grigore fa9e19ac29 [topl] Deactivate baos test
4 years ago
Nikos Gorogiannis bea3f3b439 [starvation] add more detail in reporting
4 years ago
Sungkeun Cho f0ea201f25 [ConfigImpact] Handle known expensive calls
4 years ago
Ezgi Çiçek fb75c2fb11 [refactor] Correct misnomer: params -> args
4 years ago
Sungkeun Cho fbcf418ea4 [ConfigImpact] Loosen compares of field names and ungated callees
4 years ago
Loc Le dcda9b39b3 [pulse][isl] remove er spec duplicates when code includes conditionals
4 years ago
Ezgi Çiçek 2492a4fd3f [tests] Enforce java 8 backward compatibility
4 years ago
Ezgi Çiçek a6ab4d38cf [ConfigImpact] Use cost analysis to determine cheapness
4 years ago
Loc Le a89d88063d [pulse][isl] abduction for null case
4 years ago
Sungkeun Cho 3d4b3ab4be [cost] Do not print inferbo issues in tests
4 years ago
Loc Le 7c63bef44e [pulse][isl] enable to check invalid for er specs in interprocedural analysis
4 years ago
Jules Villard e549103d75 [pulse] use term_eqs
4 years ago
Jules Villard 5a363c9b07 [pulse][arith] small normalization improvement
4 years ago
Jules Villard 8602b709ef [pulse][arith] change bit shifts by a constant factor into multiplications
4 years ago
Jules Villard 8e9bc54c4a [pulse][arith] eval constant terms before other simplifications
4 years ago
Jules Villard d1b3e56574 [pulse] cap the size of literals in formulas
4 years ago
Jules Villard 2d83dfdcb0 [pulse] add a term_eqs field to formulas
4 years ago
Jules Villard a5b4992873 [clang] add support for VarTemplateSpecializationDecl
4 years ago
Jules Villard d198cb855d [clang] move mk_sil.*_var to cVar_decl
4 years ago
Jules Villard a0da881265 [siof][trivial] add logging when calling unknown procedures
4 years ago
Artem Pianykh 5408be4a3a [nullsafe] Deprecate @NullsafeStrict and @Nullsafe modes except LOCAL(trustAll)
4 years ago
Nikos Gorogiannis a32a1a41b0 [starvation] add model for WifiManager.getConnectionInfo
4 years ago
Nikos Gorogiannis 7b0d47217c [starvation] add models for checkPermission/checkSelfPermission
4 years ago
Sungkeun Cho a7bb4bd320 [ConfigImpact] Compare unchecked callees if lengths are the same
4 years ago
Daiva Naudziuniene 22c6a42d5c [deadstore][minor] Add missing FP_
4 years ago
Daiva Naudziuniene 58007f7ab1 [pulse] Revert back error message for general case of AccessToInvalidAddress
4 years ago
Daiva Naudziuniene a947961d76 [deadstore] False positive caused by exceptional cfg
4 years ago
Nikos Gorogiannis 3783c52a76 [starvation] add models for getStreamVolume and getRingerMode
4 years ago
Nikos Gorogiannis 4f9c113acb [racerd] ignore autogenerated methods
4 years ago
Sungkeun Cho aff237306f [ConfigImpact] Add known cheap functions of System and Number
4 years ago
Daiva Naudziuniene 7a1ec45ebe [pulse][objc][nullptr] A special case for objc nil messaging for unknown call
4 years ago
Ezgi Çiçek df191c4084 [biabduction] Make test independent of Java specific concat
4 years ago
Gabriela Cunha Sampaio 68b4b5cc27 [pulse] IsInstanceOf simplification for null obj
4 years ago
Gabriela Cunha Sampaio 6357a97d6c [pulse] Adding model for Java Map
4 years ago
Sungkeun Cho 76d4563f8c [ConfigImpact] Collect all object fields that may have config values
4 years ago
Sungkeun Cho 4ad7d23216 [ConfigImpact] Extend analysis to include conditional field checks
4 years ago
Jules Villard f9b6f2bdf1 [Topl] add doc and change TOPL -> Topl
4 years ago
Radu Grigore 6f83c45e47 [topl] Remove nondet marker
4 years ago
Sungkeun Cho 346380c649 [pulse] Init struct fields with zero when a message is sent to nil
4 years ago
Loc Le cd3c7b55da [pulse] FN about bug after malloc
4 years ago
Gabriela Cunha Sampaio 74f7df378d [pulse] Refactor Java Integer model
4 years ago
Jules Villard d9c037e062 [CLI] rename biabduction-specific option
4 years ago
Andrew V. Jones 7d0aa9ec1c Adding a new line when pretty-printing a structured value (#1416)
4 years ago
Jules Villard c07af055eb [topl] delete shallow implementations in favour of a single Pulse one
4 years ago
Gabriela Cunha Sampaio fd1731c34b [pulse] Refining model for Java Collection interface
4 years ago
Sungkeun Cho e05fd1be67 [ConfigImpact] Ignore cheap functions like Math.ceil during the analysis
4 years ago
Jules Villard 30de9be354 [pulse] protect against Z exceptions
4 years ago
Ezgi Çiçek bf0fa55a45 [immutability] Add support for modifications to Litho's Immutable Maps
4 years ago
Ezgi Çiçek 583a011666 [pulse] Add a new config for modelling a function as returning the first arg
4 years ago
Jules Villard 36ebf276a3 [pulse] simplify IsInstanceOf inside sub-terms too
4 years ago
Jules Villard 4546dddb76 [website] update NULL_DEREFERENCE documentation
4 years ago
Sungkeun Cho 572080a8e9 [pulse] Havoc actuals when lengths of actuals and formals mismatch
4 years ago
Ezgi Çiçek 2b144509ab [ConfigImpact] Handle hash collision
4 years ago
Jules Villard f56f18350d [pulse] bump base_fuel to 10 to avoid under-normalising formulas
4 years ago
Jules Villard 4436265f6b [pulse] fold linear normalization into normalization
4 years ago
Jules Villard 026ff12e69 [pulse][trivial] remove unused warning suppression
4 years ago
Jules Villard 4bcf013859 [pulse] fix some new_eqs propagation issues
4 years ago
Daiva Naudziuniene 056c8abbff [pulse][refactor] Move operations related to function calls to PulseCallOperations
4 years ago
Jules Villard 55871dd285 [pulse][2/2] generate latent issues when null is allocated
4 years ago
Jules Villard 8a1213962e [pulse][1/2] new kind of latent issues to remove some FNs
4 years ago
Jules Villard d0cf7e3135 [pulse] refine canonicalisation
4 years ago
Jules Villard 6273b1f445 [pulse] move summarisation and reporting functions around
4 years ago
Ezgi Çiçek abb6131e88 [cost] Add models for Java Set
4 years ago
Mitya Lyubarskiy d966003b31 [nullsafe] Change "Field not initialized" error message
4 years ago
Jules Villard e0142794a3 [lab] adjust README to reflect new option name
4 years ago
Daiva Naudziuniene e7aa401777 [pulse][uninit] Remove special case for ObjC block captured variables
4 years ago
Ezgi Çiçek 7be85f40a2 [impurity] Refactor Option type and hoist out report functions
4 years ago
Sungkeun Cho b004a7f510 [liveness] Handles live variables in catch block
4 years ago
Ezgi Çiçek 8e1ea769ea [cost] Remove warning message
4 years ago
Sungkeun Cho d9021b9517 [frontend] Add try_entry, try_exit statements for C++ try-catch blocks
4 years ago
Martin Trojer 18f28395e8 [clang] migrate to llvm/clang11
4 years ago
Ezgi Çiçek c67f3d5753 [objc] Suppress block counter when getting method name
4 years ago
Daiva Naudziuniene 02598a575e [pulse] Enable OPTIONAL_EMPTY_ACCESS by default
4 years ago
Ezgi Çiçek 432a970432 [refactor] Remove `then ()`
4 years ago
Ezgi Çiçek 36135aed68 [refactor] Remove `else ()`
4 years ago
Daiva Naudziuniene aae28efb44 [procname][refactor] Move is_cpp_lambda to Procname
4 years ago
Daiva Naudziuniene 778c629401 [clang frontend][objc] Fix types of variables captured by reference in objc blocks
4 years ago
Ezgi Çiçek 0599185fca [litho] Add test for replicating issue with null access path args
4 years ago
Ezgi Çiçek 55e4108a35 [cost][differential] Add FP test for blocks
4 years ago
Ezgi Çiçek 7110c1ca3f [litho] Handle non-existing caller path
4 years ago
Gabriela Cunha Sampaio 2d56b1bff1 [pulse] Suppress reports containing skipped calls
4 years ago
Gabriela Cunha Sampaio c736015316 [pulse] Updating Pulse website
4 years ago
Gabriela Cunha Sampaio cba144b779 [pulse] Adapting error messages
4 years ago
Nikos Gorogiannis 6a19997303 [racerd] fix analysis of class initializers
4 years ago
Martin Trojer 68ef8ab147 [clang] [frontend] sort big match clauses
4 years ago