gingerBill
|
394e4fcbad
|
Add __extendhfsf2 for macOS
|
2021-04-05 18:44:08 +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
|
46c5c7d1ec
|
Experiment with different opt passes
|
2021-04-01 23:41:01 +01:00 |
|
gingerBill
|
bcda9ddee7
|
Add core:math/fixed
|
2021-04-01 17:09:34 +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
|
0fc04a939e
|
Add f16 support to core:math/linalg
|
2021-04-01 11:12:40 +01:00 |
|
gingerBill
|
3e1b4c17ac
|
Fix alignment for complex32 and quaternion64
|
2021-04-01 11:10:17 +01:00 |
|
gingerBill
|
b3e788b9d9
|
Fix missing complex32/quaternion64 checks
|
2021-04-01 10:56:57 +01:00 |
|
gingerBill
|
63bb26c0e0
|
Add f16 specific procedures to core:math
|
2021-04-01 10:52:46 +01:00 |
|
gingerBill
|
b3dce34bc6
|
Add min(f16) and max(f16) support
|
2021-04-01 10:35:07 +01:00 |
|
gingerBill
|
491b282615
|
Add extra optimization level pass -opt:2 in lb_populate_module_pass_manager
|
2021-04-01 10:31:46 +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
|
fbd01660ee
|
Experiment with new grammatical parsing rule for expression level (-strict-style) idea
|
2021-03-30 11:48:32 +01:00 |
|
gingerBill
|
439e2c9242
|
Fix shifting limits and LLVM code gen bug relating to shifts
|
2021-03-29 23:15:31 +01:00 |
|
gingerBill
|
6fb0868517
|
Remove dead code and comments
|
2021-03-29 22:45:36 +01:00 |
|
gingerBill
|
e1588c9322
|
Remove LLVMPassManagerBuilder usage in lb_populate_module_pass_manager; simplify lb_populate_function_pass_manager
|
2021-03-29 22:04:54 +01:00 |
|
gingerBill
|
8fcc6ca464
|
Add LLVM_USE_NO_EXTRA_PASSES build flag
|
2021-03-29 16:51:06 +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
|
fc8c94324e
|
Fix typo
|
2021-03-29 15:43:33 +01:00 |
|
gingerBill
|
8c20ac1bf0
|
Add optional LLVM_USE_BASIC_PASSES build flag. If evaluates to a truthy value, it will be do only basic passes for -llvm-api
|
2021-03-29 14:55:37 +01:00 |
|
gingerBill
|
371094b067
|
Remove LLVMAddScalarReplAggregatesPass from passes
|
2021-03-29 14:50:09 +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
|
818942b72e
|
Minor code style change
|
2021-03-27 17:26:38 +00:00 |
|
gingerBill
|
9bac9af022
|
Clean up code for record type checking
|
2021-03-27 17:25:56 +00:00 |
|
gingerBill
|
342761e83a
|
Refactor record polymorphic params code for unification
|
2021-03-27 17:21:12 +00:00 |
|
gingerBill
|
87bc9275fe
|
Correct poly type determination of a where clause for an enumerated array
|
2021-03-27 16:49:56 +00:00 |
|
gingerBill
|
5ade037b7d
|
Refactor polymorphic parameter for records; Improve error message for parametric polymorphic enumerated array index types
|
2021-03-27 16:42:42 +00:00 |
|
gingerBill
|
1e587d6635
|
Fix #883 - polymorphic specialization with target types of enumerated arrays
|
2021-03-27 15:22:05 +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
|
01c2662de4
|
Simplify ir_print.cpp escape byte code
|
2021-03-27 12:17:12 +00:00 |
|
gingerBill
|
bd607b131e
|
Fix #882
|
2021-03-27 12:13:17 +00:00 |
|
gingerBill
|
43ac6ca8f4
|
Add linalg.matrix_cast
|
2021-03-26 16:24:56 +00:00 |
|
gingerBill
|
62d2656f69
|
Add linalg.matrix_cast
|
2021-03-26 14:33:46 +00:00 |
|
gingerBill
|
a611cf545d
|
Add basic error correction in parser to check for unattached else
|
2021-03-26 11:39:46 +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
|
6668fd44cf
|
Merge branch 'master' of https://github.com/odin-lang/Odin
|
2021-03-25 20:23:49 +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
|
1aecd7f5ff
|
Add support for soa slice reference iteration
|
2021-03-24 22:39:29 +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
|
6c9d3715d8
|
Add type hinting to soa_zip
|
2021-03-24 18:08:34 +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
|
a5329ae48c
|
Add better package declaration specific error message (#878)
|
2021-03-24 14:34:30 +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
|
bec42e8dd3
|
Improve core:odin/ast ast.Range_Stmt to use generic number of vals rather than the fixed two to aid with parsing errors
|
2021-03-24 12:34:06 +00:00 |
|
gingerBill
|
d969d0b264
|
Make for in logic a bit more generic
|
2021-03-24 12:31:05 +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
|
082381284c
|
Remove dead code
|
2021-03-23 23:23:40 +00:00 |
|
gingerBill
|
ccd078620b
|
Improve error message in parser
|
2021-03-23 23:05:00 +00:00 |
|
gingerBill
|
08f7d3edbe
|
Allow $ in polymorphic record parameter fields (but disallow mixing)
|
2021-03-23 22:59:10 +00:00 |
|
gingerBill
|
c62980eaea
|
Minor improvement to error message about assigning a type to a variable with no inference
|
2021-03-23 22:33:32 +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 |
|
gingerBill
|
e229882fde
|
Clean up some debug type code
|
2021-03-23 19:33:22 +00:00 |
|
gingerBill
|
300f988905
|
Add global variables to -llvm-api debug information
|
2021-03-23 18:34:20 +00:00 |
|
gingerBill
|
7f6a43f0af
|
Move LLVM optimization procedures to a separate file to aid with organization
|
2021-03-23 18:24:49 +00:00 |
|
gingerBill
|
ccd91aee5c
|
Fix debug information for typeid on -llvm-api
|
2021-03-22 16:14:58 +00:00 |
|
gingerBill
|
bf46a3f1d3
|
Correct debug info for basic composite types (e.g. string, any)
|
2021-03-22 15:36:18 +00:00 |
|
gingerBill
|
8ab1b32fe1
|
Add local debug variable support for -llvm-api
|
2021-03-22 14:51:19 +00:00 |
|
gingerBill
|
0355908af8
|
Start work on very basic LLVM debug type information
|
2021-03-22 13:09:23 +00:00 |
|
gingerBill
|
fd7d70954e
|
Begin integrating work from branch llvm-debug-symbols
|
2021-03-20 13:10:53 +00:00 |
|
gingerBill
|
cb0bd80f50
|
Fix LLVMConstArray usage
|
2021-03-19 16:59:46 +00:00 |
|
gingerBill
|
5a67e6ecbd
|
Fix LLVM asserts
|
2021-03-19 16:53:22 +00:00 |
|
gingerBill
|
c8a823a387
|
Add ExternC.h
|
2021-03-19 15:49:07 +00:00 |
|
gingerBill
|
178e891c78
|
Fix some LLVM asserts by using LLVMConstNamedStruct everywhere
|
2021-03-19 15:47:10 +00:00 |
|
gingerBill
|
bda9eb7348
|
Update llvm-c headers for Version 11.0.1
|
2021-03-19 15:46:33 +00:00 |
|
gingerBill
|
3337412228
|
split*_iterator procedures for package bytes and strings
|
2021-03-18 13:26:33 +00:00 |
|
gingerBill
|
e3f9d99a3b
|
Merge branch 'master' of https://github.com/odin-lang/Odin
|
2021-03-18 13:25:47 +00:00 |
|
gingerBill
|
359ae29d98
|
Minor fixes
|
2021-03-18 13:25:41 +00:00 |
|
gingerBill
|
04e0cacd30
|
Update package core:math/linalg to support matrix3 euler angle operations
|
2021-03-16 12:14:54 +00:00 |
|
gingerBill
|
b94ab4dc05
|
Make check_single_global_entity use create_checker_context
|
2021-03-15 14:05:38 +00:00 |
|
gingerBill
|
f5142aaec4
|
Change from test_* prefix to @(test) attribute for odin test
|
2021-03-14 18:43:21 +00:00 |
|
gingerBill
|
db0ac2ba98
|
Add "NO TESTS RAN" message to testing.runner if no tests were ran
|
2021-03-14 18:17:00 +00:00 |
|
gingerBill
|
468ad4837b
|
Add pkg field to testing.Internal_Test
|
2021-03-14 18:15:08 +00:00 |
|
gingerBill
|
2aa588209e
|
odin test to work with the new core:testing package
|
2021-03-14 18:01:31 +00:00 |
|
gingerBill
|
10f91a0d3f
|
Make base32 and base64 adhere to -strict-style
|
2021-03-14 12:54:28 +00:00 |
|