8026 Commits (287eee78f54b48524bf7ad5dd3ad43ebf773285a)

Author SHA1 Message Date
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
Nikos Gorogiannis f3984e864d [starvation] fix FP with @NonBlocking caller and blocking calls in callees
4 years ago
Jules Villard 341c08d9fd [pulse] change ISLOk/ISLError inside states into actual Ok/Error outside states
4 years ago
Jules Villard 3aaa28f993 [pulse] refactor errors
4 years ago
Jules Villard c7b0cc3c59 [pulse] change ISL functions to return list of results
4 years ago
Jules Villard 8db09e8e0a [pulse][minor] use List.concat_map in two places
4 years ago
Ezgi Çiçek a7ada8d4af [differential] Modularize cost and reuse common funcs
4 years ago
Daiva Naudziuniene 3ad19cd83d [pulse][nullptr][objcpp] Warn on sending a message to nil when return type is non-POD
4 years ago
Daiva Naudziuniene 991654c282 [clang frontend] Refactor a check whether a type is POD for later use
4 years ago
Daiva Naudziuniene 709f9127b2 [pulse][objcpp][nullptr] Link self with return to preserve the trace
4 years ago
Ezgi Çiçek e9fe04b39f [differential] Refactor to reuse common item description in cost/config_impact items
4 years ago
Gabriela Cunha Sampaio f719294d41 [pulse] Model for TextUtils.isEmpty()
4 years ago
Gabriela Cunha Sampaio e739099a40 [pulse] Model for Java instanceof
4 years ago
Sungkeun Cho a57cd7af36 [ConfigImpact] Run reportdiff on config impact json results
4 years ago
Gabriela Cunha Sampaio 752c494970 [pulse] Adding temporary model for Collection.isEmpty()
4 years ago
Nikos Gorogiannis 3ec6410072 [starvation] ConnectivityManager.getActiveNetworkInfo
4 years ago
Nikos Gorogiannis 136281edb5 [starvation] add distinct issue for blocking IPC Binder calls
4 years ago
Boris Yakobowski 05c25487f2 Set timeouts handlers only in biabduction mode (#1391)
4 years ago
Boris Yakobowski 52447b01af Fix compilation warning with gcc10 (#1393)
4 years ago
Sungkeun Cho f15d6d9675 [infer-out] Fix removing result directory
4 years ago
Sungkeun Cho 598cb10170 [ConfigImpact] Use config-impact-issues.exp instead of issues.exp
4 years ago
Gabriela Cunha Sampaio 5007eddbef [pulse] Computing dynamic type information
4 years ago
Jules Villard 1a1668f2e1 [pulse] avoid division by zero
4 years ago
Nikos Gorogiannis e9c02d9c63 [starvation] use a map keyed on issue type for reports
4 years ago
Nikos Gorogiannis 87884625bd [starvation] refactor reporting
4 years ago
Sungkeun Cho 65efa978e5 [pulse] Fix typo of issue type name of uninit/pulse
4 years ago
Sungkeun Cho ae3c51377c [doc] Update cost documentation
4 years ago
Andrey Makeev 92e127759e [nullsafe] Add missing `android.os.Build` string constants (#1402)
4 years ago
Nikos Gorogiannis 9fe159e71a [starvation] remove severity
4 years ago
Sungkeun Cho 11e3acb20e [ConfigImpact] Print config-impact-report.json
4 years ago
Daniel Schoepe 91015609b2 [racerd] Add models for javax.crypto.Mac methods (#1395)
4 years ago
Sungkeun Cho c20dd86231 [ConfigImpact] Do not distinguish direct/indirect call
4 years ago
Daiva Naudziuniene e4ff4b500a [pulse][nullptr][objc] Add nil summaries for ObjC instance methods
4 years ago
Sungkeun Cho 3ba6a1e9df [report] Refactor JsonCostsPrinter module
4 years ago
Daiva Naudziuniene 1a5f40f25f [pulse] Move reporting functions to be able to use them in other modules
4 years ago
Sungkeun Cho 65e76387be [WTO] Make `expand` tail recursive
4 years ago
Ezgi Çiçek 7f9d56b1b5 [ConfigImpact] Only report on functions that occur on a given json config data
4 years ago
Sungkeun Cho 92ad9f1ed9 [ConfigImpact] Use ProcCfg.Normal instead of NormalOneInstrPerNode
4 years ago
Gabriela Cunha Sampaio 97bce99c03 [pulse] Adding IsInstanceOf predicate
4 years ago
Ezgi Çiçek a57d572bca [ConfigImpact] Enable clang analysis and add tests
4 years ago
Jules Villard 1320e79201 [liveness] ignore most dead stores when the variable has been passed by reference
4 years ago
Gabriela Cunha Sampaio 671727be53 [pulse] Implementing temporary model for Java instanceof operator
4 years ago
Sungkeun Cho a93158112b [ConfigImpact] Add inter-procedural trace
4 years ago
Jules Villard bc841595d5 [tests] add missing copyright
4 years ago
Jules Villard 7c2c5a406b [tests] follow ".exp" naming convention
4 years ago
Ezgi Çiçek 07b890279d [ConfigImpact] Adjust inter-proc analysis to add leaf calls
4 years ago
Sungkeun Cho 7912877166 [uninit] Revise error message to include access paths
4 years ago
Sungkeun Cho 4d8a5d8afd [ConfigImpact] Inter-procedural analysis
4 years ago
Sungkeun Cho c5cbd3142e [uninit] Fix a bug on nested struct initialization
4 years ago
Sungkeun Cho 02933d81ba [impurity] Suppress internal error with too strong assumption
4 years ago
Sungkeun Cho 7e6654cd25 [ConfigImpact] Add a new checker: ConfigImpactAnalysis
4 years ago
Mitya Lyubarskiy c6a253b875 format
4 years ago
Mitya Lyubarskiy 481068d3da [nullsafe] --no-nullsafe-optimistic-third-party-in-default-mode is optimistic about Inheritance check
4 years ago
Jules Villard 4c357e434b [pulse] apply discovered variable equalities eagerly
4 years ago
Jules Villard 886a47402d [pulse] do not canonicalize preconditions
4 years ago
Jules Villard d22e08cf82 [impurity] sort edges before comparing them
4 years ago
Jules Villard 94930e3b11 [pulse] refactor incorporate_new_eqs
4 years ago
Jules Villard 84d1fd3b52 [pulse] add tests
4 years ago
Adam Ernst bf87088a35 Don't warn about direct ivar access for atomic readonly properties
4 years ago
Jules Villard 4f77f82cba [pulse] some models should "prune" instead of "and"
4 years ago
Jules Villard e7124511dc [pulse] use only known facts for variable substitutions
4 years ago
Jules Villard a1db290c2e [pulse] models for folly::Optional::operator{*,->}()
4 years ago
Martin Trojer 7fcb9446dd [clang] add a new flag --skip-non-capture-clang-commands to makes clangdriver skip compilation on commands that doesn't capture data
4 years ago
Ezgi Çiçek 7af9d02542 [inferbo] Handle global constant array loads in Obj-C
4 years ago