index
:
odin/Odin.git
bill/all_or_none
bill/any-type-switch-if-else
bill/change-license
bill/compiler-optimizations-2025-09
bill/conditional-zero
bill/const-union
bill/dir-organization
bill/disallow-128-bit
bill/fix-current-os-package
bill/fix-data-races-2026-02
bill/force-type-assert
bill/global-variable-distribution
bill/init-fini-changes
bill/integer-concatenation
bill/io-error-changes
bill/must-tail
bill/new-slice-sort
bill/range-init
bill/remove-test-suffix
bill/shared-partial-return-memory
bill/subtype-type-info
bill/typeid-sip-hash
bill/utf16-strings
core-flags
core_os2_revamp
custom-math-sin
fix-4225
llvm-12-support
master
middle-end
mimalloc
mv/libc-errors
new_os
orca-dev
text-template
update-tilde
windows-llvm-11.1.0
windows-llvm-12.0.1
windows-llvm-13.0.0
Odin Programming Language
Odin Lang
about
summary
refs
log
tree
commit
diff
log msg
author
committer
range
path:
root
/
src
/
llvm_backend.cpp
Commit message (
Collapse
)
Author
Age
Files
Lines
...
*
Fix byte swapping for endian specific types in `-llvm-api`
gingerBill
2021-03-27
1
-0
/
+11
|
*
Move variable declarations to aid other compilers
gingerBill
2021-03-25
1
-3
/
+3
|
*
Fix to `OdinLLVMBuildTransmute` to `goto general_end` on different sized data
gingerBill
2021-03-25
1
-4
/
+7
|
*
Fix pseudo-constant local slice initialization
gingerBill
2021-03-25
1
-7
/
+8
|
*
Minor zero enforcement
gingerBill
2021-03-25
1
-1
/
+1
|
*
Fix pseudo-constant local embedded slice generation
gingerBill
2021-03-25
1
-3
/
+39
|
*
Change to assert to test both LLVMIsConstant and LLVMIsGlobalConstant
gingerBill
2021-03-25
1
-1
/
+1
|
*
Revert change :D
gingerBill
2021-03-25
1
-1
/
+1
|
*
Another minor fix to `OdinLLVMBuildTransmute`
gingerBill
2021-03-25
1
-1
/
+1
|
*
Minor fix to `OdinLLVMBuildTransmute`
gingerBill
2021-03-25
1
-2
/
+13
|
*
Correct #c_vararg behaviour on -llvm-api
gingerBill
2021-03-25
1
-0
/
+6
|
*
Add SOA struct len/cap/allocator fields for the debug symbols
gingerBill
2021-03-24
1
-19
/
+64
|
*
Ensure pointers are of the same type in LLVM ICmp
gingerBill
2021-03-24
1
-1
/
+9
|
*
Support `using` on intermediate soa field value from a for-in statement
gingerBill
2021-03-24
1
-2
/
+13
|
*
Implement `soa_unzip`
gingerBill
2021-03-24
1
-0
/
+29
|
*
`soa_zip` (-llvm-api only): creates an `#soa[]struct` from passed slices
gingerBill
2021-03-24
1
-0
/
+31
|
|
|
|
|
|
|
|
|
|
|
|
x := []i32{1, 3, 9}; y := []f32{2, 4, 16}; z := []b32{true, false, true}; s_anonymous := soa_zip(x, y, z); assert(s_anonymous[0]._1 == 2); s_named := soa_zip(a=x, b=y, c=z); assert(s_anonymous[0].b == 2);
*
Support #soa array iteration in a `for in` loop for `-llvm-api` backend only
gingerBill
2021-03-24
1
-7
/
+101
|
*
Make the parser support as many identifiers on the LHS in `for in` loops to ↵
gingerBill
2021-03-24
1
-10
/
+10
|
|
|
|
improve error messages
*
Support `using` variables in debug information
gingerBill
2021-03-24
1
-1
/
+10
|
*
For `bit_set`, allow `+` and `-` to be aliases for `|` and `&~`, respectively
gingerBill
2021-03-23
1
-0
/
+7
|
*
`bit_set` support in debug symbols by treating them like a bit field of 1 ↵
gingerBill
2021-03-23
1
-69
/
+117
|
|
|
|
bit booleans
*
Prefix named types with package name in debug types
gingerBill
2021-03-23
1
-0
/
+3
|
*
Improve debug type names for composite types (arrays, map, struct, union)
gingerBill
2021-03-23
1
-46
/
+44
|
*
Clean up some debug type code
gingerBill
2021-03-23
1
-131
/
+113
|
*
Add global variables to -llvm-api debug information
gingerBill
2021-03-23
1
-1
/
+2
|
*
Move LLVM optimization procedures to a separate file to aid with organization
gingerBill
2021-03-23
1
-90
/
+33
|
*
Fix debug information for `typeid` on -llvm-api
gingerBill
2021-03-22
1
-2
/
+3
|
*
Correct debug info for basic composite types (e.g. `string`, `any`)
gingerBill
2021-03-22
1
-89
/
+143
|
*
Add local debug variable support for -llvm-api
gingerBill
2021-03-22
1
-54
/
+151
|
*
Start work on very basic LLVM debug type information
gingerBill
2021-03-22
1
-31
/
+292
|
*
Begin integrating work from branch llvm-debug-symbols
gingerBill
2021-03-20
1
-423
/
+552
|
*
Fix LLVMConstArray usage
gingerBill
2021-03-19
1
-6
/
+12
|
*
Fix LLVM asserts
gingerBill
2021-03-19
1
-4
/
+7
|
*
Fix some LLVM asserts by using LLVMConstNamedStruct everywhere
gingerBill
2021-03-19
1
-52
/
+93
|
*
Add `pkg` field to `testing.Internal_Test`
gingerBill
2021-03-14
1
-3
/
+10
|
*
`odin test` to work with the new `core:testing` package
gingerBill
2021-03-14
1
-3
/
+49
|
*
Add `intrinsics.volatile_store` and `intrinsics.volatile_load`
gingerBill
2021-03-09
1
-0
/
+4
|
*
Remove test code
gingerBill
2021-03-06
1
-3
/
+0
|
*
Fix `context` bug with `deferred_*` attributes which caused a new `context` ↵
gingerBill
2021-03-06
1
-44
/
+69
|
|
|
|
to be created every time
*
Minimize the size of `runtime.Source_Code_Location` to use `i32` instead of ↵
gingerBill
2021-03-05
1
-14
/
+14
|
|
|
|
`int`
*
Minimize TokenPos size by using `i32` for line/column/offset and file_id ↵
gingerBill
2021-03-04
1
-16
/
+16
|
|
|
|
|
|
instead of `String` To make `i32` safe, the parser limits the file size of odin files to a maximum of 2GiB (which will be good enough for the vast vast majority of cases)
*
Clean up logic for `<<` and `>>` behaviour
gingerBill
2021-03-02
1
-4
/
+4
|
*
Re-enable "LLVM Function Pass"
gingerBill
2021-03-02
1
-1
/
+1
|
*
Clean up `lb_end_procedure_body` logic
gingerBill
2021-03-02
1
-22
/
+3
|
*
Fix Addressing for SOA on store; Add intrinsics.type_struct_field_count(T)
gingerBill
2021-03-01
1
-6
/
+23
|
*
Improve `lb_end_procedure_body` logic
gingerBill
2021-03-01
1
-11
/
+35
|
*
Remove hack in `lb_addr_store`
gingerBill
2021-03-01
1
-13
/
+34
|
*
Minor changes to function pass manager in llvm_backend.cpp
gingerBill
2021-02-27
1
-27
/
+33
|
*
Fix LLVM -opt:2 bug for initializing global variables
gingerBill
2021-02-27
1
-21
/
+43
|
*
Patch issue with minimum dependency system and how it interacts with para ↵
gingerBill
2021-02-26
1
-2
/
+5
|
|
|
|
poly procedures
[prev]
[next]