summaryrefslogtreecommitdiff
path: root/src/mir
AgeCommit message (Collapse)AuthorFilesLines
2016-08-21MIR Gen - Mark values used in calls as movedJohn Hodge2-3/+5
2016-08-21MIR Gen - Include Copy checkingJohn Hodge3-19/+138
2016-08-21MIR Gen - Move `MirBuilder` class to its own fileJohn Hodge2-652/+663
2016-08-21MIR Dump - Clean up outputJohn Hodge1-6/+24
2016-08-21MIR Gen - Rework to have proper drop scopes (INCOMPLETE)John Hodge3-133/+587
2016-08-20MIR Gen - Draft drop insertionJohn Hodge3-52/+376
2016-08-20MIR Gen - Emit trailing return valueJohn Hodge1-0/+10
2016-08-20MIR Gen - Fix codegen issue with use of moved LValueJohn Hodge2-6/+35
2016-08-20MIR Gen - Add loggingJohn Hodge3-0/+50
2016-08-20MIR Dump - Rough dump pass, exposes junk data somewhereJohn Hodge3-2/+385
2016-08-20MIR Gen Match - Handle char patterns in simpleJohn Hodge1-2/+24
2016-08-19Patterns - Support tuples with .. (fully)John Hodge2-2/+3
2016-08-18All - Support tuple patterns with .. at the start/end - TODO: Support in the ↵John Hodge2-12/+2
middle
2016-08-17MIR Gen - Planning for inserting dropsJohn Hodge1-1/+9
2016-08-17MIR Gen - Some sanity checks on casts (incomplete)John Hodge1-6/+93
2016-08-17HIR - Correct closure desugaring (leads to two equivalent types)John Hodge1-1/+32
2016-08-14HIR - Move borrow ops to their own node typeJohn Hodge1-6/+12
2016-08-14HIR Typecheck - Move _Unsize back to operating on lvalues (not on &-ptrs)John Hodge1-10/+3
2016-08-14MIR Gen - Defensive checks on _IndexJohn Hodge1-4/+17
2016-08-14MIR Gen - Defensive programming around operatorsJohn Hodge1-15/+73
2016-08-14MIR Gen Match - Enum struct patterns in _SimpleJohn Hodge1-1/+18
2016-08-14HIR Expand Closures - Store local binding typesJohn Hodge1-1/+2
2016-08-14MIR Gen Match - Fixes for a small edge caseJohn Hodge1-0/+8
2016-08-14HIR Gen Match - Handle common enum patternsJohn Hodge1-6/+38
2016-08-13MIR Gen Match - Rewrite completeJohn Hodge1-35/+52
2016-08-13MIR Gen Match - Further fixing for various quirksJohn Hodge1-30/+48
2016-08-13MIR Gen Match - Rewrite handling of DecisionTree for correctnessJohn Hodge1-91/+198
- Pattern entries record what field they were from - Generation skips if the current test is not for that field
2016-08-13MIR Gen - Support values overlapping with rangesJohn Hodge3-3/+101
2016-08-13MIR Gen Match - Clean up handling of rangesJohn Hodge1-3/+12
2016-08-13MIR Gen Match - Char patternsJohn Hodge1-17/+75
2016-08-13MIR Gen - Handle unsizing to slices (with hack for libcore's FixedSizeArray ↵John Hodge1-1/+25
impl)
2016-08-13MIR Gen - Handle loops that divergeJohn Hodge1-1/+13
2016-08-13MIR Gen - Destructure enum struct patternsJohn Hodge1-1/+8
2016-08-13MIR Gen Match - EnumStruct rule generationJohn Hodge1-3/+30
2016-08-13MIR Gen Match - Handle signed integers in _SimpleJohn Hodge1-0/+22
2016-08-13MIR Gen - Unify and sanity-check binary operators (including assignments)John Hodge2-79/+116
2016-08-13MIR Gen - Correct bounds for assignment operator overloadsJohn Hodge1-18/+60
2016-08-13MIR Gen - Better error when types mismatch in assignmentJohn Hodge1-6/+8
2016-08-13MIR Gen Match - &str in _DecisionTree and values in _SimpleJohn Hodge1-10/+87
2016-08-13MIR Gen Match - FiddlingJohn Hodge1-0/+25
2016-08-13MIR Gen Match - Initial population for &str supportJohn Hodge1-14/+98
2016-08-13MIR Gen - Destructure struct patternsJohn Hodge1-1/+9
2016-08-13MIR Gen Match - Handle ValueRange in DecisionTreeJohn Hodge1-1/+49
2016-08-13MIR Gen Match - Handle constants in patternsJohn Hodge1-10/+24
2016-08-12HIR Patterns - Support binding Value::Named to targetsJohn Hodge1-0/+2
2016-08-12MIR Gen Match - Value rangesJohn Hodge1-0/+40
2016-08-12MIR Gen Match - (minor) Use BUG instead of throw within TU_MATCHJohn Hodge1-4/+4
2016-08-12MIR Gen Match - Rewrite simple match code to use pre-parsed pattern rulesJohn Hodge1-73/+187
2016-08-12MIR Gen Match - Unify match arm codegen (patterns separate)John Hodge3-116/+124
2016-08-12MIR Gen - Handle false branch of if divergingJohn Hodge1-2/+5