aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* 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 #998gingerBill2021-05-311-0/+10
|
* Fix #992gingerBill2021-05-311-2/+4
|
* Fix #999gingerBill2021-05-311-1/+1
|
* Fix #996gingerBill2021-05-311-9/+11
|
* Comment on the required `generate_minimum_dependency_set` entitiesgingerBill2021-05-311-19/+19
|
* Remove unneeded minimum dependenciesgingerBill2021-05-311-15/+3
|
* Remove unneeded dependenciesgingerBill2021-05-311-37/+3
|
* Fix #1004gingerBill2021-05-312-36/+2
|
* Fix polymorphic record "too few" lacking error messagegingerBill2021-05-313-3/+16
|
* Add intrinsics.{ptr_offset, ptr_sub}gingerBill2021-05-303-0/+138
|
* 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
* Add abs_f16 dependency when used.Jeroen van Rijn2021-05-291-0/+1
|
* 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-243-2/+57
|
* Move the mem zero into a separate procedure for reusegingerBill2021-05-241-19/+27
|
* Refactoring of lbFunctionType retrievalgingerBill2021-05-241-15/+26
|
* Refactor backend code for assignments; Refactor some statements into ↵gingerBill2021-05-241-399/+335
| | | | separate procedures
* Heavily improve the copy elision logic in the backendgingerBill2021-05-242-47/+104
|
* Add `@(link_section=<string>)` for global variablesgingerBill2021-05-245-0/+18
|
* Handle #c_vararg correctlygingerBill2021-05-241-0/+6
|
* Modify ABI for the Odin calling conventions on SysV slightlygingerBill2021-05-222-36/+19
|
* Fix `ast_end_token`gingerBill2021-05-211-2/+11
|
* Fix `..=` logic in the backendgingerBill2021-05-212-7/+7
|
* Be a little more correct with the temporary Ast nodegingerBill2021-05-191-3/+3
|
* Add range-based error messages to `-verbose-errors`gingerBill2021-05-199-167/+429
| | | | | | | | Example: Cannot convert '(1 + 2)' to 'untyped bool' from 'untyped integer' x := (1 + 2) * true; ^~~~~~^
* Replace `error` calls with `Token` to use `TokenPos`gingerBill2021-05-192-55/+52
|
* Add `-verbose-errors` which shows the error in the line of codegingerBill2021-05-194-2/+144
|
* Add suggestion for unused expression on `x == y`gingerBill2021-05-191-0/+22
| | | | | | Expression is not used: 'x == 123' Suggestion: Did you mean to do an assignment? 'x = 123;'
* Remove @(static) for global variablesgingerBill2021-05-192-4/+3
|
* More minor linkage changesgingerBill2021-05-191-22/+15
|
* Minor change to internal linkage stuffgingerBill2021-05-191-9/+27
|
* Add `intrinsics.mem_copy` and `intrinsics.mem_copy_non_overlapping`gingerBill2021-05-193-0/+97
|
* Add `intrinsics.sqrt` for floating-point valuesgingerBill2021-05-193-0/+54
|
* Minor ABI change and cleanupgingerBill2021-05-171-2/+2
|
* Improve untyped to typed logic for aiding the backendgingerBill2021-05-163-10/+79
|
* Add concrete type information for untyped values as procedure argumentsgingerBill2021-05-162-0/+7
|
* Fix #988gingerBill2021-05-161-0/+1
|
* Allow `..=` alongside `..` as a "full range" operator; Update ↵gingerBill2021-05-166-13/+24
| | | | `core:odin/parser` etc
* Add missing instruction to passgingerBill2021-05-151-0/+6
|
* Add missing instructions to passgingerBill2021-05-151-0/+2
|
* Add custom basic dead instruction elimination passgingerBill2021-05-152-13/+108
|
* Add spacegingerBill2021-05-151-1/+1
|
* Improve semicolon insertion rule for dummy tokens `++` and `--`gingerBill2021-05-151-0/+2
|
* Tokenize `++` and `--` as tokens but disallow them in the parser, and give ↵gingerBill2021-05-152-11/+36
| | | | better error messages for they are used as operators/statements
* Disallow duplicate unary operators for `+`, `-`, and `~`gingerBill2021-05-151-3/+13
|
* Remove old dead codegingerBill2021-05-159-415/+0
|