1200 Commits (master)

Author SHA1 Message Date
Josh Berdine 7817a87e32 [sledge] Support stopping on first report in release mode
4 years ago
Josh Berdine 631eacd71f [sledge] Add explicit type for Alarms
4 years ago
Roman Manevich 14fb38c0da Experiments with KLEE/fuzzing to catch linearizability bugs in simple data structures
4 years ago
Josh Berdine 57ff90a11e [sledge] Fix construction of equalities between Concat
4 years ago
Josh Berdine ed71043920 [sledge] Optimize Trace enabled checking
4 years ago
Josh Berdine df26c0f231 [sledge] Work harder to detect infeasible paths when executing assume
4 years ago
Josh Berdine 87a89bb825 [sledge] Enable LLVM transformations on test code compiled with -O0
4 years ago
Josh Berdine 4b700b37b5 [sledge] Translate casts between Typ.equivalent types to no-op
4 years ago
Josh Berdine 6b32a003df [sledge] Use fresh var for length when extracting from a variable
4 years ago
Josh Berdine d5cc42a7fd [sledge] Do not disable backtrace reporting in non-debug builds
4 years ago
Josh Berdine 5c3c89a964 [sledge] Add definitions to llair_intrinsics for assert
4 years ago
Josh Berdine 6dab0ee459 [sledge][llvm] Reformat to clean up following CAMLprim removal
4 years ago
Josh Berdine 83421103cf [sledge][llvm] Remove vestigial CAMLprim declarations
4 years ago
Josh Berdine 5ef9245ea5 [sledge][llvm] Omit unnecessary GC root registrations
4 years ago
Josh Berdine 973e901f82 [sledge][llvm] Code simplification using string allocation functions
4 years ago
Josh Berdine e2936c1a54 [sledge][llvm] Code simplification using option allocation functions
4 years ago
Josh Berdine 99910de44a [sledge][llvm] Minor optimizations by avoiding double initialization
4 years ago
Josh Berdine a7b44e6969 [sledge][llvm] Fix unsafe uses of Store_field
4 years ago
Josh Berdine fb350e779f [sledge][llvm] Pull in upstream changes
4 years ago
Josh Berdine 3e5b4c8183 [sledge] Make tracing more explicit by including module names
4 years ago
Josh Berdine 8f3cda4b1a [sledge] Remove NS.Either, use Either now in Stdlib
4 years ago
Josh Berdine 6ad7bbe7f1 [sledge] Simplify ppx_trace using Stdlib.__FUNCTION__
4 years ago
Josh Berdine 673c944fc3 [opam] Move the opam files to an opam directory at repo root
4 years ago
Josh Berdine cd9b64bd41 [sledge][llvm] Fix a possible crash in llvm_struct_name
4 years ago
Josh Berdine 200668b3b6 [sledge][llvm] Resolve const and unsigned compilation warnings
4 years ago
Josh Berdine 68c15476c3 [sledge][llvm] Simplify llvm_global_initializer using ptr_to_option
4 years ago
Josh Berdine 6375450211 [sledge] Add checking formatting to CI job
4 years ago
Josh Berdine 55af83de03 [sledge] Add convenience links to executables
4 years ago
Josh Berdine c777325185 [sledge] Suppress newly flagged no-cmx-file warning
4 years ago
Josh Berdine f322d92cba [sledge] Add nonsupport for preallocated operand bundles
4 years ago
Josh Berdine 94395d9bec [sledge] Add support for ScalableVector type
4 years ago
Josh Berdine 55813164dc [sledge] Add support for Freeze instruction
4 years ago
Josh Berdine 6095771e57 [sledge] Add support for BFloat type
4 years ago
Josh Berdine 5316e64230 [sledge] Add nonsupport for CallBr instruction
4 years ago
Josh Berdine de0b4e764c [sledge] Add support for FNeg instruction
4 years ago
Josh Berdine aeca13145a [sledge] Update operand index of Invoke callee
4 years ago
Josh Berdine 38eb6aa8d0 [sledge] Add memtrace support
4 years ago
Josh Berdine fb95eee214 [sledge] Update build to use vendored package for LLVM 11
4 years ago
Josh Berdine 8d1743bf27 [sledge] Make reading config file more robust
4 years ago
Josh Berdine 4689a2881d [sledge][llvm] Add LLVMInternalizePredicateBindings
4 years ago
Josh Berdine b5974020b8 [sledge][llvm] Handle nullptr in Llvm.global_initializer
4 years ago
Josh Berdine fc348d0ac4 [sledge][llvm] Add missing TypeKinds, Opcode, and AtomicRMWBinOps
4 years ago
Josh Berdine 637b566726 [sledge][llvm] Add OCaml APIs to access DebugLoc info
4 years ago
Josh Berdine 823cd76f3c [sledge][llvm] Vendor LLVM OCaml bindings
4 years ago
Josh Berdine b3b6e0e48a [sledge][llvm-dune] Vendor llvm-dune
4 years ago
Josh Berdine 1fa2e6e430 [sledge] Update build of sledge models to use vendored cxxabi
4 years ago
Josh Berdine bafea13b08 [sledge][cxxabi] Vendor LLVM cxxabi project
4 years ago
Josh Berdine a68e184e92 [sledge] Add vendor dir
4 years ago
Josh Berdine 585237aec1 [sledge] Remove functionality depending on Llvm_linker.link_in
4 years ago
Josh Berdine 26014ecd4d [sledge] Distinguish LLVM assertion violations from general aborts
4 years ago
Josh Berdine 6b9b16b077 [sledge] Drop calls to llvm.dbg.label
4 years ago
Josh Berdine 45c155fdf1 [sledge] Combine multiple passes in Llair.Func.mk, fix termination bug
4 years ago
Josh Berdine c531096f97 [sledge] Make name arg of Var.identified non-optional
4 years ago
Josh Berdine 018c738499 [sledge] Make type arg of Exp.conditional non-optional
4 years ago
Josh Berdine eb4a01ce8d [sledge] Change args of Loc.mk from optional to explicit options
4 years ago
Josh Berdine 9ee705bb88 [sledge] Resolve match-on-mutable-state-prevent-uncurry warnings
4 years ago
Josh Berdine 65f8b48aac [sledge] Check type of arg of Resume the same as param of LandingPad
4 years ago
Josh Berdine 40fe8a8bc3 [sledge] Avoid calling Llvm.is_declaration on formal parameters
4 years ago
Josh Berdine 5a81118e14 [sledge] Fix bug in translation of ExtractElement InsertElement instructions
4 years ago
Josh Berdine e32f5ef6bd [sledge] Fix assert when Fpath.v passed empty string
4 years ago
Josh Berdine 37d68c654e [sledge] Add script to link bitcode using gllvm
4 years ago
Josh Berdine 86298e078f [sledge] Print only function name when warning of ignored variadic arguments
4 years ago
Josh Berdine b708c1e3db [sledge] Change test report to use speedup ratio instead of percentage change
4 years ago
Josh Berdine 96b8558b08 [sledge] Simplify Var by combining `program` and `identified` variables
4 years ago
Josh Berdine e33c7f6ce0 [sledge] Change encoding of program var ids to preserve original order
4 years ago
Josh Berdine 3af760ee40 [sledge] Minor improvement to Frontend.cleanup
4 years ago
Josh Berdine 6fb29dac90 [sledge] Add Theory.oriented_equality type for code readability
4 years ago
Josh Berdine 5cdd3cd781 [sledge] Minor Map interface simplifications
4 years ago
Josh Berdine bba67169ec [sledge] Combine normalization and carrier extension when adding equalities
4 years ago
Josh Berdine 4bc33ba928 [sledge] Minor code cleanup in Context
4 years ago
Josh Berdine 8d6f311392 [sledge] Add congruence closure test
4 years ago
Josh Berdine 1f0b005569 [sledge] Optimize map operations over formulas
4 years ago
Josh Berdine 1274bd0d46 [sledge] Optimize equality solver on sequences using super-term index
4 years ago
Josh Berdine d298eb1bad [sledge] Optimize Set operations
4 years ago
Josh Berdine a4caa0bd65 [sledge] Optimize Map operations
4 years ago
Josh Berdine dfd897d9e4 [sledge] Switch Zero-One-Many type to a standard variant
4 years ago
Josh Berdine 435c3de5bb [sledge] Optimize Trm.compare
4 years ago
Josh Berdine c0d106cb0a [sledge] Rework propositional formula definition to avoid recursive modules
4 years ago
Josh Berdine ae5ef09d9e [sledge] Reorder Arithmetic interface
4 years ago
Josh Berdine 5704b160bf [sledge] Rework term and arithmetic definitions to avoid recursive modules
4 years ago
Josh Berdine 24ca0666d3 [sledge] Reorder Arithmetic definitions
4 years ago
Josh Berdine c7c06addfd [sledge] Adapt Multiset to Comparer interface
4 years ago
Josh Berdine cbe6872731 [sledge] Adapt NSSet to Comparer interface
4 years ago
Josh Berdine ecb1bce470 [sledge] Adapt NSMap to Comparer interface
4 years ago
Josh Berdine 5ea2f20cad [sledge] Optimize by inlining functors
4 years ago
Josh Berdine 32c89e6b68 [sledge] Change ocaml/{set,map} to use Comparer interface
4 years ago
Josh Berdine 7cf6e17403 [sledge] Add Comparer: type-indexed compare functions
4 years ago
Josh Berdine 5d54631d09 [sledge] Fix `make debug`
4 years ago
Josh Berdine 02ab2f18c9 [sledge] Add missing label
4 years ago
Josh Berdine 7f60aa006a [sledge] Reorder set and map definitions
4 years ago
Josh Berdine 2df2b4cb7c [sledge] Implement {Map,Set} using Stdlib.{Map,Set}
4 years ago
Josh Berdine de8d583f82 [sledge] Rename nonstdlib/{map,set} to nonstdlib/{NSMap,NSSet}
4 years ago
Josh Berdine 9ca7ba3619 [sledge] Add Map and Set from Stdlib
4 years ago
Josh Berdine 3593e41de1 [sledge] Change confusing order of Multiset args
4 years ago
Josh Berdine ae787bbde1 [sledge] Simplify Propositional interface
4 years ago
Josh Berdine e284b06e5b [sledge] Refactor Var0 into Trm.Var and Subst
4 years ago
Josh Berdine daaff7ad01 [sledge] Reorder Trm definitions
4 years ago
Josh Berdine 0bcdc59086 [sledge] Avoid using Var.ppx in Trm.ppx
4 years ago
Josh Berdine 6ecdb72fcc [sledge] Do not define Trm.Var recursively with Trm.Trm
4 years ago
Josh Berdine 781280faf1 [sledge] Rename Arithmetic.INDETERMINATE.trm to t
4 years ago