summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Updates READMECliff Click2024-09-073-22/+31
| | | | More on Types, pushed out Arrays one more chapter
* Cleanup comments to match designCliff Click2024-09-072-22/+26
| | | | Went through several iterations, one where a null _obj was allowed, but settled on using TypeStruct.BOT instead.
* And-masking sharpens narrowed intsCliff Click2024-09-073-3/+38
| | | | Needed to recognize narrowed expressions
* minus is sane for high rangesCliff Click2024-09-071-1/+3
|
* Add READMECliff Click2024-09-071-1/+65
|
* All the remaining narrow typesCliff Click2024-09-076-34/+135
| | | | Narrow f32, requires a Round node.
* Backport empty statement fixCliff Click2024-09-0717-228/+351
| | | | | Split Ch13 tests from Chapter12Test.java Handle forward refs never defined.
* Update fuzzer for chapter 14. (#107)XmiliaH2024-09-072-51/+138
| | | | | * Update fuzzer for chapter 14. * Add and operator to evaluator
* Shift operators; sign extensionCliff Click2024-09-077-8/+228
|
* handle all unsigned int variantsCliff Click2024-09-078-19/+249
| | | | and-masking and typenames for all!
* Correct constant fold with ranges for most primitivesCliff Click2024-09-079-14/+17
|
* Add TypeInteger rangesCliff Click2024-09-078-70/+119
|
* #98 Chapter 14 arraysdibyendumajumdar2024-09-074-0/+26
|
* #98 Chapter 14 arraysdibyendumajumdar2024-09-0776-0/+11080
|
* Fix chapter 1 link and mis-spelling (#102)Dibyendu Majumdar2024-09-031-1/+1
|
* Update fuzzer for chapter 13. (#105)XmiliaH2024-09-032-50/+114
|
* Update fuzzer for chapter 12. (#104)XmiliaH2024-08-182-37/+73
|
* Some updates to Chapter 3 docs based on feedback by Yarden (#100)Dibyendu Majumdar2024-08-161-12/+22
| | | | | * Some updates to Chapter 3 docs based on feedback by Yarden * Apply feedback from Cliff
* Scope docs (#99)Cliff Click2024-08-153-28/+48
| | | | | * More scope docs * readme updates
* #92 Update readmesdibyendumajumdar2024-08-063-56/+9
|
* Fix chapter12 grammarThalia Archibald2024-08-062-130/+1
|
* Update README.mdCliff Click2024-08-061-2/+22
|
* More error cases, error checkingCliff Click2024-08-066-11/+74
| | | | disallow e.g. "struct x { int i; }; x = new x; x.i=3.14;"
* Fix graph draw with field namesCliff Click2024-08-064-7/+27
| | | | Allow co-recursive defs
* Ref types workingCliff Click2024-08-0625-149/+273
| | | | | | | | | GCM uses a breadth-first pass for schedule-late instead of a post-order; the post-order walk depends on StoreNodes being pinned, which is true in C2 but not Simple. Move GCM call out of IterPeeps. Struct field init is "makeInit()" not integer zero. Rename Type._print to print. Store,Load prints include field name.
* chapter 13 from 12, splitting out ref fields in structsdibyendumajumdar2024-08-063-2/+132
|
* Copy chapter12 -> chapter13Thalia Archibald2024-08-0675-0/+10930
|
* Unify type parsingCliff Click2024-08-051-48/+22
|
* Update Ch12 readmeCliff Click2024-08-051-1/+45
|
* Fuzzer nit picksCliff Click2024-08-053-8/+4
|
* auto-widen on assignCliff Click2024-08-052-125/+11
|
* missing null checkCliff Click2024-08-052-2/+121
|
* A series of minor fuzzer bugsCliff Click2024-08-055-27/+28
|
* Better filter on Load cloneCliff Click2024-08-052-6/+20
|
* Float bugsCliff Click2024-08-0520-42/+113
| | | | | | | | Fix bug infinite loop finding. Fix inf loops before printing graph. Missing float unary negate . Generator makes float exprs Fix missing dep in LCA finding
* Clean up floatsCliff Click2024-08-057-53/+48
| | | | Better pattern in the compiler.
* a little FP cleanupCliff Click2024-08-052-7/+6
|
* more fp bugfixesCliff Click2024-08-054-6/+5
|
* minor FP bugsCliff Click2024-08-056-17/+23
| | | | | Fix bug AddF+0, SubF+0 Fix bug flipping EQ sides.
* Add Float supportCliff Click2024-08-0513-47/+463
| | | | Parsing float constants; float +-*/, auto-widening float expressions.
* minimal empty test so "make" doesnt complainCliff Click2024-08-051-0/+11
|
* #92 chapter 12 start from chapter 11dibyendumajumdar2024-08-0569-0/+10400
|
* TODO comments (#94)Cliff Click2024-08-044-4/+12
|
* Update README.md (#93)Cliff Click2024-08-041-2/+16
|
* Fix grammar and forward-port minor changes (#91)Thalia Archibald2024-07-0136-159/+132
| | | | | | | | | | | | | | | * Backport test exception handling to chapter 1 * Add unary ! to chapter 10 and 11 grammars * Lex { } ! as punctuation * Forward-port format whitespace * Forward-port test organization * Forward-port replace build-graphs.sh with Makefile * Add chapter title to chapter 11
* #85 #80 missed details (#90)Dibyendu Majumdar2024-06-301-0/+29
|
* #80 #85 apply bug fixes from chapter10 (#89)Dibyendu Majumdar2024-06-3021-173/+210
| | | | | | | | | | | | | * #80 #85 apply bug fixes from chapter10 * #85 #80 more detail regarding anti-dependency * Remove Util.eq Was enforced interning of strings, not needed here. --------- Co-authored-by: Cliff Click <cliffc@acm.org>
* Cliff's GCM implementation for chapter 11 (#88)Dibyendu Majumdar2024-06-3087-3/+13928
|
* Backport tests (#87)Thalia Archibald2024-06-2190-3315/+3892
| | | | | | | | | | | | | | | | | * Fix unexpected number parse errors * Add chapter titles * Split test files by chapter * Backport rename Fuzzer08Test to FuzzerWrap * Replace graph build scripts with Makefile * Backport Chapter05Test.testRegress1 * Backport require space after 'return' * Backport check EOF after return statement
* Format whitespace (#86)Thalia Archibald2024-06-21273-4025/+4018
| | | | | | | | | * Trim trailing whitespace * Ensure final new lines * Convert line endings from CRLF to LF * Replace tabs with spaces