gingerBill
|
65551ba8fb
|
Add optimization_mode attribute for procedures
Allowed modes: "none", "minimal", "size", "speed"
Currently: none == minimal and size == speed
|
2021-04-22 00:04:47 +01:00 |
|
gingerBill
|
2fb0383e82
|
Add -build-mode:llvm-ir for -llvm-api backend
|
2021-04-21 23:25:08 +01:00 |
|
gingerBill
|
2f1c896290
|
Add -doc-format command for the new .odin-doc file format (to be used to generate documentation tools)
|
2021-04-18 18:33:15 +01:00 |
|
gingerBill
|
3a4373641b
|
Correct call site attributes
|
2021-04-14 17:16:10 +01:00 |
|
gingerBill
|
9adec628c1
|
Add @(cold) attribute to procedure declarations
|
2021-04-14 17:15:28 +01:00 |
|
gingerBill
|
e8bf1f2064
|
Minor fixes to platform checking code
|
2021-04-11 18:59:54 +01:00 |
|
gingerBill
|
18ab7fb68b
|
Add break; for sanity
|
2021-04-08 15:32:59 +01:00 |
|
gingerBill
|
3eaf3327d4
|
Add "Dwarf Version" metadata for darwin on -llvm-api
|
2021-04-08 15:06:23 +01:00 |
|
gingerBill
|
d721ffa6fa
|
Add assertion check on parameter types for lb_emit_call_internal
|
2021-04-06 11:26:57 +01:00 |
|
gingerBill
|
535048e2b3
|
Fix LLVMConstIntOfArbitraryPrecision usage for a pointer
|
2021-04-06 11:07:05 +01:00 |
|
gingerBill
|
f78b2a6090
|
Undo fix
|
2021-04-03 18:04:39 +01:00 |
|
gingerBill
|
46bf39cae1
|
Fix lb_emit_array_ep
|
2021-04-03 18:03:36 +01:00 |
|
gingerBill
|
4a66cbb1f4
|
Fix signed fixed arithmetic intrinsics
|
2021-04-01 17:08:34 +01:00 |
|
gingerBill
|
f0392d0c75
|
Cleanup again
|
2021-04-01 15:46:07 +01:00 |
|
gingerBill
|
3bd39886a0
|
Cleanup code for fixed-point intrinsics
|
2021-04-01 15:43:50 +01:00 |
|
gingerBill
|
cef698afd6
|
Implement fixed-point arithmetic intrinsics for -llvm-api backend
|
2021-04-01 14:36:06 +01:00 |
|
gingerBill
|
54e6c50769
|
Implement f16 functionality
|
2021-04-01 10:06:00 +01:00 |
|
gingerBill
|
3359d0323a
|
Change >> behaviour in LLVM to prevent stupid UB
|
2021-03-30 20:38:04 +01:00 |
|
gingerBill
|
439e2c9242
|
Fix shifting limits and LLVM code gen bug relating to shifts
|
2021-03-29 23:15:31 +01:00 |
|
gingerBill
|
faa0240900
|
Change how lb_populate_module_pass_manager handles the LLVMPassManagerBuilder calls
|
2021-03-29 16:40:39 +01:00 |
|
gingerBill
|
66941aed0a
|
Clamp maximum optimization level to 2 for -llvm-api
|
2021-03-29 15:51:15 +01:00 |
|
gingerBill
|
c1e125a009
|
Change alignment of alloca to a larger one if OdinLLVMBuildTransmute requires it
|
2021-03-29 14:31:26 +01:00 |
|
gingerBill
|
48767301a4
|
Another minor change to OdinLLVMBuildTransmute regarding minimum source alignment
|
2021-03-29 14:11:02 +01:00 |
|
gingerBill
|
253a3edd30
|
Change OdinLLVMBuildTransmute when to deal with loads
|
2021-03-29 14:07:25 +01:00 |
|
gingerBill
|
8239cd34eb
|
Issue #823 - Change semantics of disabled attribute to not evaluate any of the parameters at run time
|
2021-03-27 17:59:01 +00:00 |
|
gingerBill
|
e21d716720
|
Fix endian conversion to and from floats and ints
|
2021-03-27 14:33:33 +00:00 |
|
gingerBill
|
d62ff39e60
|
Remove extra passes
|
2021-03-27 13:30:15 +00:00 |
|
gingerBill
|
0ccf103160
|
Fix byte swapping for endian specific types in -llvm-api
|
2021-03-27 12:48:29 +00:00 |
|
gingerBill
|
7463ad23d8
|
Move variable declarations to aid other compilers
|
2021-03-25 22:59:15 +00:00 |
|
gingerBill
|
6271d10af7
|
Fix to OdinLLVMBuildTransmute to goto general_end on different sized data
|
2021-03-25 22:54:49 +00:00 |
|
gingerBill
|
c5c82e0551
|
Fix pseudo-constant local slice initialization
|
2021-03-25 22:47:23 +00:00 |
|
gingerBill
|
29ed1d5459
|
Minor zero enforcement
|
2021-03-25 22:34:35 +00:00 |
|
gingerBill
|
50b439daa8
|
Fix pseudo-constant local embedded slice generation
|
2021-03-25 22:27:52 +00:00 |
|
gingerBill
|
23c68b4f7a
|
Change to assert to test both LLVMIsConstant and LLVMIsGlobalConstant
|
2021-03-25 22:14:38 +00:00 |
|
gingerBill
|
615104afd1
|
Revert change :D
|
2021-03-25 20:59:24 +00:00 |
|
gingerBill
|
d3665331c7
|
Another minor fix to OdinLLVMBuildTransmute
|
2021-03-25 20:47:10 +00:00 |
|
gingerBill
|
04be6d190e
|
Minor fix to OdinLLVMBuildTransmute
|
2021-03-25 20:45:22 +00:00 |
|
gingerBill
|
0007ac63ed
|
Correct #c_vararg behaviour on -llvm-api
|
2021-03-25 20:23:43 +00:00 |
|
gingerBill
|
7c951cbf0a
|
Add SOA struct len/cap/allocator fields for the debug symbols
|
2021-03-24 23:12:54 +00:00 |
|
gingerBill
|
2d0e2625ac
|
Ensure pointers are of the same type in LLVM ICmp
|
2021-03-24 23:01:48 +00:00 |
|
gingerBill
|
5faf859a56
|
Support using on intermediate soa field value from a for-in statement
|
2021-03-24 22:34:55 +00:00 |
|
gingerBill
|
7028797d53
|
Implement soa_unzip
|
2021-03-24 19:29:25 +00:00 |
|
gingerBill
|
989a03dc77
|
soa_zip (-llvm-api only): creates an #soa[]struct from passed slices
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);
|
2021-03-24 17:33:05 +00:00 |
|
gingerBill
|
2ec3326653
|
Support #soa array iteration in a for in loop for -llvm-api backend only
|
2021-03-24 14:31:44 +00:00 |
|
gingerBill
|
0e3ecc350a
|
Make the parser support as many identifiers on the LHS in for in loops to improve error messages
|
2021-03-24 12:11:00 +00:00 |
|
gingerBill
|
295c1550a8
|
Support using variables in debug information
|
2021-03-24 10:57:00 +00:00 |
|
gingerBill
|
fc1a352285
|
For bit_set, allow + and - to be aliases for | and &~, respectively
|
2021-03-23 23:34:01 +00:00 |
|
gingerBill
|
d88d6a1fdd
|
bit_set support in debug symbols by treating them like a bit field of 1 bit booleans
|
2021-03-23 22:09:16 +00:00 |
|
gingerBill
|
f1e13bdddb
|
Prefix named types with package name in debug types
|
2021-03-23 20:45:39 +00:00 |
|
gingerBill
|
331167e91f
|
Improve debug type names for composite types (arrays, map, struct, union)
|
2021-03-23 20:41:49 +00:00 |
|