aboutsummaryrefslogtreecommitdiff
path: root/src/llvm_backend_expr.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Optimize `#caller_location` and `#location` to use read only data section ↵gingerBill2022-10-311-2/+2
| | | | where possible
* Minor technical improvementgingerBill2022-09-221-2/+5
|
* Reduce unnecessary map getsgingerBill2022-09-211-14/+8
|
* Change `__dynamic_map_get` and `__dynamic_map_set` to use separate ↵gingerBill2022-09-171-9/+3
| | | | parameters rather than take a singular struct
* Fix #2017 mismatched types in binary matrix expression for `flt * (mat * vec)`gingerBill2022-09-051-5/+18
|
* Fix #1994 Returning to err: Maybe(Error) raises compiler assertgingerBill2022-09-011-1/+1
|
* Correct max alignment handling throughout the llvm backendgingerBill2022-08-241-3/+3
|
* Merge pull request #1955 from jaspergeer/fix-endian-type-conversiongingerBill2022-08-241-3/+0
|\ | | | | fix #1759 endian float type conversion errors
| * Remove erroneous byte swapJasper Geer2022-08-161-3/+0
| |
* | Fix #1963gingerBill2022-08-191-1/+1
|/
* Minor refactoring of `lb_build_addr`gingerBill2022-08-111-403/+417
|
* Clean up compound literal backend stuff some moregingerBill2022-08-111-176/+48
|
* Improve compound literal generation for array-like typesgingerBill2022-08-111-749/+617
|
* Eliminate use of LLVMGetElementType for pointersgingerBill2022-08-091-1/+1
|
* Merge pull request #1933 from lerno/reduce_reliance_on_ptr_typegingerBill2022-08-091-114/+116
|\ | | | | Removed use of deprecated functions. Cleaned up most deprecated use o…
| * Removed use of deprecated functions. Cleaned up most deprecated use of ↵Christoffer Lerno2022-08-071-114/+116
| | | | | | | | LLVMGetElementType.
* | Add `#soa` pointer type to aid with refactoring to `#soa` data typesgingerBill2022-08-081-4/+29
|/ | | | | | | | a: #soa[16]Foo p := &a[6] #assert(type_of(p) == #soa^#soa[16]Foo) p^.x = 123 p.x = 123
* Fix #1930gingerBill2022-08-051-0/+3
|
* Fix #1793gingerBill2022-07-241-1/+7
|
* Fix and improve `x->y()` behaviour to minimize duplicate evaluationgingerBill2022-07-241-3/+31
|
* Integrate numerous debug fixes from #1877gingerBill2022-07-181-11/+0
|
* Fix #1836gingerBill2022-07-161-3/+6
|
* Fix #1880gingerBill2022-07-161-1/+9
|
* Fix #1888gingerBill2022-07-161-10/+28
|
* Improve vector comparison `==` `!=` for horizontal reductiongingerBill2022-05-281-10/+29
|
* Add arithmetic operator support for simd vectors; Add `intrinsics.simd_and_not`gingerBill2022-05-261-1/+39
|
* Remove need for `simd.splat`gingerBill2022-05-261-27/+45
|
* Correct casting between integer and boolean #simdgingerBill2022-05-251-1/+4
|
* Allow for non-constant simd vector compound typesgingerBill2022-05-251-0/+96
|
* Allow basic casting of simd vectorsgingerBill2022-05-251-0/+32
|
* Fix issue #1592 "LLVM code gen error when using a constant in an if"gitlost2022-03-181-2/+2
| | | | | | | Changes lb_build_if_stmt() to return null lbValue if condition is cmpAnd, cmpOr or non-const neg and check in lb_build_if_stmt() to avoid short circuiting if that's the case Adds test to "tests/issues" and adds step in CI to check this dir
* Merge branch 'master' into freestanding_amd64gingerBill2022-03-141-0/+15
|\
| * Fix #1607gingerBill2022-03-091-0/+15
| |
* | Commit rest of code for `-disallow-rtti`gingerBill2022-02-281-3/+14
|/
* Correct pseudo selector code generationgingerBill2022-02-151-4/+5
|
* Add more objc attributesgingerBill2022-02-111-1/+10
|
* Support rank-2 arrays (matrix-like) for `transpose`gingerBill2022-02-061-0/+21
|
* Correct implicit union castgingerBill2022-02-051-0/+9
|
* Add `#no_type_assert` and `#type_assert` to disable implicit type assertions ↵gingerBill2022-01-271-31/+41
| | | | with `x.(T)`
* Fix double map dereference indexinggingerBill2022-01-261-2/+4
|
* Rename architecture `386` to `i386`gingerBill2022-01-151-1/+1
|
* Fix conversion from float to quaterniongingerBill2021-12-311-23/+7
|
* Add lb_build_addr on `or_return` and `or_else` for sanity's sakegingerBill2021-11-271-0/+10
|
* Fix #1319gingerBill2021-11-191-2/+0
|
* Correct `x in ptr` logicgingerBill2021-11-171-1/+1
|
* Improve matrix->matrix casting implementationgingerBill2021-11-081-14/+19
|
* Remove many LLVM optimization passes which were causes UB due to them ↵gingerBill2021-11-061-6/+6
| | | | assuming C-like behaviour incompatible with Odin
* Make llvm backend code use `PtrMap`; remove dead codegingerBill2021-11-051-3/+3
|
* Allow casting from floats to quaternionsgingerBill2021-11-031-0/+17
|
* Correct `lb_emit_matrix_flatten`gingerBill2021-11-031-1/+1
|