Commit Graph

425 Commits (a3d5b4c700994d37042c8af9a7daec4e867edac1)

Author SHA1 Message Date
Mehdi Bouaziz d6423cf598 [inferbo] Preparing for trace rewrite 6 years ago
Martino Luca 664978d654 Revert D12819709 to patch OOM events 6 years ago
Sungkeun Cho b4683d965d [inferbo] Resize array on casting 6 years ago
Sungkeun Cho 1486a5f105 [infer] Translate casting expressions of integer pointers 6 years ago
Jules Villard 646aa30797 [cfg] print dotty *after* pre-analysis 6 years ago
Ezgi Çiçek 5fa89e2563 [purity] Disable clang 6 years ago
Mehdi Bouaziz 8fcbfcb741 [inferbo] Pretty-print more abstract locations 6 years ago
Sungkeun Cho e912bf2aa5 [inferbo] Prune more for "(x + e1) < e2" cases 6 years ago
Sungkeun Cho e190325b82 [inferbo] Distinguish collection add against array access in pp 6 years ago
Sungkeun Cho 0d2b0e1ab7 [inferbo] Fix check function for is_collection_add 6 years ago
Mehdi Bouaziz fac9932168 [inferbo] Add traces to Conditions always true/false and Unreachable code 6 years ago
Sungkeun Cho 1503f63c27 [inferbo] Fix evaluation of multi-dimensional arrays 6 years ago
Sungkeun Cho 07f8855185 [inferbo] Fix condition check of multi-dimensional array 6 years ago
Mehdi Bouaziz 0ba4c2c892 [cost] Pretty-printing exponents 6 years ago
Mehdi Bouaziz 5ed59b1655 [Inferbo/cost] Improve pretty-printing 6 years ago
Mehdi Bouaziz 42b16d45fa [inferbo] New tests 6 years ago
Martino Luca 0547878898 Update InferBO tests 6 years ago
Sungkeun Cho 1cbcbe6fb3 [inferbo] Improve division on constant 6 years ago
Sungkeun Cho 01a83e694b [inferbo] Improve semantics of binary and 6 years ago
Jules Villard 9aa5582caa [clang] leave markers of variable initialization for pulse 6 years ago
Sungkeun Cho 2401f6f6eb [inferbo] Give a widening threshold of zero 6 years ago
Sungkeun Cho 00081274cb [inferbo] Preciser pruning: (x != 0) 6 years ago
Sungkeun Cho b2189c1c17 [inferbo] Loosen similar bounds condition 6 years ago
Sungkeun Cho bf29bd9772 [inferbo] Fix xcompare of Itv 6 years ago
Sungkeun Cho fed56fd0d8 [inferbo] Revise deduplication 6 years ago
Sungkeun Cho 9e9deb93be [inferbo] Use set instead of list on get_symbols 6 years ago
Sungkeun Cho a2312462eb [inferbo] Use values of global constant variables in C 6 years ago
Sungkeun Cho 87dd2047ec [infer] Use big int in IntLit 6 years ago
Sungkeun Cho 120c8785eb [inferbo] Update pp of buffer overflow condition 6 years ago
Sungkeun Cho 423b732cb4 [inferbo] Fix condition of narrowing termination 6 years ago
Mehdi Bouaziz 10804588b2 New function pointer preanalysis without recursion 6 years ago
Sungkeun Cho a40a7984c7 [inferbo] Try division on minmax value conservatively 6 years ago
Sungkeun Cho 3f71cf327b [inferbo] Separate offset and index in condition 6 years ago
Mehdi Bouaziz 3ee96263a7 [inferbo] Simplify and improve Itv.prune_comp 6 years ago
Mehdi Bouaziz 2824056af5 [inferbo] Normalize intervals after substitution 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
Mehdi Bouaziz e72cd6c00f [inferbo] More precise min/max 6 years ago
Sungkeun Cho 38ab5fda4e [inferbo] Add some tests of imprecise pruning on unsigned int 6 years ago
Mehdi Bouaziz 592efbf5fa [inferbo] Refine <= for MinMax 6 years ago
Sungkeun Cho 3f969414fe [inferbo] Check integer overflow when really need 6 years ago
Sungkeun Cho 5d9f11c68e [inferbo] Do not raise integer overflow when multiplying 1 6 years ago
Sungkeun Cho cd1981a567 [inferbo] Change pp of BinaryOperationCondition 6 years ago
Mehdi Bouaziz 6d9943f2aa Uninit: fix test 6 years ago
Sungkeun Cho fb4086c6f6 [inferbo] Add integer overflow issue type 6 years ago
Mehdi Bouaziz 81f31068e2 [Uninit][9/13] Check rhs using prestate 6 years ago
Dino Distefano 3d07754275 Giving cost 1 to procedure with empty body 6 years ago
Mehdi Bouaziz c3f2fbc8c6 [inferbo] Do not alias values representing multiple values (Java, C partially) 6 years ago
Mehdi Bouaziz eca0b491d6 Weak Topological Order and Abstract Interpreter using it 6 years ago
Mehdi Bouaziz 5679105c15 [Uninit][7/13] Add new tests 6 years ago
Jules Villard 7615963bf4 [proc-cfg][2/5] fix duplicate symbols detection 7 years ago
Sungkeun Cho 96cbdb15c7 [inferbo] Use big_int in interval domain 7 years ago
Sungkeun Cho 86d1560984 [inferbo] Add tests of integer overflow and unsafe casting 7 years ago
Jules Villard a29e769b61 [kill -a][1/4] stop using `-a foo` in the infer repo 7 years ago
Thomas M. DuBuisson 75e4226ea3 [infer][PR] Fix getcwd model to allow NULL argument 7 years ago
Julian Sutherland 5cf66f6da8 InferBO strncpy model 7 years ago
Julian Sutherland a5d3203ce8 inferBO calloc model 7 years ago
Julian Sutherland e24ce31744 Added inferBO model for the C memset function. 7 years ago
Julian Sutherland e2150d1579 Wired up model for memmove which is identical to memcopy 7 years ago
Martino Luca aea1b4095e [Perf][CI] Disable threshold based cost reports 7 years ago
Julian Sutherland b7353c961c Added model for memcpy C function to inferBO 7 years ago
Sungkeun Cho 0cffc52b3b [inferbo] Simplify memory instantiation of function call 7 years ago
Sungkeun Cho da51a736ec [inferbo] Add a test showing empty fields of structure 7 years ago
Sungkeun Cho 524ae3a7e2 [inferbo] Return unknown value on non-const function calls 7 years ago
Sungkeun Cho 76bf31bc17 [inferbo] Add a test case of global constant 7 years ago
Mehdi Bouaziz 5817ff6adc [inferbo] Do not re-report issues if the precision hasn't improved 7 years ago
Mehdi Bouaziz 5a4d4f0882 [inferbo] Fail if trying to substitute non-symbolic conditions 7 years ago
Mehdi Bouaziz 1a75fa9ebd [inferbo] Propagate INFERBO_ALLOC_MAY_BE_ even when the bound is infinity 7 years ago
Mehdi Bouaziz 693089ab08 [inferbo] Alloc site in the trace for INFERBO_ALLOC_xx issues 7 years ago
Mehdi Bouaziz 07f22daada [inferbo] Report calls without () 7 years ago
Mehdi Bouaziz ad986dffde Get rid of Declare_locals 7 years ago
Mehdi Bouaziz 12c0e245c6 [Inferbo] Simplify interval pretty-print 7 years ago
Martino Luca 632cb0e513 [Perf] Emit ZERO_EXECUTION_TIME_CALL issue-type, when zero-costing functions are met 7 years ago
Jules Villard 987ef9ef67 [biabd] ondemand analysis for `pthread_create` builtin 7 years ago
Sungkeun Cho 9eca72d405 [Inferbo] Add relational domains 7 years ago
Martino Luca c50b250576 [Perf] Compute the degree of polynomials 7 years ago
Jules Villard 6e44cae7cd [c] record complex sizeof() and leak from 7 years ago
Jules Villard b23449a7d2 [c] record C lists FP from 7 years ago
Martino Luca cccef6261d Revert "[Perf] Add cost information to the hashing function" 7 years ago
Martino Luca ac64be761f [Perf] Add cost information to the hashing function 7 years ago
Sungkeun Cho 06a04ca9f5 Revert "[Inferbo] Add relational domain" 7 years ago
Sungkeun Cho 1f7a6e53fb [Inferbo] Add relational domain 7 years ago
Jules Villard 2cb96c356a [clang] remove capture hack 7 years ago
Mehdi Bouaziz e5de1b6663 Cost: simplify range of parameters 7 years ago
Mehdi Bouaziz bea71d9168 Inferbo/perf: path rather than symbols 7 years ago
Ezgi Çiçek 4624ff48d1 Fix control variable imprecision in do while loops 7 years ago
Mehdi Bouaziz a8e84d1657 Cost: improve NonNegativePolynomial.(<=) 7 years ago
Mehdi Bouaziz 0639ef82b7 Cost: also take into account arguments in range 7 years ago
Ezgi Çiçek cf1c2acb54 [Cost] Add invariant analysis 7 years ago
Jules Villard 25627fd4d9 [c] add test for cleanup attribute 7 years ago
Ezgi Çiçek f80af7be93 Fix control var analysis for loops with multiple back-edges per loop head 7 years ago
Mehdi Bouaziz affced4303 Cost: actually, we needed data dependency 7 years ago
Ezgi Çiçek cb8e734bbb Get all the loop instructions 7 years ago
Daiva Naudziuniene be754c1558 [bi-abduction] Do not treat for union fields as uninitialized 7 years ago
Mehdi Bouaziz 1b63cb42b7 [cost] Compute range using post state 7 years ago
Jules Villard 30c470eb48 [tests] record error bucket in expected output 7 years ago
Jules Villard 8b882ac1df Change license to MIT 7 years ago
Daiva Naudziuniene c47071f186 [uninit] Initialize indirect function call arguments of pointer type 7 years ago
Sungkeun Cho cac08598a0 [inferbo] preciser widening of bound 7 years ago
Jules Villard 8715c4f892 [clang] make switch statement translation more robust 7 years ago
Ezgi Çiçek 1263bfa899 Add tests for cost analysis 7 years ago
Ezgi Çiçek 6f8bccb8fd Add tests for invariant problem in cost analysis 7 years ago
Mehdi Bouaziz aaf346d115 [cost] Polynomial domain 7 years ago
Jules Villard 766a16cd90 [clang] enforce that `instruction` always returns one SIL expression 7 years ago
Jules Villard dfe2ad5229 [camel] call `Format.pp_print_*` directly where appropriate 7 years ago
Mehdi Bouaziz 131ae4a801 [itv] Prettier print 7 years ago
Mehdi Bouaziz 5fe28785bc Cost: fix min 7 years ago
Jules Villard 902de9d6e3 [sil] make return value and type mandatory 7 years ago
Mehdi Bouaziz 1deaf7bfd6 Cost: instantiate symbolic cost after call 7 years ago
Mehdi Bouaziz 9c14e9d384 [Cost] Fix multiplication by 1 7 years ago
Mehdi Bouaziz 094eb9dcc7 [Cost] Use OneInstrPerNode CFG 7 years ago
Jules Villard 73a47d594c [debug] print procedures in alphabetical order in cfgs 7 years ago
Ezgi Çiçek 8f0701a01c Refine dependency analysis to remove vars at prune exit nodes 7 years ago
Ezgi Çiçek 523c2f539b change clang translation to track if_kind (i.e. the type of prune node) 7 years ago
Ezgi Çiçek 76300d55c7 Tracks variables that affect control flow for a more precise cost analysis 7 years ago
Ezgi Çiçek af5265f75d "Report infinity as error per function" 7 years ago
Jules Villard dee7414aa9 [inferbo] do not include location information in the bug description 7 years ago
Sungkeun Cho 4234288c93 [inferbo] Add a pointer arithmetic test 7 years ago
Sungkeun Cho e12a4a1071 [inferbo] Add traces in lift functions 7 years ago
Sungkeun Cho 1f6feef448 [inferbo] Revise eval_locs for array blocks 7 years ago
Sungkeun Cho a353d69a6e [inferbo] Fix test code 7 years ago
Sungkeun Cho 4aafe8a990 [inferbo][bugfix] Revise gathering safety conditions in sub-exp 7 years ago
Sungkeun Cho b42d66d557 [inferbo][bugfix] Pointer arithmetics on pointers to non-array 7 years ago
Sungkeun Cho 00e1139071 [frontend] Parse binary operator using types of parameters 7 years ago
Ezgi Çiçek 872daf1ba7 Add estimated cost to trace element 7 years ago
Dino Distefano e54df20eb7 Migrate to Itv.Bound 7 years ago
Dulma Churchill d04a7aed52 [clang] Removed the mangling part of Clang global variables in the error messages 7 years ago
Sungkeun Cho bd040cf696 [inferbo] Add an issue type for alarms by unknown function call 7 years ago
Sungkeun Cho 426af10130 [inferbo][bugfix] Pruning array block (NE case) 7 years ago
Sungkeun Cho 18ea3f99d8 [inferbo][bugfix] Plus semantics of interval domain 7 years ago
Jeremy Dubreil d74f189dfe [infer] add the report kind to the list of expected output 7 years ago
Daiva Naudziuniene 5898417fdd [frontend] Getting appropriate type information for exp in sizeof exp 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
Sungkeun Cho 8fd04d5312 [inferbo][bugfix] Add index to offset at array fields 7 years ago
Dulma Churchill be53bc80e2 [lieveness] Fix false positive to do with a _Generic expression not being translated properly 7 years ago
Sungkeun Cho 09ae1f96fc [inferbo] Avoid array field is evaluated to the unknown location 7 years ago
Sungkeun Cho d6740e94b2 [inferbo] Collect array accesses from sub expressions 7 years ago
Dino Distefano 69bfc0535c [Experimental] First very basic version of performance analysis tool 7 years ago
Jules Villard c2c9c94d5e [bug] notice we do not support some versions of `assert` 7 years ago
Sam Blackshear 71a3843746 Revert occurence counting change 7 years ago
Mehdi Bouaziz 4fdaf257ae [inferbo/unreachable] Fix FPs with exit at end of block/procedure 7 years ago
Jeremy Dubreil 96ca6b6f02 [infer][bug hash] take the number of occurences of a report into account 7 years ago
Jules Villard 6b5390fe79 [cfg] rename iCFG to cfg in dotty files 7 years ago
Mehdi Bouaziz d71d759344 [inferbo] Fix division by constant 7 years ago
Jeremy Dubreil ea29749671 [infer] simpler bug hash 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