| Commit message (Collapse) | Author | Age | Files | Lines | ||
|---|---|---|---|---|---|---|
| ... | ||||||
| * | | Improve compound literal generation for array-like types | gingerBill | 2022-08-11 | 1 | -1/+2 | |
| | | | ||||||
| * | | Improve emit store for large constants | gingerBill | 2022-08-11 | 1 | -10/+36 | |
| |/ | ||||||
| * | General clean up of LLVM*GEP2 code | gingerBill | 2022-08-10 | 1 | -0/+39 | |
| | | ||||||
| * | Wrap all `LLVMGetElementType` uses | gingerBill | 2022-08-09 | 1 | -0/+11 | |
| | | ||||||
| * | Remove other uses of LLVMGetElementType on pointer types | gingerBill | 2022-08-09 | 1 | -4/+8 | |
| | | ||||||
| * | Minor change to `lb_emit_store` for storing nil to procedure variables | gingerBill | 2022-08-09 | 1 | -1/+3 | |
| | | ||||||
| * | Eliminate use of LLVMGetElementType for pointers | gingerBill | 2022-08-09 | 1 | -97/+113 | |
| | | ||||||
| * | Merge pull request #1933 from lerno/reduce_reliance_on_ptr_type | gingerBill | 2022-08-09 | 1 | -17/+16 | |
| |\ | | | | | Removed use of deprecated functions. Cleaned up most deprecated use o… | |||||
| | * | Removed use of deprecated functions. Cleaned up most deprecated use of ↵ | Christoffer Lerno | 2022-08-07 | 1 | -17/+16 | |
| | | | | | | | | | LLVMGetElementType. | |||||
| * | | Add `#soa` pointer type to aid with refactoring to `#soa` data types | gingerBill | 2022-08-08 | 1 | -0/+15 | |
| |/ | | | | | | | | a: #soa[16]Foo p := &a[6] #assert(type_of(p) == #soa^#soa[16]Foo) p^.x = 123 p.x = 123 | |||||
| * | Temp fix for `lb_emit_store` | gingerBill | 2022-07-24 | 1 | -1/+1 | |
| | | ||||||
| * | Force memset instead of store zeroinitializer when the value is large | gingerBill | 2022-07-24 | 1 | -3/+9 | |
| | | ||||||
| * | Add `#by_ptr` procedure attribute to enforce a parameter to be passed by ↵ | gingerBill | 2022-07-24 | 1 | -2/+3 | |
| | | | | | pointer internally | |||||
| * | Integrate numerous debug fixes from #1877 | gingerBill | 2022-07-18 | 1 | -4/+4 | |
| | | ||||||
| * | Fix #1869 | gingerBill | 2022-07-16 | 1 | -0/+7 | |
| | | ||||||
| * | Change MAX_STORE_SIZEdev-2022-07 | gingerBill | 2022-06-30 | 1 | -2/+2 | |
| | | ||||||
| * | Use `memmove` if possible when emitting store over a certain size | gingerBill | 2022-06-30 | 1 | -0/+20 | |
| | | ||||||
| * | Minor style change | gingerBill | 2022-06-12 | 1 | -1/+1 | |
| | | ||||||
| * | Merge pull request #1395 from hdooley/master | gingerBill | 2022-06-12 | 1 | -8/+14 | |
| |\ | | | | | factor out alloca generation into a helper | |||||
| | * | review feedback | Henry Dooley | 2021-12-28 | 1 | -1/+3 | |
| | | | ||||||
| | * | cast isize to unsigned int for llvm api, add defaulted name parameter to helper. | Henry Dooley | 2021-12-25 | 1 | -4/+4 | |
| | | | ||||||
| | * | factor out alloca generation into a helper | Henry Dooley | 2021-12-25 | 1 | -7/+11 | |
| | | | ||||||
| * | | Make the link order of foreign imports deterministic | gingerBill | 2022-05-04 | 1 | -2/+5 | |
| | | | ||||||
| * | | Compiler: Add early error for output path being a directory. | Jeroen van Rijn | 2022-04-24 | 1 | -1/+0 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | - Introduce new `Path` type and an array of build paths on the build context. - Resolve input and output paths/files early (before parsing). - Error early if inputs are missing or outputs are directories. - Plumb new file path generation into linker stage instead of its adhoc method. TODO: - Remove more adhoc file path generation in parser and linker stage. - Make intermediate object file generation use new path system. - Round out and robustify Path helper functions. | |||||
| * | | Make constant string backing structures use PrivateLinkage compared to ↵ | gingerBill | 2022-03-24 | 1 | -3/+3 | |
| | | | | | | | | | InternalLinkage | |||||
| * | | `union #shared_nil` | gingerBill | 2022-03-24 | 1 | -3/+28 | |
| | | | | | | | | | This adds a feature to `union` which requires all the variants to have a `nil` value and on assign to the union, checks whether that value is `nil` or not. If the value is `nil`, the union will be `nil` (thus sharing the `nil` value) | |||||
| * | | Fix issue #1592 "LLVM code gen error when using a constant in an if" | gitlost | 2022-03-18 | 1 | -3/+12 | |
| | | | | | | | | | | | | | | | 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 | |||||
| * | | Begin work on support objc intrinsics | gingerBill | 2022-02-08 | 1 | -1/+7 | |
| | | | ||||||
| * | | avoid segfault on map resize | CiD- | 2022-01-26 | 1 | -1/+2 | |
| | | | ||||||
| * | | Fix double map dereference indexing | gingerBill | 2022-01-26 | 1 | -0/+4 | |
| |/ | ||||||
| * | Fix #1319 | gingerBill | 2021-11-19 | 1 | -3/+8 | |
| | | ||||||
| * | Remove many LLVM optimization passes which were causes UB due to them ↵ | gingerBill | 2021-11-06 | 1 | -1/+1 | |
| | | | | | assuming C-like behaviour incompatible with Odin | |||||
| * | Make llvm backend code use `PtrMap`; remove dead code | gingerBill | 2021-11-05 | 1 | -31/+25 | |
| | | ||||||
| * | `@(linkage=<string>)` for procedures and variables; `@(require)` for ↵ | gingerBill | 2021-11-04 | 1 | -0/+13 | |
| | | | | | procedures; `package runtime` linkage improvements; Subsequence improvements to `lb_run_remove_unused_function_pass` | |||||
| * | Add `ODIN_LLVM_MINIMUM_VERSION_12` | gingerBill | 2021-10-25 | 1 | -1/+1 | |
| | | ||||||
| * | Update alignment rules for `matrix` types as a compromise to keep zero padding | gingerBill | 2021-10-25 | 1 | -2/+6 | |
| | | ||||||
| * | Support indexing matrices | gingerBill | 2021-10-19 | 1 | -0/+30 | |
| | | ||||||
| * | Basic support for matrix*vector, vector*matrix operations | gingerBill | 2021-10-19 | 1 | -3/+5 | |
| | | ||||||
| * | Begin work on matrix type | gingerBill | 2021-10-18 | 1 | -0/+18 | |
| | | ||||||
| * | Correct ABI for windows with LLVM | gingerBill | 2021-10-02 | 1 | -0/+2 | |
| | | ||||||
| * | Add sizes to assert message | gingerBill | 2021-10-02 | 1 | -1/+4 | |
| | | ||||||
| * | Add message to assert; add sanity check for possible future behaviour | gingerBill | 2021-10-02 | 1 | -11/+14 | |
| | | ||||||
| * | Minor code cleanup for backend; add ↵ | gingerBill | 2021-10-02 | 1 | -8/+10 | |
| | | | | | `struct_fields_index_by_increasing_offset` for future use | |||||
| * | Remove need for alignment `lb_struct_has_padding_prefix` | gingerBill | 2021-10-02 | 1 | -12/+15 | |
| | | ||||||
| * | Heavily improve the LLVM struct type generation to improve ABI | gingerBill | 2021-10-02 | 1 | -65/+50 | |
| | | ||||||
| * | Fix #1174 | gingerBill | 2021-09-18 | 1 | -1/+5 | |
| | | ||||||
| * | LLVM Code Generator: Add explicitly padding between fields in LLVM struct types | gingerBill | 2021-09-13 | 1 | -15/+55 | |
| | | ||||||
| * | Replace many uses of `heap_allocator()` with `permanent_allocator()` | gingerBill | 2021-09-13 | 1 | -2/+2 | |
| | | ||||||
| * | Begin minimize `Type` size by replacing `Array` with `Slice` etc | gingerBill | 2021-09-13 | 1 | -1/+1 | |
| | | ||||||
| * | Prepare for LLVM 12.0.1 compatibility | gingerBill | 2021-09-11 | 1 | -15/+23 | |
| | | ||||||