Commit 1e890a5
committed
speed up construction of values for large bitvector types
This commit improves the complexity of boolbvt::get(...) from quadratic to
linear. The difference is noticeable when using very large bitvectors,
e.g., for encoding unions with large array members.
E.g., the time taken for regression/cbmc/union/union_large_array.c when using
--cprover-smt2 improves from 12s to 0.2s.1 parent e3eb9c4 commit 1e890a5
File tree
3 files changed
+8
-4
lines changed- regression/cbmc
- bounds_check1
- union
- src/solvers/flattening
3 files changed
+8
-4
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
199 | 199 | | |
200 | 200 | | |
201 | 201 | | |
202 | | - | |
203 | 202 | | |
| 203 | + | |
204 | 204 | | |
205 | 205 | | |
206 | 206 | | |
| |||
214 | 214 | | |
215 | 215 | | |
216 | 216 | | |
217 | | - | |
| 217 | + | |
218 | 218 | | |
219 | 219 | | |
| 220 | + | |
| 221 | + | |
| 222 | + | |
| 223 | + | |
220 | 224 | | |
221 | 225 | | |
222 | 226 | | |
| |||
0 commit comments