summaryrefslogtreecommitdiff
path: root/src/trans/codegen_c.cpp
AgeCommit message (Collapse)AuthorFilesLines
2017-07-06MIR - Add (but don't use) a SwitchValue terminatorJohn Hodge1-1/+8
2017-07-02Codegen C - Fix indenting in destructorsJohn Hodge1-25/+22
2017-07-02Codegen C - (minor) Comment before enum definitionsJohn Hodge1-0/+1
2017-06-22Codegen C - First pass at structured C output (generated, but not compiled)John Hodge1-94/+247
2017-06-18Trans - Starting work on multiple targetsJohn Hodge1-492/+568
2017-06-16MIR - Unify temporaries and variablesJohn Hodge1-21/+12
2017-06-15Codegen C - Fix float precision, disable test broken by fixed precisionJohn Hodge1-18/+14
2017-06-11Codegen C - Fix -INFINITYJohn Hodge1-1/+1
2017-06-11Codegen C - Make all drop glue staticJohn Hodge1-6/+6
2017-06-04Trans - Emit monomorphised/inlined functions as `static`John Hodge1-2/+11
2017-06-02Codegen C - Return value from mainJohn Hodge1-2/+2
2017-05-26Codegen C - Handle signed bswapJohn Hodge1-1/+7
2017-05-15Codegen C - Fix some edge cases with floats, add newer intrinsicsJohn Hodge1-2/+20
2017-05-05Trans - Fix broken code from bad mergeJohn Hodge1-2/+2
2017-05-05Codegen C - volatile_load/storeJohn Hodge1-0/+7
2017-05-01HIR - Rough support for enum variant values (trans only, no consteval)John Hodge1-29/+62
2017-04-29Trans Codegen - Remove unneeded todoJohn Hodge1-1/+0
2017-04-29Trans - Better needs_drop intrinsicJohn Hodge1-4/+4
2017-04-22MIR - Add ScopeEnd statement to indicate where a value will no longer be usedJohn Hodge1-2/+9
2017-04-16Codegen C - Fix incorrect escaped valuesJohn Hodge1-3/+5
2017-04-13Codegen C - Fix precedence error in 64/128 bit ctzJohn Hodge1-2/+2
2017-04-13All - Add rough support for #[test] (runs basic tests)John Hodge1-0/+1
2017-03-26Trans - Handle drop of unsized objectsJohn Hodge1-9/+64
2017-03-12Codegen C - Fix integer literal typesJohn Hodge1-1/+1
2017-03-10Codegen C - Fix edge case with INT64_MINJohn Hodge1-8/+11
2017-03-06Codegen C - Minor fixesJohn Hodge1-4/+24
2017-03-02MIR Gen - More Param usageJohn Hodge1-2/+1
2017-02-26Codegen C - Fix transmute on constantsJohn Hodge1-1/+10
2017-02-25MIR Gen - Use MIR::Param (and associated changes)John Hodge1-21/+14
2017-02-22MIR - Restrict Constant::Bytes to returning &[u8; N]John Hodge1-28/+9
2017-02-22MIR - Add types to integer constantsJohn Hodge1-18/+16
2017-02-22MIR - Make MakeDst ptr a ParamJohn Hodge1-1/+1
2017-02-22MIR - add Param type for places where a lvalue is readJohn Hodge1-254/+254
2017-02-19Trans - Conditionally emit struct/tuple constructor wrappersJohn Hodge1-57/+85
2017-02-11Trans - Allow passing library directories from command lineJohn Hodge1-3/+23
2017-02-04Codegen C - Enable gc-sections for binariesJohn Hodge1-0/+1
2017-02-03Codegen C - Fix incorrect second argument for slice_cmpJohn Hodge1-1/+1
2017-02-03Codegen C - Fix ctz/clz intrinsicsJohn Hodge1-5/+44
2017-02-02Codegen C - Fix incorrect impl of Fn* for fn pointersJohn Hodge1-2/+2
2017-01-29Trans Codegen - Fix emision of enum literalsJohn Hodge1-0/+12
2017-01-29Trans - Only emit typeid if neededJohn Hodge1-1/+4
2017-01-29Codegen C - repr(C/u*) enumsJohn Hodge1-0/+26
2017-01-22Trans - #[start] attributeJohn Hodge1-6/+13
2017-01-21Trans/Expand - #[main] attributeJohn Hodge1-1/+1
2017-01-20MIR - Merging of drop flagsJohn Hodge1-1/+6
2017-01-20Codegen - Drop flagsJohn Hodge1-1/+10
2017-01-20MIR - Drop flags (incomplete, doesn't pass validation)John Hodge1-0/+3
2017-01-15Codegen C - Basic NonZero option Optimisation (borrows and function pointers ↵John Hodge1-107/+302
only)
2017-01-15Codegen C - Enable debug info in outputJohn Hodge1-0/+1
2017-01-15Trans - Use #[link(name)] attributesJohn Hodge1-3/+13