aboutsummaryrefslogtreecommitdiff
path: root/src/llvm_backend.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Change `for i in x..y {}` behaviourgingerBill2021-05-151-107/+89
| | | | | Adds an extra check before incrementation to prevent the possibility of overflowing of `y` is at the limit maximum size of the integer e.g. `for i in u8(0)..255 {}` (assuming `255` is not known at compile time)
* Disallow slicing of constant valuesgingerBill2021-05-151-1/+18
|
* Add minor ignoring hint on type assertions to get better code generation ↵gingerBill2021-05-131-2/+53
| | | | with no optimizations enabled
* Fix #741gingerBill2021-05-131-2/+3
|
* Fix #948gingerBill2021-05-121-27/+7
|
* Add `byval` with `align`, `sret` attributes for SysVgingerBill2021-05-111-3/+24
|
* Remove warning on \*nixgingerBill2021-05-111-4/+3
|
* Minor change (in preparation for something else) to opt passesgingerBill2021-05-111-8/+8
|
* Fix debug information for array types by setting the `DISubrange`gingerBill2021-05-101-4/+20
|
* Correct SysV ABI for `-> (f32, bool)`gingerBill2021-05-101-6/+21
|
* Improve type inference rules for implicit selector expressionsgingerBill2021-05-061-21/+29
| | | | | | New improvements: `(.A == x)` `a_union_containing_many_enums = .A;`
* Remove debug codegingerBill2021-05-051-3/+0
|
* Fix typogingerBill2021-05-051-2/+8
|
* Fix LLVM store point for nested types containing procedures (e.g. `^^proc()`)gingerBill2021-05-051-1/+33
|
* Unify `AstTernaryExpr` with `AstTernaryIfExpr`gingerBill2021-05-051-41/+0
| | | | | Allow for both syntaxes `x if cond else y` and `cond ? x : y` Removes the confusing semantics behind `?:` which could be `if` or `when` depending on the context.
* Mark external thread local globalsgingerBill2021-05-051-0/+19
|
* Minor cleanupgingerBill2021-05-051-2/+5
|
* Move anonymous proc generation into `lbGenerator`gingerBill2021-05-041-7/+7
|
* Nearly approach full functionality for -use-separate-modules coupled with ↵gingerBill2021-05-041-88/+129
| | | | multithreading
* Get LLVM backend multithread for object generation with `-use-separate-modules`gingerBill2021-05-041-34/+29
|
* Prepare to multithread object generationgingerBill2021-05-031-22/+116
|
* Remove test codegingerBill2021-05-031-12/+0
|
* Minor fixes to -use-separate-modulesgingerBill2021-05-031-18/+5
|
* Experimental support for `-use-separate-modules`gingerBill2021-05-031-9/+47
|
* Add min_f16 and max_f16 dependenciesgingerBill2021-05-031-0/+2
|
* Begin work on making LLVM backend work with multiple modules for possible ↵gingerBill2021-05-031-274/+394
| | | | faster compilation
* Force `zero_init` in `lb_add_local` in certain casesgingerBill2021-05-031-0/+15
|
* Begin cleanup for allowing for multiple LLVM modulesgingerBill2021-05-031-276/+304
|
* Remove non-InContext type creationsgingerBill2021-05-031-10/+24
|
* Make sure builder uses the `InContext` versiongingerBill2021-05-031-1/+5
|
* Fix typogingerBill2021-05-031-1/+1
|
* Correct hashing for union #maybegingerBill2021-05-031-2/+12
|
* Allow unions which are comparable to also be valid map keys (i.e. hashable)gingerBill2021-05-031-2/+37
|
* Allow `union`s to be comparable if all their variants are comparablegingerBill2021-05-031-6/+65
|
* Simplify/Fix the state_flag behaviour for code generationgingerBill2021-05-011-29/+13
|
* Fix #921gingerBill2021-04-281-1/+11
|
* Add "naked" calling convention (removes prologue and epilogue)gingerBill2021-04-281-0/+4
|
* Fix procedure entity findinggingerBill2021-04-271-8/+20
|
* Make atomic compare related intrinsics optional okgingerBill2021-04-271-18/+30
|
* Fix #893gingerBill2021-04-271-15/+23
|
* Fix constant aliasing for debug informationgingerBill2021-04-261-2/+6
|
* Merge branch 'master' into old-backend-removalgingerBill2021-04-261-0/+3
|\
| * Fix `union #maybe` comparison against `nil` -llvm-apipre-dev-2021-04gingerBill2021-04-261-0/+3
| |
* | Add `intrinsics.count_zeros`gingerBill2021-04-251-0/+10
| |
* | Rename intrinsics to count_trailing_zeros and count_leading_zerosgingerBill2021-04-251-6/+6
| |
* | Replace many `foreign` llvm calls with intrinsicsgingerBill2021-04-251-0/+22
| |
* | Remove old procedure ABI codegingerBill2021-04-251-11/+8
|/
* Fix #857gingerBill2021-04-251-4/+15
|
* Fix #911 for -llvm-api backendgingerBill2021-04-251-1/+1
|
* Up ci.ymlgingerBill2021-04-241-1/+1
|