summaryrefslogtreecommitdiff
path: root/src/mir/from_hir.hpp
AgeCommit message (Expand)AuthorFilesLines
2019-06-02MIR - Refactor LValue to reduce size and linked-list-ness (seems to have had ...John Hodge1-9/+6
2019-04-28MIR Gen - Support `match` in a `match` guard armJohn Hodge1-3/+3
2017-11-26HIR/MIR - Error checking for assigning into ! (as opposed to from !)John Hodge1-1/+2
2017-11-21MIR Gen - Fix use-after-move when partially moved in one arm and optionally m...John Hodge1-0/+1
2017-07-06MIR Gen - Reset drop flags on entry to a loop (instead of after use)John Hodge1-0/+3
2017-07-02MIR Gen - Make mutating state (other than the if condition) within a match gu...John Hodge1-0/+6
2017-07-02MIR Gen - Track states for arguments (and directly use arguments where possible)John Hodge1-4/+11
2017-06-23MIR Gen - Disable argument replacement until argument states are tracked fullyJohn Hodge1-0/+3
2017-06-22MIR Gen - Remove arguments that are just assigned from argumentsJohn Hodge1-0/+5
2017-06-16MIR - Unify temporaries and variablesJohn Hodge1-24/+17
2017-05-14Merge branch 'master' of https://github.com/thepowersgang/mrustcJohn Hodge (bugs)1-5/+56
2017-05-08MIR Gen - Fix incorrect scoping of temporaries in expression part of a blockJohn Hodge1-0/+7
2017-04-28MIR Gen - Reset all drop flags to defaults after useJohn Hodge1-0/+1
2017-04-22MIR Gen - Common lvalue for ifJohn Hodge1-0/+17
2017-04-22MIR - Add ScopeEnd statement to indicate where a value will no longer be usedJohn Hodge1-0/+2
2017-04-16MIR Gen - Refactor value tracking to split move-out and destructureJohn Hodge1-3/+21
2017-03-18MIR Gen - Fix scoping of values in let bindingsJohn Hodge1-3/+3
2017-03-18MIR Gen - Extend lifetimes of variables borrowed in let bindingsJohn Hodge1-0/+5
2017-03-04Many many changes to allow compiling in visual studio (Community 2015)John Hodge (bugs)1-1/+1
2017-02-25MIR Gen - Use MIR::Param (and associated changes)John Hodge1-0/+2
2017-02-04MIR Gen - Tweak to handle `foo(break)`John Hodge1-1/+1
2017-01-21MIR Gen - Fix drop generationJohn Hodge1-3/+7
2017-01-21MIR Gen - Partial value statesJohn Hodge1-4/+6
2017-01-20MIR - Merging of drop flagsJohn Hodge1-2/+3
2017-01-20MIR - Drop flags (incomplete, doesn't pass validation)John Hodge1-27/+30
2017-01-02MIR - Remove Deref from inputs to RValue::DstMeta/DstPtrJohn Hodge1-0/+3
2016-12-29MIR - Inline assembly in MIRJohn Hodge1-0/+2
2016-12-28MIR Gen - Track exit states of loopsJohn Hodge1-1/+3
2016-12-28MIR Gen - Spaces removed, misc thinkingJohn Hodge1-9/+10
2016-12-28MIR Gen - Clean up split arm logic a little by using std::mapJohn Hodge1-5/+23
2016-12-27MIR Gen - Better handling of split scopes (optional init)John Hodge1-2/+2
2016-12-24No more tears!ubsan1-27/+27
2016-12-23MIR Gen - Track split state for temporaries (incomplete)John Hodge1-2/+5
2016-12-18MIR Gen - Prevent returned values from being droppedJohn Hodge1-0/+4
2016-12-18MIR Gen - Ensure that function return values are droppedJohn Hodge1-0/+3
2016-11-05MIR Gen - Drop InnerMoved early for cleaner logicJohn Hodge1-4/+8
2016-10-08HIR+MIR - Correct handling of diverging loopsJohn Hodge1-1/+1
2016-10-07MIR Gen - Destructure array patternsJohn Hodge1-0/+1
2016-09-24MIR Gen - Support zero-arm matches - Since they can never be reached, emit a ...John Hodge1-0/+1
2016-09-18HIR - Rework to include a node for in/box (for better type inferrence)John Hodge1-0/+1
2016-09-07MIR Gen - Hacky shallow drop support (doesn't support being conditional)John Hodge1-0/+5
2016-09-07MIR Gen - Cleaner Box support, start on move-out structureJohn Hodge1-0/+5
2016-09-06MIR Gen - Rough support for BoxJohn Hodge1-0/+3
2016-08-24MIR Gen - Use argument typesJohn Hodge1-1/+2
2016-08-24MIR Gen - Move variable states to function state (instead of scope)John Hodge1-4/+2
2016-08-24MIR Gen - Further span propagationJohn Hodge1-5/+6
2016-08-23MIR Gen - More span propagationJohn Hodge1-1/+1
2016-08-23MIR Gen - Span information in assign/dropJohn Hodge1-5/+19
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-0/+2