aboutsummaryrefslogtreecommitdiff
path: root/src/llvm_backend.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Fix #1042gingerBill2021-06-281-19/+21
|
* Fix #1043gingerBill2021-06-281-0/+3
|
* Fix swizzling of pointers to arraysgingerBill2021-06-281-2/+7
|
* Modify scope finding rules for distinct types in lb_debug_typegingerBill2021-06-271-3/+23
|
* Fix #1044gingerBill2021-06-261-4/+17
|
* Support compound literals for `struct #raw_union` typesgingerBill2021-06-261-2/+12
|
* Fix compiler errorsgingerBill2021-06-251-3/+3
|
* Change logic for comparison against `nil` for array-like data types (compare ↵gingerBill2021-06-241-12/+27
| | | | the pointer rather than the length/capacity)
* Correct selector call expression chaining behaviour (a bit of a hack)gingerBill2021-06-161-9/+28
|
* Fix #1017gingerBill2021-06-151-4/+7
|
* Fix #1019gingerBill2021-06-151-2/+0
|
* Fix #1015gingerBill2021-06-141-11/+15
|
* Just create `context` when requiredgingerBill2021-06-141-16/+1
|
* Fix `context` logicgingerBill2021-06-131-3/+3
|
* Remove dead codegingerBill2021-06-121-22/+0
|
* Correct `context `logic in `lb_build_addr`gingerBill2021-06-121-1/+1
|
* Improve vector arithmetic generation for array programming operationsgingerBill2021-06-121-72/+215
|
* Fix linkage problem for procedures required by LLVMgingerBill2021-06-101-9/+18
|
* Minor code clean upgingerBill2021-06-091-11/+4
|
* Improve code generation for type switch statements to use a jump table by ↵gingerBill2021-06-091-26/+35
| | | | default
* Allow trivial optimizations for switch statements of `typeid`gingerBill2021-06-091-9/+21
|
* Do trivial SwitchInstr optimization for constant case switch statementsgingerBill2021-06-091-6/+93
|
* Correct minimum dependency for `complex32`gingerBill2021-06-081-10/+22
|
* Improve code generation hints for return statements which return by pointergingerBill2021-06-081-7/+35
|
* Minor alignment cleanup for swizzle loadgingerBill2021-06-081-1/+10
|
* Fix and improve swizzle loads for ordered indicesgingerBill2021-06-081-1/+17
|
* Minor improvements to `-use-separate-modules`gingerBill2021-06-081-6/+25
|
* Replace `js_wasm32` with `freestanding_wasm32`gingerBill2021-06-081-17/+19
|
* Fix `lb_build_defer_stmt`gingerBill2021-06-081-0/+3
|
* Correct code for `#simd` in unionsgingerBill2021-06-061-9/+14
|
* Fix #861 - Add extra check on missing `main`gingerBill2021-06-061-2/+4
|
* Fix 128-bit integer to float cast by explicitly calling the procedure ↵gingerBill2021-06-061-0/+11
| | | | direct; Fix #781
* Add support for `Addressing_OptionalOkPtr`gingerBill2021-06-061-90/+191
| | | | Allowing for `i, ok := &x.(T);` (type assertions) and `v, ok := &m[k];` (map indexing)
* Clean up lbAddr_Swizzle logic for load and storegingerBill2021-06-051-47/+73
|
* Use `shufflevector` when possible for lbAddr_Swizzle loadgingerBill2021-06-051-0/+39
|
* Improved `lb_build_assign_stmt_array` logicgingerBill2021-06-051-16/+36
|
* Fix `lb_build_assign_stmt_array` for `lbAddr_Swizzle`gingerBill2021-06-051-1/+28
|
* Experimental support for inline swizzling for array types of len <= 4 e.g. ↵gingerBill2021-06-051-56/+61
| | | | `v.xyz`, `v.argb`, `v.xxx`
* Make inline array arithmetic use `load+extractvalue` rather than ↵dev-2021-06gingerBill2021-06-011-7/+42
| | | | `getelementptr+load` to give the optimizer a better hint for vectorization
* Improves to array arithmetic on += etc assignment statementsgingerBill2021-06-011-68/+218
|
* Fix #992gingerBill2021-05-311-2/+4
|
* Fix #999gingerBill2021-05-311-1/+1
|
* Fix #1004gingerBill2021-05-311-36/+0
|
* Add intrinsics.{ptr_offset, ptr_sub}gingerBill2021-05-301-0/+31
|
* Improve logic for intrinsics.{mem_copy, mem_copy_non_overlapping, mem_zero} ↵gingerBill2021-05-301-10/+65
| | | | to use the `*.inline` LLVM variants when possible
* Fix comparison bug of enumerated arraysgingerBill2021-05-271-2/+6
|
* Disable copy elision on assignments for the time beinggingerBill2021-05-251-2/+2
|
* Minimize copying on getting the address of a call if requiredgingerBill2021-05-241-1/+5
|
* Add `intrinsics.mem_zero`gingerBill2021-05-241-2/+14
|
* Move the mem zero into a separate procedure for reusegingerBill2021-05-241-19/+27
|