- Oct 02, 2020
-
-
Matthew Fernandez authored
Complete with a bonus macOS bug. JFC does anyone QA this shit?
-
Matthew Fernandez authored
Once we start drifting this way, it's more natural to let the counters drift for the entire duration, only becoming precise at the end. Hopefully this should give us reasonable progress output while still accelerating performance.
-
- Oct 01, 2020
-
-
Matthew Fernandez authored
This reverts commit 4315c307.
-
- Sep 29, 2020
-
-
Matthew Fernandez authored
-
- Sep 27, 2020
-
-
Matthew Fernandez authored
Switching to relaxed atomics actually resulted in a performance *degradation*. This is an alternate attempt at performance optimisation where we remove the use of atomics in the hot path of set_insert(). A side effect of this change is that we lose accuracy in reported set occupancy. Both the progress output and the decision on when to expand the seen set are now approximate. However, the final summary of seen states is still precise. Github: related to #117 "thread-local set size"
-
Matthew Fernandez authored
-
- Sep 24, 2020
-
-
Matthew Fernandez authored
Github: related to #203 "murphi2c produces broken print code"
-
Matthew Fernandez authored
-
Matthew Fernandez authored
Github: closes #203 "murphi2c produces broken print code"
-
Matthew Fernandez authored
This is a breaking behaviour, but it will make resolving #203 simpler. Github: related to #203 "murphi2c produces broken print code"
-
Matthew Fernandez authored
Not yet used, but we will need these in order to emit bounds in a couple of places. Github: related to #203 "murphi2c produces broken print code"
-
- Sep 20, 2020
-
-
Matthew Fernandez authored
When emitting a print statement for a Murphi put statement of a string, the string was incorrectly escaped. The value in a Put node in this case is already naturally escaped, so needed no further escaping.
-
Matthew Fernandez authored
This seems to have been broken more or less forever, but apparently C compiler's accepted this as a non-prototyped function. This was exposed as an error by a recent transition to Apple clang version 12.0.0 which defaults to C99, requiring stricter rules around pre-prototyping functions. We should probably set a C standard explicitly during compilation in testing.
-
Matthew Fernandez authored
-
Matthew Fernandez authored
The aim here is eke out a little extra performance from set_insert(). Thanks to a blog post from Travis Downs [0] for the inspiration here. [0]: https://travisdowns.github.io/blog/2020/07/06/concurrency-costs.html
-
- Sep 14, 2020
-
-
Matthew Fernandez authored
-
- Sep 11, 2020
-
-
Matthew Fernandez authored
-
Matthew Fernandez authored
To avoid a dependency on Ninja, as it is not installed by default in Travis and installing it takes valuable time.
-
- Sep 07, 2020
-
-
Matthew Fernandez authored
-
- Sep 06, 2020
-
-
Matthew Fernandez authored
Github: closes #202 "remove section ordering restriction"
-
Matthew Fernandez authored
This opens the way to things like a constant or range limit that uses a previously defined function. Though this is not yet supported. Github: related to #202 "remove section ordering restriction"
-
Matthew Fernandez authored
-
Matthew Fernandez authored
Github: related to #202 "remove section ordering restriction"
-
Matthew Fernandez authored
Github: related to #202 "remove section ordering restriction"
-
Matthew Fernandez authored
Github: related to #202 "remove section ordering restriction"
-
Matthew Fernandez authored
Github: related to #202 "remove section ordering restriction"
-
Matthew Fernandez authored
Note that this has the following user-visible effects: * White space in C code produced by murphi2c has changed slightly; and * XML produced by murphi2xml no longer nests declarations, functions and rules under their own sections under <model>, but instead just directly under <model>. Github: related to #202 "remove section ordering restriction" -
Matthew Fernandez authored
The XML output is now also considered legal when declarations, functions and rules appear directly as children of the 'model' element. That is, we no longer require them to be nested under 'decls', 'functions', 'rules', respectively Github: related to #202 "remove section ordering restriction"
-
Matthew Fernandez authored
Github: related to #202 "remove section ordering restriction"
-
Matthew Fernandez authored
After some upcoming changes to relax section ordering restrictions, this kind of node reordering will have some undesirable side effects. In order to pre-empt this, we take advantage of the fact that fields are only being reordered to get more optimal offsets. Since the offset of state variables is stored within them and not calculated dynamically, we can simply update their (explicit) offsets, and leave their ordering as-is, neatly side stepping this upcoming issue. Github: related to #202 "remove section ordering restriction"
-
Matthew Fernandez authored
-
Matthew Fernandez authored
Github: related to #202 "remove section ordering restriction"
-
Matthew Fernandez authored
Github: related to #202 "remove section ordering restriction"
-
Matthew Fernandez authored
While this is currently rejected, we may consider this legal in future. Github: related to #202 "remove section ordering restriction"
-
- Sep 05, 2020
-
-
Matthew Fernandez authored
-
Matthew Fernandez authored
The idea is to move to a less error prone visitor pattern. By requiring visitation dispatch to be implemented on classes, we ensure a new AST node cannot be introduced without handling its visitation support.
-
Matthew Fernandez authored
-
- Aug 22, 2020
-
-
Matthew Fernandez authored
This is already available in tempfile.
-
- Aug 21, 2020
-
-
Matthew Fernandez authored
-
- Aug 09, 2020
-
-
Matthew Fernandez authored
It seems armel [0], armhf [1] and mipsel [2] now use this to back gettimeofday(). [0]: https://buildd.debian.org/status/fetch.php?pkg=rumur&arch=armel&ver=2020.07.28-1&stamp=1596373663&raw=0 [1]: https://buildd.debian.org/status/fetch.php?pkg=rumur&arch=armhf&ver=2020.07.28-1&stamp=1596373870&raw=0 [2]: https://buildd.debian.org/status/fetch.php?pkg=rumur&arch=mipsel&ver=2020.07.28-1&stamp=1596378655&raw=0
-