aboutsummaryrefslogtreecommitdiff
path: root/src/ir.cpp
AgeCommit message (Collapse)Author
2016-12-18IR: all structs anonymousAndrew Kelley
2016-12-18IR: fix codegen of ref instructionAndrew Kelley
2016-12-18IR: phi instruction handles unreachable values correctlyAndrew Kelley
2016-12-18IR: fix err variable in ErrOkOr instructionAndrew Kelley
2016-12-18IR: fix container field access via container pointerAndrew Kelley
2016-12-18IR: basic support for implicit casting to const pointerAndrew Kelley
2016-12-18IR: fix type of decls accessed via namespaceAndrew Kelley
2016-12-18IR: add runime negationAndrew Kelley
2016-12-18IR: unreachable has lowest priority when resolving peer typesAndrew Kelley
2016-12-18IR: support var type args and fix phi peer type resolutionAndrew Kelley
2016-12-17IR: allow undefined compile time values sometimesAndrew Kelley
2016-12-17IR: consolidate Ref and PrefixOpAddressOf instructionsAndrew Kelley
2016-12-17IR: fix `this` expressionAndrew Kelley
Previously it returned a block instead of a function when a function had any arguments.
2016-12-17IR: fix compile time switch eval for enumsAndrew Kelley
2016-12-17IR: fix switching on enumAndrew Kelley
2016-12-17IR: add more instructionsAndrew Kelley
* MaybeWrap * TestErr * UnwrapErrCode * UnwrapErrPayload * ErrUnionTypeChild * ErrWrapCode * ErrWrapPayload
2016-12-14IR: panic with a TODO instead of generating invalid codeAndrew Kelley
for returning from a function without running maybe and error defers
2016-12-13IR: implement maybe return expressionAndrew Kelley
2016-12-13IR: implement the rest of the builtin functionsAndrew Kelley
* returnAddress * frameAddress * addWithOverflow * subWithOverflow * mulWithOverflow * shlWithOverflow * alignOf
2016-12-13IR: implement character literalAndrew Kelley
2016-12-13IR: implement breakpoint builtinAndrew Kelley
2016-12-12IR: implement memberCount builtinAndrew Kelley
2016-12-12IR: implement memcpy, memset, and slice expressionAndrew Kelley
2016-12-11IR: implement alloca builtinAndrew Kelley
2016-12-11IR: implement compile time array concatenationAndrew Kelley
2016-12-11IR: implement compile time array multiplicationAndrew Kelley
2016-12-11IR: implement intType builtinAndrew Kelley
and int type field access and fix compile time bool not
2016-12-11IR: implement truncate builtinAndrew Kelley
2016-12-11IR: implement divExact builtinAndrew Kelley
2016-12-11IR: implement fence and cmpxchg builtinsAndrew Kelley
2016-12-11IR: implement embedFile builtinAndrew Kelley
2016-12-11IR: fix implementation of parsehAndrew Kelley
libc hello world works now
2016-12-10IR: don't crash if number literal used with pure errorAndrew Kelley
2016-12-10IR: support error union typeAndrew Kelley
2016-12-10IR: fix errorName builtinAndrew Kelley
2016-12-08IR: better array len instructionAndrew Kelley
reference the "len" field directly instead of looking it up by name since we already know exactly where the field metadata is
2016-12-08IR: omit debug safety checks in for loop codegenAndrew Kelley
2016-12-08IR: a bunch of fixes and some additionsAndrew Kelley
* add errorName builtin function * add assertion for generated memcopy being on correct types * respect handle_is_ptr for constant values * fix return codegen to respect sret semantics * remove ArrayLen IR instruction; we already have StructFieldPtr with "len" field * fix gen_const_val for pointers inside aggregates
2016-12-07IR: add compileError builtin fnAndrew Kelley
2016-12-07IR: add minValue, maxValue, and negationAndrew Kelley
2016-12-07IR: add error for assigning runtime value to inline varAndrew Kelley
2016-12-06IR: implement compile time eval unwrap maybeAndrew Kelley
2016-12-06IR: implement deferAndrew Kelley
2016-12-05remove the boolean argument from setFnTestAndrew Kelley
2016-12-05IR: implement short circuit bool or, andAndrew Kelley
2016-12-05IR: implement break and continueAndrew Kelley
2016-12-05IR: implement generic function callsAndrew Kelley
2016-12-05IR: inline function evaluation works on generic functionsAndrew Kelley
2016-12-04IR: compile time function evaluationAndrew Kelley
2016-12-04IR: re-organize where state goes to prepare for genericsAndrew Kelley
* Rip out legacy code for generics * put scope in instruction instead of AST nodes * separate top level decl stuff from AST nodes - remove the assumption that there is a 1:1 correspondence between an output instruction and an AST node - This way we won't have to clone AST nodes for generics.