summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2016-12-30Trans Enumerate - Refactor to remove deep recursionJohn Hodge1-108/+141
2016-12-30Trans - FiddlingJohn Hodge3-11/+15
2016-12-30Trans C - Extra intrinsicsJohn Hodge1-0/+46
2016-12-30Trans C - Move intrinsics to a functionJohn Hodge1-216/+221
2016-12-30Trans Enumerate - EAT in enumsJohn Hodge1-3/+7
2016-12-30HIR - Hack in more specialisation rulesJohn Hodge1-7/+51
2016-12-30Trans C - Little fixesJohn Hodge1-14/+33
2016-12-29MIR Cleanup - Derefence FnMut/Fn for fn pointsJohn Hodge2-2/+6
2016-12-29MIR Optimise - Better cleaning of useless assignmentsJohn Hodge1-24/+102
2016-12-29MIR Opt - Partial dead temporary eliminatonJohn Hodge5-17/+429
2016-12-29Codegen C - (minor) Assert that Call::Value is a functionJohn Hodge1-0/+1
2016-12-29MIR - Inline assembly in MIRJohn Hodge10-6/+105
2016-12-29HIR - asm! nodeJohn Hodge9-1/+104
2016-12-28AST - Add asm! as an AST nodeJohn Hodge7-4/+182
2016-12-28Lex - Fix newline handling (possible off-by-one, but no off-by-heaps)John Hodge1-9/+7
2016-12-28MIR Gen - Handle diverging calls fullyJohn Hodge3-3/+11
2016-12-28MIR Gen - Track exit states of loopsJohn Hodge3-183/+211
2016-12-28MIR Gen - Spaces removed, misc thinkingJohn Hodge4-17/+20
2016-12-28MIR Gen - Clean up split arm logic a little by using std::mapJohn Hodge2-59/+56
2016-12-27MIR - Disable validation so travis build will passJohn Hodge3-5/+7
2016-12-27MIR Gen - Add support for capturing rest of slice patternsJohn Hodge3-12/+62
2016-12-27MIR Check - Prevent excessive memory usageJohn Hodge1-6/+22
2016-12-27MIR Gen - Misc fixesJohn Hodge3-27/+60
2016-12-27MIR Gen - Better handling of split scopes (optional init)John Hodge4-161/+194
2016-12-27HIR Typecheck Expr - Propagate coercions applied to blocks to the inside of ↵John Hodge1-17/+50
the block
2016-12-25Merge branch 'master' of https://github.com/thepowersgang/mrustcJohn Hodge142-9739/+9738
2016-12-25MIR Gen - Misc fixes for drop order quirksJohn Hodge3-2/+12
2016-12-24No more tears!ubsan142-9739/+9739
No more DOS line endings or trailing whitespace either
2016-12-24MIR Gen - Fix some bugs exposed by extended validationJohn Hodge4-5/+28
2016-12-24MIR Check - VarState past switchJohn Hodge1-1/+4
2016-12-24MIR Gen - Fix double-drop of InnerMoved variablesJohn Hodge1-0/+1
2016-12-24HIR/MIR Dump - Minor fixesJohn Hodge2-2/+11
2016-12-24Trans C - Box drops (deep and shallow)John Hodge1-16/+57
2016-12-24Trans - Generate Box destructorsJohn Hodge4-4/+34
2016-12-24Trans C - Fix some bad atomicsJohn Hodge1-0/+8
2016-12-24MIR Gen - Raise values from LValue::DerefJohn Hodge1-0/+6
2016-12-24MIR Gen - Better scoping for single-arm matchesJohn Hodge1-5/+19
2016-12-24HIR Expand Closures - Handle closures called from other closuresJohn Hodge3-8/+33
2016-12-23MIR Gen - Shortcut in `let` handling to remove a useless temporaryJohn Hodge1-4/+10
2016-12-23MIR Gen - Track split state for temporaries (incomplete)John Hodge4-72/+239
2016-12-23HIR Expand Closures - Place move closure handling to before upwards propagationJohn Hodge2-11/+17
2016-12-22MIR Gen - (minor) Span in destructorJohn Hodge1-2/+1
2016-12-21MIR Check - Extended validation based on value stateJohn Hodge1-7/+151
2016-12-21MIR Gen Match - Drop temporaries from match arms within the armJohn Hodge1-2/+7
2016-12-21MIR Gen Match - Correct types for bytestring comparisonJohn Hodge1-2/+4
2016-12-18MIR Check - Structure for checking variable validityJohn Hodge1-1/+124
2016-12-18Trans C - Reduce size of generated code a littleJohn Hodge1-9/+13
2016-12-18HIR - Move closuresJohn Hodge7-13/+26
2016-12-18Trans C - Emit `->` instead of `(*val).`John Hodge1-2/+2
2016-12-18MIR Gen - Tweak block handling to reduce bugsJohn Hodge1-27/+19