summaryrefslogtreecommitdiff
path: root/src/mir/from_hir.cpp
AgeCommit message (Collapse)AuthorFilesLines
2016-08-24MIR Gen - Move variable states to function state (instead of scope)John Hodge1-4/+3
2016-08-24MIR Gen - Further span propagationJohn Hodge1-1/+3
2016-08-24MIR Gen - Trait methods in PathValueJohn Hodge1-1/+20
2016-08-23MIR Gen - Emit code for PathValue pointing to a UfcsInherentJohn Hodge1-1/+19
2016-08-23MIR Gen - Span information in assign/dropJohn Hodge1-58/+61
2016-08-23HIR Typecheck - Require span for type_is_copyJohn Hodge1-2/+2
2016-08-23MIR - Add a `Const` entry to the MIR::Constant to refer to a named constantJohn Hodge1-6/+69
2016-08-22HIR Typecheck - Split monomorphise_* into a separate headerJohn Hodge1-1/+1
2016-08-22MIR Gen - Move and drop detection improvedJohn Hodge1-1/+1
2016-08-21MIR Gen - Fix incorrect argument LValuesJohn Hodge1-0/+1
2016-08-21MIR Validate - Stub MIR validation passJohn Hodge1-6/+2
2016-08-21MIR Gen - Mark values used in calls as movedJohn Hodge1-1/+3
2016-08-21MIR Gen - Include Copy checkingJohn Hodge1-13/+31
2016-08-21MIR Gen - Move `MirBuilder` class to its own fileJohn Hodge1-652/+0
2016-08-21MIR Gen - Rework to have proper drop scopes (INCOMPLETE)John Hodge1-75/+496
2016-08-20MIR Gen - Draft drop insertionJohn Hodge1-43/+280
2016-08-20MIR Gen - Emit trailing return valueJohn Hodge1-0/+10
2016-08-20MIR Gen - Fix codegen issue with use of moved LValueJohn Hodge1-3/+3
2016-08-20MIR Gen - Add loggingJohn Hodge1-0/+5
2016-08-19Patterns - Support tuples with .. (fully)John Hodge1-1/+3
2016-08-18All - Support tuple patterns with .. at the start/end - TODO: Support in the ↵John Hodge1-6/+1
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-14HIR Expand Closures - Store local binding typesJohn Hodge1-1/+2
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 - Unify and sanity-check binary operators (including assignments)John Hodge1-78/+115
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 - Destructure struct patternsJohn Hodge1-1/+9
2016-08-12HIR Patterns - Support binding Value::Named to targetsJohn Hodge1-0/+2
2016-08-12MIR Gen Match - Unify match arm codegen (patterns separate)John Hodge1-5/+13
2016-08-12MIR Gen - Handle false branch of if divergingJohn Hodge1-2/+5
2016-08-11MIR - Split match logic into another fileJohn Hodge1-911/+108
2016-08-11MIR - Work on _Unsize, requires changing coercion code to emit Unsize op higherJohn Hodge1-1/+29
2016-08-11MIR - Boolean operators (&& and ||) and char literalsJohn Hodge1-6/+37
2016-08-11MIR - Match handle multi-pattern armsJohn Hodge1-11/+13
2016-08-11HIR - Store path to closure object for MIR generationJohn Hodge1-5/+28
2016-08-11MIR - Match rule default other way too, comment about known codegen failJohn Hodge1-3/+29
2016-08-11MIR - Cleanup of matchJohn Hodge1-24/+33
2016-08-11All - Clang warning fixesJohn Hodge1-34/+85
2016-08-10MIR - Handling of diverging statementsJohn Hodge1-7/+17
2016-08-10MIR - Propagate defaults to child nodes in match tree, reorganise codeJohn Hodge1-200/+355
2016-08-10MIR - Tuple variant codegen present, but brokenJohn Hodge1-2/+58