Christoffer Lerno
1548cd06ef
Enable local multi-declarations. Fix of builtin argument checking. Migrate to @noinit.
2023-02-11 02:03:02 +01:00
Christoffer Lerno
18de9a146b
Fix copysign and make floatparse more strict.
2023-02-11 00:41:44 +01:00
Christoffer Lerno
ddd8be0f38
Fix global noinit. Add @noinit. With tests.
2023-02-11 00:10:02 +01:00
Christoffer Lerno
74d868d113
Fix of bug in !floatval codegen. Added float parsing.
2023-02-10 22:17:55 +01:00
Christoffer Lerno
b3f15a867c
Added "clear" to VarString
2023-02-10 08:40:08 +01:00
Christoffer Lerno
0a0cc4b5df
Header printout complete. "@export" added but might get removed.
2023-02-09 23:16:18 +01:00
Christoffer Lerno
f313e90e28
Some work on headers. Fix unsigned negation on consts.
2023-02-09 09:15:51 +01:00
Christoffer Lerno
a6b9405e21
Fix @expect.
2023-02-07 15:45:46 +01:00
Christoffer Lerno
508cc8f29f
Update comment.
2023-02-07 15:40:56 +01:00
Christoffer Lerno
1843870dfd
Fix MSVC
2023-02-07 11:16:35 +01:00
Christoffer Lerno
926dbfc535
Fix "int $f = 1;" and int $f;
2023-02-07 00:22:31 +01:00
Christoffer Lerno
cc189a8166
Support user defined attributes in generic modules. Fix bug with user defined attributes with parameters. Fix bug that would overwrite attributes when parsing user defined attributes.
2023-02-06 23:31:03 +01:00
Christoffer Lerno
c89dbba6d1
Conform to the aarch64 ABI when passing invalid vectors.
2023-02-06 22:54:59 +01:00
Christoffer Lerno
9e4203e267
Fix missing "max type" cases.
2023-02-06 21:53:33 +01:00
Christoffer Lerno
6cef75b608
Removes win x86 target. Add win aarch64. Fixes to jump buffer sizes. Fix returning bool[2] in the SysV ABI. Array comparison now works. Prevent flexible array comparisons. Prevent zero size unions.
2023-02-06 18:09:31 +01:00
Christoffer Lerno
3c4796d65a
Insert nullcheck for & params on the callee side.
2023-02-05 23:18:35 +01:00
Christoffer Lerno
e0252a6d7a
Make it possible to use @deprecated in docs.
2023-02-05 22:13:50 +01:00
Christoffer Lerno
505543e9b4
Remove import of std::array
2023-02-05 20:59:42 +01:00
Christoffer Lerno
86e085e0c0
Move collection types. Improve linked list interface. Update map.destroy => map.free
2023-02-05 20:55:47 +01:00
Christoffer Lerno
4a102698b2
Add tests to math and add info in readme how to contribute.
2023-02-05 14:30:06 +01:00
Christoffer Lerno
5a65a57e42
Catch macro infinite recursion. Fix of tan function.
2023-02-05 00:21:26 +01:00
Christoffer Lerno
38b44a7265
Fix of tan.
2023-02-04 23:32:17 +01:00
Christoffer Lerno
0f7d21330a
Optimize optional return.
2023-02-04 19:48:42 +01:00
Christoffer Lerno
dce171670f
Use printn rather than println. Add string methods for copying.
2023-02-04 19:48:42 +01:00
Christoffer Lerno
6b928c7a3d
Add saturated math and expect macros.
2023-02-03 00:25:29 +01:00
Christoffer Lerno
6407eb47a4
Remove of @extname in stdlib.
2023-02-02 21:53:37 +01:00
Christoffer Lerno
3b3dd334e0
Remove $if in thread
2023-02-02 21:41:57 +01:00
Christoffer Lerno
3b3773663a
Adding sincos / libc tan/tanf.
2023-02-02 19:29:29 +01:00
Christoffer Lerno
0f4d20f168
Fix issue with hex floats with f being assumed to be double. Added cos sincos sincosf pow2 pow2f to nolibc.
2023-02-02 13:20:52 +01:00
Christoffer Lerno
1d8e341572
Wasm allocator is now __heap_base aware. Make builds overridable from the project.
2023-02-01 16:42:45 +01:00
Kenta
f9b6f1da0e
Update trig.c3
...
Add cosf
2023-02-01 16:42:16 +01:00
Christoffer Lerno
6a3219ad43
Make thread allocator take the thread allocator by default for allocating initial memory. Add some int128 methods. Fix attribute parsing.
2023-02-01 14:06:14 +01:00
Christoffer Lerno
f916aa9189
More support for working with win32 types.
2023-01-31 20:54:42 +01:00
Christoffer Lerno
c665a431ad
Make wasm use .wasm for executables.
2023-01-31 19:46:53 +01:00
Christoffer Lerno
4ea81fe636
More riscv tests. Fix missing zero/signext attributes on calls. Fixes and simplification to riscv ABI.
2023-01-31 14:09:32 +01:00
Christoffer Lerno
0afd55425a
More ABI cleanup and fixes to RISC-V ABI + tests for riscv32.
2023-01-30 23:46:06 +01:00
Kenta
dbb759713f
Update build-with-docker.sh
...
Improve the bash script by taking user input straight to a variable with read -p.
Clean the code up.
2023-01-30 23:44:40 +01:00
Kenta
61cc8163f9
Update docker script and dockerfile
...
Using Ubuntu 23 throws an error "groupadd: GID '1000' already exists" when trying to build. Ubuntu 22 works fine.
There should be no difference between building C3 on Ubuntu 22 vs 23.
To avoid issues raised it's best to move to single Ubuntu version that builds the compiler.
2023-01-30 21:47:37 +01:00
Christoffer Lerno
adf84e38d0
Update LLVM versions.
2023-01-30 13:54:28 +01:00
Christoffer Lerno
ae4658933a
Add missing version bump.
2023-01-30 12:39:46 +01:00
Christoffer Lerno
539d733ceb
Remove LLVM 14 support. Simplify ABI lowering.
2023-01-30 12:39:04 +01:00
Christoffer Lerno
124a18a486
Fix bug with enum associated values.
2023-01-29 19:15:13 +01:00
Christoffer Lerno
3046a9f0c2
Fix File.printf
2023-01-29 17:58:17 +01:00
Christoffer Lerno
a77e0bf7b3
Add LLVM 17 to CI.
2023-01-29 14:44:03 +01:00
Christoffer Lerno
84582f86b6
Cleanup.
2023-01-29 14:20:58 +01:00
Christoffer Lerno
3f5fb5da92
Fix of variant type.
2023-01-29 13:59:07 +01:00
Christoffer Lerno
2fb85e5e95
Fix of variant type.
2023-01-29 13:58:57 +01:00
Christoffer Lerno
e604d40fd3
Added $$FILEPATH
2023-01-29 13:26:34 +01:00
Christoffer Lerno
77608e137e
Updated winmain handling
2023-01-29 13:18:43 +01:00
Christoffer Lerno
52d7e58c19
Make Windows use wWinMain always. Support /SUBSYSTEM:WINDOWS
2023-01-29 01:32:35 +01:00