#
879c1bf6 |
|
31-Jul-2018 |
Thomas Sewell <Thomas.Sewell@data61.csiro.au> |
Document 'complex loop' aborts unconditionally.
|
#
8166830b |
|
27-Jul-2018 |
Thomas Sewell <Thomas.Sewell@data61.csiro.au> |
Handle missing symbols as problem aborts. Previously missing symbols resulted in a global failure, now only the relevant problems will fail. This better suits a regression-test approach which hopes to converge on correctness gradually.
|
#
8ade0aef |
|
24-Jan-2017 |
Thomas Sewell <Thomas.Sewell@nicta.com.au> |
Some more inner loop handling sanity. This gets us past the 'check' phase of problem setup for functions with inner loops.
|
#
09ad0171 |
|
09-Jan-2017 |
Thomas Sewell <Thomas.Sewell@nicta.com.au> |
Two major tweaks to var cycle analysis. Firstly, var cycle analysis is now generally much better at handling masking problems, e.g. when a linear variable is repeatedly masked off or cast up and down, interspersed with other arithmetic. Secondly, var cycle analysis detects dead paths within loops with some vague approximation of const-propagation, which in particular allows an offset value pageBitsForSize (SectionBits) in map_kernel_window to be recognised as a constant offset.
|
#
89a69c49 |
|
04-Jan-2017 |
Thomas Sewell <Thomas.Sewell@nicta.com.au> |
Move consider_inline process to check. It's still not really where it belongs. Really the target should specify what the inlining process should be, but that breaks backward compatibility a bit too much for me right now.
|
#
ae31944f |
|
01-Nov-2016 |
Thomas Sewell <Thomas.Sewell@nicta.com.au> |
Tweak detection of complex loops.
|
#
aafda392 |
|
19-Oct-2016 |
Thomas Sewell <Thomas.Sewell@nicta.com.au> |
Get function limit bounds working. Resolution: - the previous hack for general splittable points was restored. - the loop bound function limit code was rewritten to not require this anyway.
|
#
d6810c5a |
|
18-Oct-2016 |
Thomas Sewell <Thomas.Sewell@nicta.com.au> |
Adjust approach to splittables. Generate splittable information lazily and store in cached_analysis of problem. Also check for complex loops at a slightly different point. Also replace an experimental better split point detector in logic with another experimental one which also doesn't work perfectly yet.
|
#
651e3d0e |
|
04-Sep-2016 |
Thomas Sewell <Thomas.Sewell@nicta.com.au> |
Search performance improvements. Tweaking now, less tracing, more caching, more caution in using the necessary linear sequence alignment, and a cache to avoid repeatedly testing similar weakly aligned splits.
|
#
bd491304 |
|
31-Aug-2016 |
Thomas Sewell <Thomas.Sewell@nicta.com.au> |
Tweak handling of reachability. Move reachability cache to problem (from rep_graph), use in check to insist on discovering (0) loop bounds slightly less often.
|
#
892992c4 |
|
19-Aug-2016 |
Thomas Sewell <Thomas.Sewell@nicta.com.au> |
Initial switch-optimisation implementation. Partly working. Has detection for switch-like problems that can probably be best addressed with an initial case split. New search feature discovers matching path pairs from within the case split set. Hook for building proofs based on this not currently working.
|
#
32f1e6f4 |
|
11-Aug-2016 |
Thomas Sewell <Thomas.Sewell@nicta.com.au> |
Support dmb instruction and an accumulator. For unrolled loops, we may need an accumulator where a value is incremented and trimmed to 8-bits repeatedly. Bleh.
|
#
dde55fc0 |
|
09-Aug-2016 |
Thomas Sewell <Thomas.Sewell@nicta.com.au> |
More support for inline scripts.
|
#
16d011ac |
|
02-Aug-2016 |
Thomas Sewell <Thomas.Sewell@nicta.com.au> |
Activate inst_logic for seL4-example, fixups.
|
#
0a038961 |
|
01-Aug-2016 |
Thomas Sewell <Thomas.Sewell@nicta.com.au> |
Minor adjustments.
|
#
351e0930 |
|
19-Jul-2016 |
Felix Kam <felix.kam@nicta.com.au> |
bugfixes
|
#
ba0f5723 |
|
21-Jun-2016 |
Thomas Sewell <Thomas.Sewell@nicta.com.au> |
Respect 'do_analysis = False' in inline_at_point.
|
#
0c379e1e |
|
20-Jun-2016 |
Thomas Sewell <Thomas.Sewell@nicta.com.au> |
Faster problem (re-)construction in trace_refute. I suspect that a lot of time is wasted in loop_bounds on this.
|
#
04bb5423 |
|
19-Apr-2016 |
Thomas Sewell <thomas.sewell@nicta.com.au> |
Summarised version of graph output. Avoids long strings of Basics and assertions (Conds with Err output), making the overall graph quite readable.
|
#
0c1f1fe1 |
|
17-Dec-2015 |
Thomas Sewell <Thomas.Sewell@nicta.com.au> |
First steps toward floating point support. This gets mostly just passed through to the relevant SMT logics. Since they're still transitionally supported it's not clear whether to change the QF_ABV logic or not.
|
#
7b32280d |
|
26-Nov-2015 |
Felix Kam <felix.kam@nicta.com.au> |
minor edits
|
#
e741b210 |
|
13-Oct-2015 |
Thomas Sewell <Thomas.Sewell@nicta.com.au> |
Performance tweaks.
|
#
99457acd |
|
12-Oct-2015 |
Thomas Sewell <Thomas.Sewell@nicta.com.au> |
Bugfix.
|
#
2f229627 |
|
12-Oct-2015 |
Thomas Sewell <Thomas.Sewell@nicta.com.au> |
Defer some analysis during inline phase. The WCET analysis is keeping us waiting on this a lot.
|
#
fc0cf398 |
|
11-Oct-2015 |
Thomas Sewell <Thomas.Sewell@nicta.com.au> |
Port inline workaround from WCET branch. This leads to less Aborts and more results. It's a bit of a hack though, but then so was the hardcoded 'C' tag.
|
#
a416eb7f |
|
01-Oct-2015 |
Thomas Sewell <Thomas.Sewell@nicta.com.au> |
More loop search bugfixes.
|
#
fbce479b |
|
29-Aug-2015 |
Thomas Sewell <Thomas.Sewell@nicta.com.au> |
Make sure report-mode produces output in each case.
|
#
3d6869e3 |
|
24-Aug-2015 |
Thomas Sewell <Thomas.Sewell@nicta.com.au> |
Import of graph-refine tool.
|