summaryrefslogtreecommitdiff
path: root/src/mir
AgeCommit message (Collapse)AuthorFilesLines
2017-05-26HIR Typecheck - Handle struct syntax for unit structsJohn Hodge1-0/+8
2017-05-15MIR Gen - Handle drop_in_place being a lang itemJohn Hodge1-4/+17
2017-05-15MIR Gen - Don't emit drop for union valuesJohn Hodge1-0/+7
2017-05-15MIR - Handle Union field accessJohn Hodge2-56/+97
2017-05-14Visual Studio compile fixesJohn Hodge (bugs)3-20/+5
2017-05-14Merge branch 'master' of https://github.com/thepowersgang/mrustcJohn Hodge (bugs)1-1/+1
2017-05-14Merge branch 'master' of https://github.com/thepowersgang/mrustcJohn Hodge (bugs)15-2651/+5603
# Conflicts: # src/common.hpp # src/hir/deserialise.cpp # src/hir_typeck/static.cpp # src/mir/from_hir.cpp # src/mir/from_hir.hpp # src/mir/from_hir_match.cpp # src/mir/helpers.hpp # src/mir/mir_builder.cpp
2017-05-13MIR Optimise - Fix incorrect optimisation of function returnJohn Hodge1-1/+1
2017-05-12MIR Check - (minor) Note to check for leaks on assignmentJohn Hodge1-0/+3
2017-05-12MIR From HIR - Fix scoping of temporaries in loopsJohn Hodge1-1/+3
2017-05-12MIR - Fixed optimisation and scopring issuesJohn Hodge6-74/+155
2017-05-08MIR Gen - Fix incorrect scoping of temporaries in expression part of a blockJohn Hodge3-36/+182
2017-05-07HIR - Replace m_yeilds_final_value with a nodeJohn Hodge2-64/+81
2017-05-06MIR Gen - Fix incorrect scoping of for loop valuesJohn Hodge1-0/+4
2017-05-05MIR Gen - HACK: Don't check for Unsize implJohn Hodge1-2/+3
2017-04-30MIR Gen Match - Fix Grouped match generatorJohn Hodge1-101/+133
2017-04-29Add a custom intrinsic to reduce cost of [T]::lenJohn Hodge1-6/+8
2017-04-29MIR Optimise - Disable some dumpingJohn Hodge1-2/+2
2017-04-28MIR Gen - Reset all drop flags to defaults after useJohn Hodge2-1/+16
2017-04-28MIR Check Full - Print the cause of invalidityJohn Hodge3-2/+142
2017-04-28MIR Helpers - Move visit_mir_lvalue* to somewhere commonJohn Hodge2-9/+25
2017-04-28MIR Gen - MakeDst moves both valuesJohn Hodge1-1/+1
2017-04-28MIR Helpers - Minor fix to lifetime calculationJohn Hodge1-0/+11
2017-04-28MIR Helpers - Fill bitmap after a read of a borrowed valueJohn Hodge1-0/+8
2017-04-28MIR Optimise - Fix mis-optimisation in const propagationJohn Hodge1-22/+95
2017-04-27MIR Helpers - Refactor lifetime calculations to be less expensiveJohn Hodge1-155/+112
2017-04-25MIR Helpers - Continual fiddling to improve lifetime determining speedJohn Hodge1-11/+36
2017-04-25MIR Helpers - Few tweaks to lifetime enumeration to reduce complexityJohn Hodge1-12/+114
2017-04-24MIR Helpers - Second version of lifetime calculation (buggy)John Hodge1-32/+530
- Can be confused by very complex functions
2017-04-22MIR Helpers - (minor) debug output in variable lifetime calcJohn Hodge1-3/+3
2017-04-22MIR Gen - Common lvalue for ifJohn Hodge6-8/+33
2017-04-22MIR Validate - Don't use ScopeEnd, it's incorrect after optJohn Hodge1-0/+5
2017-04-22MIR Optimise - Unify ScopeEnd statementsJohn Hodge1-1/+26
2017-04-22MIR - Add ScopeEnd statement to indicate where a value will no longer be usedJohn Hodge10-25/+113
2017-04-20MIR Check Full - Mask values based on calculated lifetimesJohn Hodge1-1/+49
2017-04-20MIR Helpers - Improved value lifetime determiningJohn Hodge2-56/+117
2017-04-18MIR Helpers - Expand lifetime detection to handle variablesJohn Hodge1-3/+21
2017-04-17MIR Helpers - Move lifetime calculation to helpers so CheckFull can use itJohn Hodge4-438/+669
2017-04-17MIR Gen - Handle MovedOutJohn Hodge1-5/+67
2017-04-16MIR Gen - Handle move out of unionsJohn Hodge1-36/+69
2017-04-16MIR Gen - Refactor value tracking to split move-out and destructureJohn Hodge2-298/+547
2017-04-16MIR - Print SetDropFlag statementsJohn Hodge1-0/+11
2017-04-16MIR - Fix string printing to escape valuesJohn Hodge1-9/+2
2017-04-13MIR Gen - Do value raising for deref operator overloadsJohn Hodge2-3/+60
2017-04-07MIR Gen - Remove old DT match codeJohn Hodge1-1957/+3
2017-04-07Match - Replace DecisionTree with a sort+group algorithmJohn Hodge3-30/+1410
2017-03-30MIR Gen Match - Disable DTN algorithm due to minor bugJohn Hodge1-3/+38
2017-03-25MIR Gen - Fix a slight bug in borrow promotion, validate during `Lower MIR`John Hodge2-11/+49
2017-03-18MIR Gen - Fix scoping of values in let bindingsJohn Hodge3-31/+77
2017-03-18MIR Gen - Extend lifetimes of variables borrowed in let bindingsJohn Hodge3-20/+69