Christoffer Lerno
|
fb56d380cc
|
Builtins work. Math library exposes some builtins. Volatile store / load.
|
2021-11-13 12:31:45 +01:00 |
|
Christoffer Lerno
|
7bd76c973c
|
Placeholders for builtins. Updated character literal parsing, supporting 1-16 characters. More test cases.
|
2021-11-12 10:13:15 +01:00 |
|
Christoffer Lerno
|
42465039e9
|
Updated character parsing.
|
2021-11-10 21:58:17 +01:00 |
|
Christoffer Lerno
|
137b474f44
|
Update tester to read utf-8
|
2021-11-08 22:22:01 +01:00 |
|
Christoffer Lerno
|
4662133893
|
Updates to bitstruct
|
2021-11-08 22:22:01 +01:00 |
|
Christoffer Lerno
|
15f902579b
|
Removed virtual
|
2021-11-08 22:22:01 +01:00 |
|
Christoffer Lerno
|
4e47f0b624
|
Fixes to bitstruct and work on correct behaviour when embedded in structs.
|
2021-11-08 22:22:01 +01:00 |
|
Christoffer Lerno
|
4f09b0c351
|
Bitstruct implementation.
|
2021-11-05 11:59:30 +01:00 |
|
Christoffer Lerno
|
29e7af843a
|
Remove old try-catch. Top down promotion for binary etc. Prevent non-simple widening. Introducing wildcard failable. Move LLVM GEP usage. Regcall test and fix. Optimized slice assign.
|
2021-10-26 18:40:41 +02:00 |
|
Christoffer Lerno
|
9942be54dc
|
More optimized memclear. Added helper function on array gep.
|
2021-10-21 23:37:14 +02:00 |
|
Christoffer Lerno
|
b87e14cba8
|
Enum const inlining.
|
2021-10-21 15:13:11 +02:00 |
|
Christoffer Lerno
|
4ca7ba048b
|
Updated to use ?, ?? and !! instead of !!, else and "else $unreachable"
|
2021-10-20 23:27:13 +02:00 |
|
Christoffer Lerno
|
1b38e24a9f
|
Make it an error to do x < 0 when x is an unsigned integer.
|
2021-10-20 18:53:43 +02:00 |
|
Christoffer Lerno
|
86723540f3
|
$switch over values.
|
2021-10-20 17:49:07 +02:00 |
|
Christoffer Lerno
|
aa239c6a87
|
Allow "fn" instead of "func". Rewrote $switch over types.
|
2021-10-20 16:30:45 +02:00 |
|
Christoffer Lerno
|
76e4eea4a8
|
Fix missing support for array[] as return types. Fix bug with &&-folding. Added tests.
|
2021-10-20 11:57:41 +02:00 |
|
Christoffer Lerno
|
43a4967987
|
Fix macro return value handling. #252
|
2021-10-20 00:59:44 +02:00 |
|
Christoffer Lerno
|
55f676dd5c
|
Fix to testscript.
|
2021-10-19 20:57:47 +02:00 |
|
Christoffer Lerno
|
96571e2b65
|
Update tester to avoid adding CR on win.
|
2021-10-19 20:48:48 +02:00 |
|
Christoffer Lerno
|
8e93642535
|
LLVM 13 compatibility. Move Ubuntu CI to LLVM 12.
|
2021-10-19 18:32:31 +02:00 |
|
Christoffer Lerno
|
d36fc9b19e
|
Formatting.
|
2021-10-19 16:47:25 +02:00 |
|
Christoffer Lerno
|
b4df56db54
|
Removed original_type, pure, removed bigint, added i128 type, lots of fixes to $Foo, reassigning ct type, catch/macro, "!", removed type inference.
|
2021-10-19 10:39:02 +02:00 |
|
Christoffer Lerno
|
1b086e06f1
|
Fix of miscompilation
|
2021-10-07 13:53:11 +02:00 |
|
Christoffer Lerno
|
aca5adebd5
|
Fix for token widening and added clarifying casts for sema checks.
|
2021-10-03 22:18:26 +02:00 |
|
Christoffer Lerno
|
ae371d105d
|
Add vector ++ -- ! ~ - | & ^ ops and allow .c3t to be compiled.
|
2021-09-30 13:54:51 +02:00 |
|
Christoffer Lerno
|
020eba720b
|
Added initial (incomplete) support for vectors.
|
2021-09-28 14:19:28 +02:00 |
|
Christoffer Lerno
|
0a4f35154a
|
Addeded some hash functions. Fix of visibility resolution for macros. std lib is now loaded from a directory.
|
2021-09-22 10:27:10 +02:00 |
|
Christoffer Lerno
|
fb9be722bc
|
Fix issue with default macro arguments. Test of ?? instead of else. Added libc
|
2021-09-20 22:25:01 +02:00 |
|
Christoffer Lerno
|
e4c7dde30b
|
Fix of shadowing bug. Allow pointer and subarrays to be constant initialized. Compile time values may now pass around anything considered compile time constant. It's possible to index into an initializer list at compile time. (Some work still remains on this)
|
2021-09-18 01:13:42 +02:00 |
|
Christoffer Lerno
|
17dcb742c6
|
Fixed codegen for subarray global initializers. Adding fasta example.
|
2021-09-11 00:44:35 +02:00 |
|
Christoffer Lerno
|
b7e423adc2
|
Update .len for subarray to not require ()
|
2021-09-10 19:44:27 +02:00 |
|
Christoffer Lerno
|
bcda6d71c9
|
AST printout removed. Split initializer types. Const list functionality.
|
2021-09-10 15:47:23 +02:00 |
|
Christoffer Lerno
|
29b3535460
|
Added fannkuch example.
|
2021-09-10 09:20:27 +02:00 |
|
Christoffer Lerno
|
468921225d
|
Compound literal uses Foo {} now.
|
2021-09-08 16:43:02 +02:00 |
|
Christoffer Lerno
|
19c2f86f37
|
Fix issue with passing function pointers.
|
2021-08-31 19:10:00 +02:00 |
|
Christoffer Lerno
|
bb9e84d329
|
Make errors usable from other units. Order subarray elements correctly. Correct subarray -> pointer cast. Prevent unwrapping of catch in switch.
|
2021-08-31 18:12:30 +02:00 |
|
Christoffer Lerno
|
69d9775876
|
Removed define for declaring ct vars and replaced it with var for declarations. Updated error messages. Added $defined.
|
2021-08-31 12:44:18 +02:00 |
|
Christoffer Lerno
|
6e386538dc
|
Fixed bool->bool casts. Fixed ternary with boolean "legs". Removed some superfluous code.
|
2021-08-28 13:39:15 +02:00 |
|
Christoffer Lerno
|
8731634f4d
|
Unified constants (enum, error types, typeid). Removed EXPR_MEMBER_ACCESS. Added if-catch-switch. switch-case can handle non constant values. Inlining removed on O0. Added subarray comparison allowing string cases.
|
2021-08-27 19:13:32 +02:00 |
|
Christoffer Lerno
|
1751e7ece5
|
Remove old try/catch. Remove incorrect flattening. Basic asm. Start work on if-catch-switch.
|
2021-08-24 12:41:20 +02:00 |
|
Christoffer Lerno
|
f7803fd192
|
Add @naked attribute
|
2021-08-22 23:54:13 +02:00 |
|
Christoffer Lerno
|
fdcc189f41
|
Complete missing functionality with $nameof / $extnameof / $qnameof
|
2021-08-22 18:44:26 +02:00 |
|
Christoffer Lerno
|
7c7ee58b6b
|
Fix in byte output for globals.
|
2021-08-21 22:16:35 +02:00 |
|
Christoffer Lerno
|
f198e6c53a
|
Added multi line strings raw strings. This also somewhat improves error reporting on strings.
|
2021-08-21 21:50:41 +02:00 |
|
Christoffer Lerno
|
64f20da080
|
Better handling of void/void*, unified local/global var analysis. Native base64 / hex data array (needs more checks)
|
2021-08-20 10:29:17 +02:00 |
|
Christoffer Lerno
|
232632b74e
|
Add section with (incomplete) checking for mach-o
|
2021-08-18 22:28:43 +02:00 |
|
Christoffer Lerno
|
b4be829c71
|
Assert a try will unwrap. #271
|
2021-08-18 18:22:05 +02:00 |
|
Christoffer Lerno
|
f180a0d44a
|
Change anyerror { i64, i64 } -> i64. Cleaned up platform data and max tls / vector align. Initial work on bitstruct (just parsing). Updated try / catch semantics.
|
2021-08-18 17:31:09 +02:00 |
|
pitust
|
95836e98a2
|
Create {x86,x64}-elf targets, and make all targets more consistent (#273)
* Add triples for x86 and x64 targets
|
2021-08-16 18:38:56 +02:00 |
|
Christoffer Lerno
|
bc4ed2b213
|
Use assert functions on various platforms.
|
2021-08-16 16:43:53 +02:00 |
|