aboutsummaryrefslogtreecommitdiff
path: root/src/llvm_backend_stmt.cpp
Commit message (Collapse)AuthorAgeFilesLines
* "fix" #4169, looks like llvm 14 bugLaytan2024-08-311-2/+1
|
* Fix #4156gingerBill2024-08-311-0/+4
|
* Fix `switch val in ptr`gingerBill2024-08-191-3/+3
|
* Move assert to `else` branchgingerBill2024-08-181-3/+8
|
* fix type switching over internal pointer unionLaytan Laats2024-08-121-1/+1
| | | | Fixes #3947
* Fix `case:` in type switch issuegingerBill2024-07-151-2/+9
|
* Fix `lb_store_type_case_implicit`gingerBill2024-07-041-1/+2
|
* Allow `@(rodata)` on `@(static)` variablesgingerBill2024-06-061-1/+3
|
* Fix #3586gingerBill2024-05-141-20/+21
|
* Generalize Odin call-based "iterators" to work with more than 2-values: `for ↵gingerBill2024-04-271-9/+44
| | | | | | x, y, z, w in iterate(&it)` It has an artificial limitation of 100 values because if you need for than that, you're doing something wrong.
* Support `for in` with `bit_set`gingerBill2024-04-011-7/+87
|
* Fix `case:` bug with by-ref unionsgingerBill2024-03-181-5/+6
|
* Make `lb_type_info` use a procedure to load the global valuegingerBill2024-02-271-1/+1
|
* Fix divergent proc call in `defer`Laytan Laats2024-02-211-4/+17
| | | | | Fixes #3216 Fixes #2985
* Improve returning a struct directly for certain ABIs; reuse the temp callee ↵gingerBill2023-11-241-3/+19
| | | | return struct memory when needed
* Go through loads of `TODO`sgingerBill2023-08-011-4/+1
|
* Add extra mutex guards around module value accessgingerBill2023-07-071-0/+8
|
* `for &e, i in array` and `for k, &v in map` (alternative to passing the ↵gingerBill2023-06-261-34/+54
| | | | iterable by pointer)
* Merge pull request #2552 from jcmoyer/fix-2466gingerBill2023-06-081-0/+1
|\ | | | | Use compound literal storage for ValueDecl lvals
| * Use compound literal storage for ValueDecl lvalsJ.C. Moyer2023-05-211-0/+1
| | | | | | | | | | | | | | | | Prior to this commit, if a variable was initialized using a compound literal, its associated storage would not be set. This commit makes the variable always take on the storage of the compound literal. Fixes #2466
* | Fix non-constant compound literals of slicesgingerBill2023-06-071-0/+1
| |
* | Merge branch 'master' into separate-int-word-sizesgingerBill2023-06-061-46/+206
|\ \
| * | Minor change to `#reverse for` logic; add comments explaining itgingerBill2023-05-301-24/+103
| | |
| * | Support `#reverse` for stringsgingerBill2023-05-291-18/+48
| | |
| * | Support `#reverse` on `#soa` arraysgingerBill2023-05-291-9/+32
| | |
| * | Basic support for `#reverse for in` on normal arraysgingerBill2023-05-291-18/+46
| |/
* / Rename `word_size` to `ptr_size` internally to make it clearergingerBill2023-04-201-1/+1
|/
* Simplify copy elision on variable declarationsgingerBill2023-03-161-31/+33
|
* Allow `case nil` within a type switch statement (experimental idea)gingerBill2023-03-121-5/+14
|
* Fix range loop `&` vals debug infogingerBill2023-03-091-0/+1
|
* Fix debug symbols for range loopsgingerBill2023-03-091-9/+0
|
* Fix value elision on declarationgingerBill2023-03-091-9/+18
|
* Reduce stack usage of some type `switch` `case`sgingerBill2023-02-171-6/+66
|
* Minimize stack wastage with compound literals defining variablesgingerBill2023-02-171-2/+38
|
* Add extra checks for multiple assignments when emitting storesgingerBill2023-01-271-0/+14
|
* Fix #2299 by handling very large value cases correctlygingerBill2023-01-201-1/+1
|
* Begin multithreading the llvm backend when `-use-separate-modules` is enabledgingerBill2023-01-051-1/+1
|
* Localize `GenProcsData` to the entity itselfgingerBill2023-01-041-4/+2
|
* Use `RwMutex` for `gen_procs`gingerBill2023-01-031-1/+2
|
* More `for_array(i, y)` to `for (x : y)` translationsgingerBill2023-01-031-44/+30
|
* Minimize the parapoly mutex usage a bitgingerBill2023-01-021-2/+3
|
* Remove unneeded mutexgingerBill2023-01-021-3/+2
|
* Remove unneeded `local_entity_map`gingerBill2023-01-021-3/+0
|
* Correct a race condition when checking the procedure bodygingerBill2023-01-021-1/+5
|
* Revert "Change `tav` to be a pointer internally"gingerBill2022-12-221-17/+17
| | | | This reverts commit e98f1a28e68e82753728f58b3465793192b74f9d.
* Change `tav` to be a pointer internallygingerBill2022-12-221-17/+17
|
* Remove dead code in the compilergingerBill2022-12-181-10/+0
|
* `gb_internal` LLVM backendgingerBill2022-12-181-45/+45
|
* Fix type for split returns codegingerBill2022-11-241-1/+1
|
* Basic copy elision support for multiple return valuesgingerBill2022-11-241-24/+24
|