215 Commits (71f20908a19e508635c55631b59bf3d6a2ba48fb)

Author SHA1 Message Date
Josh Berdine c094a38d56 [IR] Simplify to single return id, with type
9 years ago
Josh Berdine 44e2c32524 [IR] Refactor annotation types into separate module
9 years ago
Josh Berdine 74c8198826 [IR] Remove redundant struct_typ.name field
9 years ago
Josh Berdine 8589dc4868 Remove Tstruct in favor of Tvar
9 years ago
Josh Berdine 548338bb4e Move mk_struct to Tenv
9 years ago
Josh Berdine 30b3881e52 Make Typ.struct_typ private and add Typ.mk_struct
9 years ago
Josh Berdine ad31aeb2a2 Expand Tvar to Tstruct as needed
9 years ago
Sam Blackshear 3368548e3e replace stackop instruction with skip instruction
9 years ago
Sam Blackshear e918624076 abducted -> abduced
9 years ago
Josh Berdine 8a85919001 Pass tenv to everywhere that matches on Tstruct
9 years ago
Josh Berdine 2bebd94553 Remove redundant Typ.struct_typ.csu field
9 years ago
Josh Berdine f0940f25d7 Replace optional mangled struct_name with typename
9 years ago
Sam Blackshear 15b6a8cdd7 killing a bunch of options by using optional argument types correctly
9 years ago
Cristiano Calcagno 91d9cd83b5 Cleanup instruction names: use Load/Store instead of Letderef/Set.
9 years ago
Jules Villard 145cb744f6 do not havoc actuals of skip functions with const parameters
9 years ago
Cristiano Calcagno b48ec1ac93 Clean up API to access components of propositions.
9 years ago
Josh Berdine 3896b10265 Move Prop.Attribute to toplevel
9 years ago
Josh Berdine 4053d24bed Refactor Prop ops on attributes into sub-module
9 years ago
Josh Berdine c147ab4197 Refactor Sil.attribute and associates to PredSymb
9 years ago
Josh Berdine 25a52c7bbc Refactor operations on Exp.t in Sil to Exp
9 years ago
Josh Berdine d60965824e Refactor exp_equal and exp_compare to Exp
9 years ago
Josh Berdine 701eb20f83 Refactor Sil.exp to Exp.t
9 years ago
Josh Berdine 6ffe204252 Make Aobjc_null attribute a binary predicate
9 years ago
Josh Berdine 4185bda8ba Generalize predicates from unary to nary
9 years ago
Josh Berdine c2f62f3a97 Remove tuple type redundant with atom
9 years ago
Josh Berdine b09b28f10f Add negated attributes, with 2-valued semantics
9 years ago
Josh Berdine 71a15b2388 Represent attributes with atoms, not disequalities
9 years ago
Josh Berdine fe780cb6ff Move comments to improve attachment
9 years ago
Josh Berdine 32146523ca Enable warning: Unexpected documentation comment
9 years ago
Martino Luca da2717ff2a Migrate BAD_POINTER_COMPARISON check from backend to linters infra
9 years ago
Josh Berdine ccd32690d7 Refactor Sil.call_flags into separate CallFlags module
9 years ago
Josh Berdine eefe05b240 Refactor Sil.Subtype into separate Subtype module
9 years ago
Josh Berdine aba67b4a2a Refactor Sil.binop into separate Binop module
9 years ago
Josh Berdine 2154c2c483 Refactor Sil.unop into separate Unop module
9 years ago
Josh Berdine 9487cab145 Refactor Sil.const into separate Const module
9 years ago
Josh Berdine a1b680c473 Move attributes from const to exp
9 years ago
Josh Berdine 5f309ebb23 Tighten type of Aobjc_null to reduce recursion
9 years ago
Josh Berdine 32d09545e2 Closure values are not constants
9 years ago
Josh Berdine c5ce74f3d3 Exception values are not constants
9 years ago
Dulma Churchill cf72de9460 Make ObjC virtual functions return nil if they are called with nil, even if they are going to be skipped.
9 years ago
Josh Berdine bbec166174 Refactor Sil.typ into separate Typ module
9 years ago
Josh Berdine a6a766b5f5 Refactor Sil.Int into separate IntLit module
9 years ago
Josh Berdine 229ca26c8b Optimize normalization, substitution, renaming of array types
9 years ago
Jeremy Dubreil 17da853fa8 Do not angelically remove the file attribute on the reciever for virtual calls
9 years ago
Josh Berdine a85a88d145 Extend Sizeof with final extensible array length
9 years ago
Sam Blackshear f45a7ec1eb using taint kind in taint sink specifications
9 years ago
Sam Blackshear 3b6fa0939b adding taint kind to taint source specifications
9 years ago
Josh Berdine 3e2fa59262 Reimplement command line options
9 years ago
Sam Blackshear 20925df57c removing unused deallocate param in nullify instr
9 years ago
Sam Blackshear 442cf66fdc don't fail when nullifying a var not in the prop
9 years ago
Dulma Churchill 54a3bdd455 Load the attribute file to get the getter/setter info from the procdesc
9 years ago
Sam Blackshear 77791b7e8e warn on deref of nullable skip function
9 years ago
Sam Blackshear 843bcc1576 support tainting of annotated fields
9 years ago
Sam Blackshear e1e62be243 supporting new @PrivacySource/PrivacySink annotations
9 years ago
Jules Villard ac6ef1d9f6 kill Sil.Goto
9 years ago
Josh Berdine b881887bf2 Refactor Utils.SymOp into separate module
9 years ago
Josh Berdine e1020c8ebe Remove -open(Utils) compile flag hack
9 years ago
Sam Blackshear 378ab69558 consistent API and usage for extracting Java types from strings
9 years ago
Josh Berdine 213fe46c89 Move ml_loc and operations to Logging
9 years ago
Josh Berdine b4bc7904f5 Move SymExec.lookup_java_typ_from_string to Tenv
9 years ago
Josh Berdine 61d2a50809 Simplify interface of SymExec
9 years ago
Josh Berdine fd062cf736 Refactor SymExec.ModelBuiltins into toplevel module
9 years ago
Cristiano Calcagno 509a666ee0 Refactor Sil.pvar into a separate module.
9 years ago
Cristiano Calcagno 53702e43e8 Created IR folder for the intermediate representaion files.
9 years ago
Sam Blackshear c03f39f20c Fixing some issues with Obj-C blocks
9 years ago
Josh Berdine 2dcd93204c Refactor SymExec.Builtin into toplevel module
9 years ago
Cristiano Calcagno c198d76631 Clean up the Procname module, and remove remaining assert false
10 years ago
Sam Blackshear ab1ac822f6 Replacing Ctuple with Cclosure
10 years ago
Cristiano Calcagno 86304b3d9c Prevent assert false from occurring on Java functions in Procname.
10 years ago
Dulma Rodriguez 10a14a7324 Translate CXXTypeidExpr
10 years ago
Sam Blackshear 63f8a3e709 refactoring facebook-specific and open-source taint lists to fix open-source tests
10 years ago
Cristiano Calcagno b2969820a4 Avoid loading the cfg explicitly to find a proc desc.
10 years ago
jrm 793911c847 Add the possibility to analyze procedure descriptions on-demand without serialization
10 years ago
Sam Blackshear 7fb8f8b651 adding type-specific taint error messages
10 years ago
Sam Blackshear 15f0c7e384 adding "kind" for taint attribute
10 years ago
Cristiano Calcagno 494dabf638 Simplify code in SymExec: cleanup and look up cfg.
10 years ago
Sam Blackshear 2d89426170 fixing tenv_lookup
10 years ago
jrm 082ca6a90a Initial support for lazy dynamic dispatch
10 years ago
Dino Distefano b7d6f2a3bd Fixed problem with null pointer dereference in c library models.
10 years ago
Cristiano Calcagno 89a2f2a7b4 Keep only on-demand infrastructure and delete the rest or the infrastructure.
10 years ago
Cristiano Calcagno 021cf213a6 Bypass the interprocedural algorithm in Fork with ondemand, and replace it with a simple iteration.
10 years ago
jrm 8ce56968d6 no longer report NULL_TEST_AFTER_DEREFERENCE in tracing mode
10 years ago
Peter O'Hearn bec08365de Part 1 of double unlock, locks as resources
10 years ago
Cristiano Calcagno 16402cddc0 Save global state for abstraction for on-demand.
10 years ago
Sam Blackshear cd002e5c46 fixing angelic mode for struct values passed by reference
10 years ago
Cristiano Calcagno c570d97ad8 Cleanup code for registering builtins.
10 years ago
Josh Berdine de31246399 Builtin.builtin_plain_functions is no longer used
10 years ago
Josh Berdine 77b22ded03 Warn on unused identifiers
10 years ago
Josh Berdine 02056079cf Warn of unused values
10 years ago
Sam Blackshear 091f31dd17 translating monitor exit/enter
10 years ago
Dulma Rodriguez efd3aeccc6 Using the attributes table to find out the method to call in virtual calls
10 years ago
Josh Berdine b155168083 Open Utils implicitly
10 years ago
Josh Berdine 2f47142b94 Warn of unused loop index variables
10 years ago
Sam Blackshear 5833835289 dynamic dispatch for virtual calls in Java
10 years ago
Dino Distefano e0fe2af712 Added a two new attributes: observer/unsubscribed_observer
10 years ago
Cristiano Calcagno 2a926d8294 Remove uses of assert false to get original ml location.
10 years ago
Sam Blackshear 5e9a21573b preventing Bad_footprint when passing struct value by reference
10 years ago
Sam Blackshear d0cd8fca47 removed unused param footprint_part
10 years ago
Peter O'Hearn 028ac24d46 Simple model for locks
10 years ago
Sam Blackshear ef3912cbde Adding on-the-fly translation of types during pre-analysis
10 years ago