aboutsummaryrefslogtreecommitdiff
path: root/src/codegen.cpp
AgeCommit message (Collapse)Author
2018-02-27Revert "llvm coroutine workaround: sret functions return sret pointer"Andrew Kelley
This reverts commit 132e604aa399a3bcb91996e550cf8972bd88422c. this workaround didn't work either
2018-02-27revert workaround for alloc and free as coro paramsAndrew Kelley
reverts 4ac6c4d6bfb8f7ada2799ddb5ce3a9797be0518d the workaround didn't work
2018-02-27llvm coroutine workaround: sret functions return sret pointerAndrew Kelley
2018-02-27Revert "another llvm workaround for getelementptr"Andrew Kelley
This reverts commit c2f5634fb3df51622cf74f23b4ae0d4a7d2bbbe9. It doesn't work. With this, LLVM moves the allocate fn call to after llvm.coro.begin
2018-02-27another llvm workaround for getelementptrAndrew Kelley
2018-02-26workaround llvm coro transformationsAndrew Kelley
by making alloc and free functions be parameters to async functions instead of using getelementptr in the DynAlloc block See #727
2018-02-26implement coroutine suspendAndrew Kelley
see #727
2018-02-25codegen for coro_resume instructionAndrew Kelley
See #727
2018-02-25codegen for coro_free instructionAndrew Kelley
See #727
2018-02-25codegen for coro_end instructionAndrew Kelley
See #727
2018-02-25codegen for coro_suspend instructionAndrew Kelley
See #727
2018-02-25codegen for coro_begin instructionAndrew Kelley
See #727
2018-02-25codegen for coro_alloc_fail instructionAndrew Kelley
See #727
2018-02-25codegen for get_implicit_allocator instructionAndrew Kelley
See #727
2018-02-25codegen for coro_alloc and coro_size instructionsAndrew Kelley
See #727
2018-02-25codegen for coro_id instructionAndrew Kelley
See #727
2018-02-25codegen for cancelAndrew Kelley
See #727
2018-02-25codegen for calling an async functionAndrew Kelley
See #727
2018-02-23implement Zig IR for async functionsAndrew Kelley
See #727
2018-02-22IR analysis for coro.beginAndrew Kelley
See #727
2018-02-21add coroutine startup IR to async functionsAndrew Kelley
See #727
2018-02-21implement IR analysis for async function callsAndrew Kelley
See #727
2018-02-20add promise typeAndrew Kelley
See #727
2018-02-20parse async fn definitionsAndrew Kelley
See #727
2018-02-20parse async fn calls and cancel expressionsAndrew Kelley
2018-02-16ability to slice an undefined pointer at compile time if the len is 0Andrew Kelley
2018-02-15add an assert to catch #777Andrew Kelley
asserting is better than segfaulting
2018-02-11fix exported variable not named in the object fileAndrew Kelley
closes #771
2018-02-09fix build runner on windowsAndrew Kelley
2018-02-08error sets: runtime safety for int-to-err and err set castAndrew Kelley
2018-02-08error set casting buildingAndrew Kelley
2018-02-05error sets: fix peer resolution of error unionsAndrew Kelley
2018-02-04add --forbid-libraryAndrew Kelley
to help track down accidentally linking against a library
2018-02-03*WIP* error sets - an inferred error set can end up being the global oneAndrew Kelley
2018-02-02*WIP* error sets - correctly resolve inferred error setsAndrew Kelley
2018-01-31*WIP* error setsAndrew Kelley
2018-01-25rename "debug safety" to "runtime safety"Andrew Kelley
closes #437
2018-01-23fix printf format specifierAndrew Kelley
2018-01-23Add array type handling for gen_hMarc Tiehuis
2018-01-22add new kind of test: generating .h files. and moreAndrew Kelley
* docgen supports obj_err code kind for demonstrating errors without explicit test cases * add documentation for `extern enum`. See #367 * remove coldcc keyword and add @setIsCold. See #661 * add compile errors for non-extern struct, enum, unions in function signatures * add .h file generation for extern struct, enum, unions
2018-01-17fix error return traces pointing to off-by-one source lineAndrew Kelley
See #651
2018-01-15add builtin.have_error_return_tracingAndrew Kelley
2018-01-15clean up error return tracingAndrew Kelley
* error return tracing is disabled in release-fast mode * add @errorReturnTrace * zig build API changes build return type from `void` to `%void` * allow `void`, `noreturn`, and `u8` from main. closes #535
2018-01-14stack traces are a variable number of framesAndrew Kelley
2018-01-14error return traces use a zig-provided function to save binary sizeAndrew Kelley
2018-01-14error return trace pointer prefixes other paramsAndrew Kelley
instead of being last. This increases the chances that it can remain in the same register between calls.
2018-01-12*WIP* proof of concept error return tracesAndrew Kelley
2018-01-11functions which can return errors have secret stack trace paramAndrew Kelley
See #651
2018-01-11the same string literal codegens to the same constantAndrew Kelley
this makes it so that you can send the same string literal as a comptime slice and get the same type
2018-01-06Darwin -> MacOSX, added Zen. See #438Andrea Orru