Laytan Laats
3b22c0854c
fix some LLVM assertions
2024-09-11 22:45:16 +02:00
gingerBill
b0fe777ede
Propagate rodata a bit more in lb_const_value
2024-07-23 03:01:09 +01:00
gingerBill
bc5b41938e
Fix #3964
2024-07-23 02:40:51 +01:00
gingerBill
1e37eaf54d
Begin work for bit_set[...; [N]T] (not working)
2024-07-15 14:49:20 +01:00
gingerBill
399c3ab067
Reduce the size of runtime.Type_Info
2024-07-14 21:37:35 +01:00
Laytan Laats
1bd9fe04c4
Fix assertion false positive
...
Assertion was added in #3855 - 7233149096
to mimic LLVM's own internal assertion for this, turns out their
assertion is more sophisticated than an `==` so lets just remove it.
To be clear their internal assertion is not hit while this one is, which
defeats the purpose of ours.
2024-07-04 23:55:21 +02:00
Laytan Laats
7233149096
fix llvm assertion failure when const initializer is not the same type
2024-07-02 01:25:52 +02:00
gingerBill
330d6117e3
Fix #3589
2024-05-16 15:43:08 +01:00
gingerBill
ec45504631
Obfuscate #line
2024-04-08 16:14:47 +01:00
gingerBill
810cf22e5d
Obfuscate #file and #procedure when -obfuscate-source-code-locations is enabled
2024-04-08 16:08:35 +01:00
rick-masters
e1b545860f
Implement endian conversions for smaller float types.
2024-03-29 11:05:27 +00:00
gingerBill
a750fc0ba6
Add #row_major matrix[R, C]T
...
As well as `#column_major matrix[R, C]T` as an alias for just `matrix[R, C]T`.
This is because some libraries require a row_major internal layout but still want to be used with row or major oriented vectors.
2024-03-19 21:05:23 +00:00
gingerBill
ca2b2c498e
Add -obfuscate-source-code-locations
2023-12-13 16:47:34 +00:00
gingerBill
bc0fa1240b
Disable using giant packed struct for type info table for the time being
2023-10-27 13:03:21 +01:00
gingerBill
082324d7b9
Begin work on making the type info table be constantly initialized
2023-09-22 14:39:51 +01:00
gingerBill
963559676e
Fix build times for -o:<string> in LLVM-17
2023-09-21 16:48:00 +01:00
gingerBill
e748d2f2af
Update to LLVM-17
2023-09-19 16:15:26 +01:00
gingerBill
3505c1d790
Fix constant literals using the wrong type
2023-09-19 15:12:44 +01:00
gingerBill
aaaff9b66c
Fix bug: Disallow non-specialized polymorphic in typeid assignment
2023-09-06 17:33:38 +01:00
gingerBill
b54f3d4ee9
Mock out more global value stuff
2023-07-20 01:54:36 +01:00
gingerBill
0bd33882b6
Basic constant compound literal support
2023-07-19 21:43:42 +01:00
gingerBill
aa38889704
Fix issue with pointer casting internal llvm intrinsics
2023-07-07 23:23:47 +01:00
gingerBill
581eebb197
Fix a race condition when produced anonymous procedure literals with -use-separate-modules
2023-06-13 13:14:59 +01:00
gingerBill
2bc5e0ebd7
Fix non-constant compound literals of slices
2023-06-07 00:10:39 +01:00
gingerBill
1c2a30d7e9
Fix constant slice initialization for wasm64p32
2023-06-06 22:51:51 +01:00
gingerBill
efb7fd919b
Minor fix to internal using logic with LLVM causing a compiler bug
2023-06-06 10:58:36 +01:00
gingerBill
8bf32ac697
Minor change to handling of propagation of errors with --- as a value
2023-05-22 12:53:29 +01:00
gingerBill
bfb231fb8a
Simplify copy elision on variable declarations
2023-03-16 17:24:29 +00:00
gingerBill
7c0257fcda
Fix value elision on declaration
2023-03-09 15:39:41 +00:00
gingerBill
a9182cfd8c
Allow compound literals to access fields through using
2023-02-26 13:26:35 +00:00
gingerBill
99460c9e32
Minimize stack wastage with compound literals defining variables
2023-02-17 14:26:22 +00:00
gingerBill
8a2a70a3c2
Fix overriding procedure information for literals
2023-02-17 13:00:37 +00:00
gingerBill
9b278db993
Revert "Change tav to be a pointer internally"
...
This reverts commit e98f1a28e6 .
2022-12-22 12:01:41 +00:00
gingerBill
e98f1a28e6
Change tav to be a pointer internally
2022-12-22 11:53:13 +00:00
gingerBill
6cdec65ca1
gb_internal LLVM backend
2022-12-18 22:32:05 +00:00
gingerBill
16fc961010
Begin work on map static set
2022-11-11 14:45:22 +00:00
gingerBill
c39ef1b25c
Ad-hoc pass source code location directly by pointer without stack copy
2022-10-31 00:25:53 +00:00
gingerBill
9da37ed394
Optimize #caller_location and #location to use read only data section where possible
2022-10-31 00:04:15 +00:00
gingerBill
f50fc33749
Clean up of the core library to make the stream vtables not be pointers directly.
2022-09-15 10:00:50 +01:00
gingerBill
3ea7af4c9c
Minor fix to lb_big_int_to_llvm
2022-09-14 17:51:33 +01:00
gingerBill
3fae8b49db
Fix pointer cast of constant procedure values
2022-09-08 17:27:13 +01:00
gingerBill
0c9aaed9f7
Fix #2029 Eumerated array of procs literal crashes the compiler with an llvm error
2022-09-07 11:09:22 +01:00
gingerBill
a7c3906003
#load(path, type)
...
where `type` can be `string` or `[]T` where `T` is a simple type
2022-08-11 14:30:14 +01:00
gingerBill
0655260378
Comment out a bit of code in lb_is_const_or_global
2022-08-09 21:13:52 +01:00
Christoffer Lerno
9c0a3b6c60
Removed use of deprecated functions. Cleaned up most deprecated use of LLVMGetElementType.
2022-08-07 19:26:28 +02:00
Phil
c9c3611b1d
remove leftover print statement
2022-07-25 15:46:47 -07:00
gingerBill
eafa5098aa
Fix #1883
2022-07-16 18:03:43 +01:00
gingerBill
a8bd340267
Merge pull request #1395 from hdooley/master
...
factor out alloca generation into a helper
2022-06-12 17:17:12 +01:00
gingerBill
f308f37ba1
Remove need for simd.splat
2022-05-26 14:51:50 +01:00
gingerBill
53f0c6ef1a
Add ranges for simd compounds literals
2022-05-25 20:31:31 +01:00