aboutsummaryrefslogtreecommitdiff
path: root/src/llvm_backend.hpp
Commit message (Expand)AuthorAgeFilesLines
* Migrate and remove more from gb.hgingerBill2021-08-191-4/+2
* Unify semantics of the built-in `swizzle` procedure with the selector express...gingerBill2021-08-091-0/+5
* Reorganize llvm_backend.cpp into separate files for easier maintenancegingerBill2021-08-071-0/+17
* Add `missing_procedures_to_check` to `lbModule`gingerBill2021-08-031-0/+1
* Just create `context` when requiredgingerBill2021-06-141-1/+0
* Improve vector arithmetic generation for array programming operationsgingerBill2021-06-121-1/+2
* Experimental support for inline swizzling for array types of len <= 4 e.g. `v...gingerBill2021-06-051-1/+6
* Heavily improve the copy elision logic in the backendgingerBill2021-05-241-3/+8
* Add `byval` with `align`, `sret` attributes for SysVgingerBill2021-05-111-0/+1
* Move anonymous proc generation into `lbGenerator`gingerBill2021-05-041-0/+2
* Prepare to multithread object generationgingerBill2021-05-031-2/+2
* Minor fixes to -use-separate-modulesgingerBill2021-05-031-1/+2
* Experimental support for `-use-separate-modules`gingerBill2021-05-031-0/+1
* Begin work on making LLVM backend work with multiple modules for possible fas...gingerBill2021-05-031-3/+8
* Begin cleanup for allowing for multiple LLVM modulesgingerBill2021-05-031-1/+3
* Simplify/Fix the state_flag behaviour for code generationgingerBill2021-05-011-2/+1
* Add "naked" calling convention (removes prologue and epilogue)gingerBill2021-04-281-0/+1
* Add `intrinsics.count_zeros`gingerBill2021-04-251-0/+1
* Rename intrinsics to count_trailing_zeros and count_leading_zerosgingerBill2021-04-251-2/+2
* Replace many `foreign` llvm calls with intrinsicsgingerBill2021-04-251-0/+1
* Remove the need for `LLVM_BACKEND_SUPPORT`gingerBill2021-04-251-2/+0
* Move out some intrinsics into separate procedures in llvm_backend.cpp; Rename...gingerBill2021-04-241-0/+6
* Reuse unused 'context' variables to minimize stack usage (-llvm-api)gingerBill2021-04-221-0/+1
* Add intrinsics: overflow_add, overflow_sub, overflow_mul; Change byte swap be...gingerBill2021-04-221-1/+1
* Add `@(cold)` attribute to procedure declarationsgingerBill2021-04-141-0/+7
* Support #soa array iteration in a `for in` loop for `-llvm-api` backend onlygingerBill2021-03-241-0/+1
* Start work on very basic LLVM debug type informationgingerBill2021-03-221-0/+18
* Begin integrating work from branch llvm-debug-symbolsgingerBill2021-03-201-0/+28
* Fix some LLVM asserts by using LLVMConstNamedStruct everywheregingerBill2021-03-191-1/+1
* Fix `context` bug with `deferred_*` attributes which caused a new `context` t...gingerBill2021-03-061-2/+3
* Add `-vet-extra` (checks for unneeded casts and transmutes)gingerBill2021-03-031-3/+0
* Fix LLVM -opt:2 bug for initializing global variablesgingerBill2021-02-271-0/+1
* Begin work on aarch64 ABI for `-llvm-api`gingerBill2021-02-241-1/+1
* Remove `bit_field` type from Odin (keyword and dead runtime code still exists)gingerBill2021-02-191-1/+0
* Improve const hashgingerBill2020-11-291-1/+1
* Add `intrinsics.type_hasher_proc`; Make `map` work with generic hasher proceduregingerBill2020-11-291-1/+3
* Add intrinsics.type_equal_proc; Make `map` use an internal equal procedure to...gingerBill2020-11-291-0/+2
* Update package json for new map layout; Correct llvm-api includes for *nixgingerBill2020-11-251-0/+19
* Add comparisons to structs where all fields are comparable `==` and `!=`gingerBill2020-11-231-0/+2
* Modify llvm_abi.cpp to work correctly for win64 abi of `i128` types. (it's a ...gingerBill2020-11-221-0/+1
* Update LLVM backend to begin work on a generic ABI systemgingerBill2020-11-121-0/+3
* Fix `typeid_of` buggingerBill2020-11-101-1/+1
* Fix and clean up default procedure parameter code for non-constant typesgingerBill2020-09-221-0/+3
* Expose `runtime._startup_runtime` to allow for freestanding targets in the fu...gingerBill2020-09-151-3/+0
* Fix Source_Code_Location error for *_insert_dynamic_map_key_and_value proceduresgingerBill2020-07-081-1/+3
* Fix `@static` slice for LLVM C API backendgingerBill2020-06-151-1/+1
* Update logic for slice literals, backing array to be on the stack if possible...gingerBill2020-06-081-2/+3
* Fix calling convention stuff with LLVM C APIgingerBill2020-06-031-0/+1
* Fix edge cases of relative pointersgingerBill2020-05-171-1/+6
* LLVM C backend: Obey directives on blocks, procedures, and expressionsTetralux2020-05-161-0/+2