| Commit message (Collapse) | Author | Age | Files | Lines | ||
|---|---|---|---|---|---|---|
| ... | ||||||
| * | First cut function ptr type | Cliff Click | 2025-01-15 | 5 | -5/+144 | |
| | | ||||||
| * | Initial push | Cliff Click | 2025-01-15 | 93 | -0/+14891 | |
| | | ||||||
| * | Missing xScopes push | Cliff Click | 2024-11-23 | 1 | -0/+2 | |
| | | ||||||
| * | Replace loop finding with official algo | Cliff Click | 2024-11-23 | 10 | -104/+85 | |
| | | | | | Remove old fixLoops, walkInfinite. | |||||
| * | Fix transpiler / ignore not understood test results | Cliff Click | 2024-11-23 | 2 | -3/+3 | |
| | | ||||||
| * | Assignment bugs | Cliff Click | 2024-11-23 | 7 | -116/+199 | |
| | | | | | Restructure parsing declarations from assignments; allow assignments almost anywhere as a normal expression. | |||||
| * | Stronger requirement on new type name | Cliff Click | 2024-11-23 | 2 | -12/+14 | |
| | | ||||||
| * | Straighten out nested forward ref type errors | Cliff Click | 2024-11-23 | 2 | -17/+33 | |
| | | ||||||
| * | Error on ambiguous -- parse | Cliff Click | 2024-11-23 | 3 | -8/+6 | |
| | | | | | `i -- i` now errors instead of (sometimes) parsing as `i - -i` | |||||
| * | Fix 2 small bugs | Cliff Click | 2024-11-23 | 3 | -2/+29 | |
| | | ||||||
| * | Update README.md | Cliff Click | 2024-11-23 | 1 | -2/+2 | |
| | | ||||||
| * | Fix spacing readme | Cliff Click | 2024-11-23 | 1 | -6/+8 | |
| | | ||||||
| * | Update README.md | Cliff Click | 2024-11-23 | 1 | -6/+7 | |
| | | ||||||
| * | More README | Cliff Click | 2024-11-23 | 1 | -6/+16 | |
| | | ||||||
| * | more readme | Cliff Click | 2024-11-23 | 1 | -8/+4 | |
| | | ||||||
| * | Top level readme | Cliff Click | 2024-11-23 | 1 | -4/+3 | |
| | | ||||||
| * | Allow oper-assign, += -= etc | Cliff Click | 2024-11-23 | 3 | -21/+64 | |
| | | ||||||
| * | Bug fix loop depth on infinite split-tail loops | Cliff Click | 2024-11-23 | 3 | -73/+9 | |
| | | ||||||
| * | Minor inf loop fix | Cliff Click | 2024-11-23 | 3 | -15/+6 | |
| | | ||||||
| * | Final? pass of finals | Cliff Click | 2024-11-23 | 26 | -215/+426 | |
| | | | | | | | | Add a least-upper-bound to set Phis to their respective Top while preserving final fields. Requires a ReadOnly node to "cast-away-writable". Series of isFinal/makeRO in all Types. Changes tests to match r/w intent. | |||||
| * | comments | Cliff Click | 2024-11-23 | 2 | -2/+3 | |
| | | ||||||
| * | Allow pre-inc/dec on variables | Cliff Click | 2024-11-23 | 8 | -32/+63 | |
| | | ||||||
| * | Allow C-style for loops | Cliff Click | 2024-11-23 | 4 | -47/+199 | |
| | | ||||||
| * | Much more robust guarded expression upcasting | Cliff Click | 2024-11-23 | 17 | -122/+187 | |
| | | | | | | Region does not print id, making all test cases much more stable (and slightly weaker). NotNode gets more precise compute | |||||
| * | Change field mutability | Cliff Click | 2024-11-23 | 19 | -95/+365 | |
| | | | | | | | | | Fields & locals with an initializer are immutable by default; those without are mutable. Make mutable with `!`. Fields are always mutable in a constructor. Add a trinary `pred ? then : else` syntax. SubNode retains as much precision as AddNode. Sharpen some asserts and error cases. Limit Load node cloning if the ptr is not obvious. | |||||
| * | some docs | Cliff Click | 2024-11-23 | 2 | -3/+24 | |
| | | ||||||
| * | var/val | Cliff Click | 2024-11-23 | 5 | -30/+94 | |
| | | ||||||
| * | Support post ++ on arrays and structs | Cliff Click | 2024-11-23 | 3 | -14/+67 | |
| | | ||||||
| * | Missed one | Cliff Click | 2024-11-23 | 1 | -1/+1 | |
| | | ||||||
| * | Allow post ++, -- | Cliff Click | 2024-11-23 | 34 | -158/+194 | |
| | | | | | | | | | | | Fix eval auto-string result. Fix tests hacked because of this. Turn on BrainFuck in ch15,16,17, also disabled because of this. Use new features in BrainFuck. Fix bug not lifting forward refs; add a toString to Vars. Fix some missing addDeps. Remove large complex not-productive peep. Upcast after "while" tests. Improves a bunch of tests. Remove dead getBlockStart. | |||||
| * | Some ideas on functions | Cliff Click | 2024-11-23 | 1 | -0/+59 | |
| | | ||||||
| * | Initial push | Cliff Click | 2024-11-23 | 93 | -1/+13878 | |
| | | ||||||
| * | transpile-tests: improve parsing of evaluator assertions and update RustPrinter | Robert Obkircher | 2024-11-16 | 4 | -30/+65 | |
| | | ||||||
| * | extra description to ch9 gvn graph | Tamas Hadhazy | 2024-11-01 | 1 | -0/+3 | |
| | | ||||||
| * | Link to linear history and tag chapters | Thalia Archibald | 2024-10-23 | 18 | -2/+44 | |
| | | ||||||
| * | fix typo ch6 | Tamas Hadhazy | 2024-10-23 | 1 | -1/+1 | |
| | | ||||||
| * | Fixes in GCM | Cliff Click | 2024-10-23 | 2 | -6/+7 | |
| | | | | | Several incorrect tests meant not late-scheduling many nodes, which instead lived with the sub-optimal early schedule | |||||
| * | Minor README comment changes | Cliff Click | 2024-10-21 | 2 | -2/+7 | |
| | | ||||||
| * | Minor progress fix | Cliff Click | 2024-10-21 | 1 | -1/+1 | |
| | | ||||||
| * | minor README fixs | Cliff Click | 2024-10-21 | 1 | -5/+5 | |
| | | ||||||
| * | Turn on continuous random fuzzer testing | Cliff Click | 2024-10-21 | 1 | -1/+1 | |
| | | ||||||
| * | ch 16 README | Cliff Click | 2024-10-21 | 2 | -0/+133 | |
| | | ||||||
| * | review comment fixes | Cliff Click | 2024-10-21 | 5 | -91/+110 | |
| | | | | | | TODO for GraphViz Remove dead code | |||||
| * | Remove unneeded cutout test | Cliff Click | 2024-10-21 | 2 | -4/+3 | |
| | | ||||||
| * | Parsing dead field expressions | Cliff Click | 2024-10-21 | 9 | -39/+49 | |
| | | | | | | | | `null` is a constant; "if(null)" will collapse. Phi w/mem keep mem even when dead. Load handles dead mem. static class Var | |||||
| * | Bunch of fuzzer fixes | Cliff Click | 2024-10-21 | 11 | -19/+69 | |
| | | | | | | | Mostly minor progress. Lost? shl/shr/sar high-type fixes. Turn off some printing crept back in | |||||
| * | fuzzer bug fixes | Cliff Click | 2024-10-21 | 15 | -35/+163 | |
| | | | | | | | | ignore temps made during constructing and/or/xor honor TypeInteger.TOP; TypeInteger.nonZero works with zero NotNode keeps precision. Scope lazy phis of narrow ints auto-widen | |||||
| * | Missing init-store-after-new opt | Cliff Click | 2024-10-21 | 4 | -16/+40 | |
| | | ||||||
| * | Constructors working | Cliff Click | 2024-10-21 | 32 | -458/+826 | |
| | | | | | | | | | | Replace ArrayList with Ary, because no "setLength" in ArrayList and "size" is private so I cannot even override. Replace Utils.find with Ary.find. Split Scope into Scope and ScopeMin (bad name). Memory edges go in ScopeMin, and it is pointed at from Scope.mem(). This lets us lazily add memory edges without interleaving them through other non-memory aliases, which was breaking all sorts of parser invariants. ScopeMin aliases are added lazily. Scope & ScopeMin now use an array-of-Var structs instead of a struct-of-arrays. | |||||
| * | Constructors | Cliff Click | 2024-10-21 | 12 | -138/+279 | |
| | | | | | | | | | Missing arrays yet. Allow constructor syntax in 2 parts; the type description and at the New. must-init fields (final and not-null) have to be initialized in at least one of the two places; finals must be initialized exactly once. Any code is allowed in the constructors. | |||||
