Go to file
Mikhail R. Gadelha bd1077e2bc [analyzer] Optimize constraint generation when the range is a concrete value
Summary:
If a constraint is something like:
```
$0 = [1,1]
```
it'll now be created as:
```
assert($0 == 1)
```
instead of:
```
assert($0 >= 1 && $0 <= 1)
```

In general, ~3% speedup when solving per query in my machine. Biggest improvement was when verifying sqlite3, total time went down from 3000s to 2200s.

I couldn't create a test for this as there is no way to dump the formula yet. D48221 adds a method to dump the formula but there is no way to do it from the command line.

Also, a test that prints the formula will most likely fail in the future, as different solvers print the formula in different formats.

Reviewers: NoQ, george.karpenkov, ddcc

Reviewed By: george.karpenkov

Subscribers: xazax.hun, szepet, a.sidorin

Differential Revision: https://reviews.llvm.org/D48227

llvm-svn: 335116
2018-06-20 11:42:12 +00:00
clang [analyzer] Optimize constraint generation when the range is a concrete value 2018-06-20 11:42:12 +00:00
clang-tools-extra [clangd] Use workspace root path as hint path for resolving URIs in workspace/symbol 2018-06-19 09:33:53 +00:00
compiler-rt [asan] Add flushes to try to fix test 2018-06-20 01:09:51 +00:00
debuginfo-tests [debuginfo-tests] Always use the system python to invoke llgdb.py. 2018-06-10 19:38:26 +00:00
libclc Update copyright year to 2018. 2018-06-18 12:22:17 +00:00
libcxx Fix libcxx tests after clang r334677. 2018-06-17 19:58:45 +00:00
libcxxabi Update copyright year to 2018. 2018-06-18 12:22:17 +00:00
libunwind Update copyright year to 2018. 2018-06-18 12:22:17 +00:00
lld [ELF] Support -z initfirst 2018-06-20 02:06:01 +00:00
lldb IRInterpreter: fix sign extension of small types (pr37840) 2018-06-20 10:45:29 +00:00
llgo Update copyright year to 2018. 2018-06-18 12:22:17 +00:00
llvm [llvm-exegesis] Fix failing test. 2018-06-20 11:09:36 +00:00
openmp Remove liboffload from repository 2018-06-19 19:08:17 +00:00
parallel-libs Update copyright year to 2018. 2018-06-18 12:22:17 +00:00
polly Move ScopInfo to isl++ 2018-06-19 08:13:53 +00:00
README.md

README.md

Low Level Virtual Machine (LLVM)

This directory and its subdirectories contain source code for LLVM, a toolkit for the construction of highly optimized compilers, optimizers, and runtime environments.