Zig rewrite start #1

Merged
davidgmbb merged 100 commits from zig into main 2025-04-05 11:22:15 +02:00

100 Commits

Author SHA1 Message Date
67b3f11889 Use gitea actions
All checks were successful
CI / ci (Debug, ubuntu-latest) (push) Successful in 29s
CI / ci (ReleaseFast, ubuntu-latest) (push) Successful in 23s
CI / ci (ReleaseSafe, ubuntu-latest) (push) Successful in 29s
CI / ci (ReleaseSmall, ubuntu-latest) (push) Successful in 26s
CI / ci (Debug, ubuntu-latest) (pull_request) Successful in 29s
CI / ci (ReleaseFast, ubuntu-latest) (pull_request) Successful in 25s
CI / ci (ReleaseSafe, ubuntu-latest) (pull_request) Successful in 30s
CI / ci (ReleaseSmall, ubuntu-latest) (pull_request) Successful in 22s
2025-04-05 11:17:03 +02:00
c3be23370a Start rewriting the parser for better analysis 2025-04-04 23:13:01 +02:00
313f54c4ce Unify module and converter 2025-04-01 10:42:37 +02:00
a722eabf6e Rewrite test runner 2025-04-01 00:09:19 +02:00
1ea16f923b Enable 'minimal_stack_arithmetic' 2025-03-31 23:15:13 +02:00
8693ea60d4 wip 2025-03-31 18:54:28 +02:00
671189f299 Fix constant shift right 2025-03-31 10:09:23 +02:00
893eb287c3 Some more tweaks 2025-03-31 10:02:36 +02:00
cb53f937d1 Add run child process function 2025-03-31 00:22:03 +02:00
196b8c0588 Start reworking parser and moving away from Zig 2025-03-30 15:49:31 +02:00
54500c149f Some unfinished commit 2025-03-26 21:14:23 +01:00
17918ce4e3 Assignment operators 2025-03-26 18:19:26 +01:00
cb12fa62fe C string to slice 2025-03-26 12:15:28 +01:00
5bf0f10455 Rebuild array to slice introducing a new builtin 2025-03-26 11:14:44 +01:00
3f66a9587d Implement basic while 2025-03-26 00:18:23 +01:00
00d77039f3 Implement argv and proper pointer indexing 2025-03-25 20:53:16 +01:00
a9c95a1d88 Implement slices and strings 2025-03-25 12:27:15 +01:00
aba6b2d22b Implement global struct 2025-03-24 21:10:17 +01:00
27e8d13748 Implement basic struct assignment 2025-03-24 20:35:51 +01:00
37d45aa101 Implement pointer_cast 2025-03-24 14:01:26 +01:00
570d507839 Trap on unreachable in debug mode 2025-03-24 13:06:21 +01:00
832baa7137 Implement unreachable 2025-03-24 13:01:00 +01:00
8b1013b3e7 Implement integer_max 2025-03-24 12:44:18 +01:00
0721f8a2ef Fix bits return location type 2025-03-24 10:24:16 +01:00
852f312471 Select 2025-03-24 10:02:57 +01:00
a74e827f55 Struct zero 2025-03-24 00:13:49 +01:00
209aae6959 Bits 'zero' 2025-03-23 22:51:45 +01:00
4fa1ba260a Return type builtin 2025-03-23 20:08:28 +01:00
0a778aa94f Basic enum support 2025-03-23 19:40:55 +01:00
c1f0c64757 Add implicit backing type for 'bits' type 2025-03-23 19:36:52 +01:00
9ad86fe936 Implement byte size intrinsic 2025-03-23 12:23:27 +01:00
614c3d7e35 Implement basic support for varargs 2025-03-23 11:47:21 +01:00
8e7d81d8ff C ABI rework 2025-03-22 12:01:10 +01:00
39444e4a61 Fix integer debug names 2025-03-03 07:33:42 -06:00
96d22b00a4 Fix debug info with type 'bits' 2025-03-03 07:00:19 -06:00
5a9a3bc0e2 Default to debug 2025-03-03 06:36:01 -06:00
0d797fb2ab Fix test stack traces 2025-03-02 21:21:41 -06:00
41e566a64f Compile the compiler test 2025-03-02 21:07:16 -06:00
bc65985a30 Complete C ABI basic tests 2025-03-02 19:43:50 -06:00
fb505ef88e Fix some debug info issues 2025-03-02 12:59:27 -06:00
685bd20232 Hack to link C ABI test runtime object 2025-03-02 12:10:17 -06:00
f72e3ef2d9 Circumvent Zig caprices 2025-03-02 12:06:45 -06:00
d9423fcda3 More C ABI preparation 2025-03-02 12:00:34 -06:00
8ab11bcf5b Local type inference 2025-02-28 14:37:55 -06:00
629a9bea96 Implement comments 2025-02-28 14:19:30 -06:00
b3eee4ae99 Implement function attributes 2025-02-28 14:10:00 -06:00
1599a78d03 Integer hex parsing 2025-02-27 15:06:25 -06:00
3c7fea2526 More C ABI coverage 2025-02-27 14:24:14 -06:00
95c1bf6702 Fix C ABI test file bb syntax 2025-02-27 09:17:39 -06:00
1ad1121073 Basic pointer 2025-02-27 09:07:37 -06:00
f67fdaa5f7 Extern functions and basic C ABI support 2025-02-26 20:00:44 -06:00
6135ade3a7 External functions and array type refinements 2025-02-25 11:56:24 -06:00
e290f61890 Basic array 2025-02-25 09:26:45 -06:00
eaa64a8d78 Basic bit fields 2025-02-25 07:31:41 -06:00
36fc4807bb Basic struct 2025-02-24 09:07:25 -06:00
774551e795 Prep work for C ABI compatibility 2025-02-24 09:05:56 -06:00
27bd136487 Basic call 2025-02-22 21:52:04 -06:00
e63649bdda Store functions as globals 2025-02-22 20:27:25 -06:00
8274ca7d8a Calling convention setting/getting 2025-02-22 20:22:14 -06:00
a9ea1eb6d9 Basic branching 2025-02-22 20:08:30 -06:00
73e6b6529b Implement basic global variables 2025-02-22 19:05:08 -06:00
423a559dba Implement basic debug information 2025-02-22 09:56:41 -06:00
e6c3c55179 Structure main program properly 2025-02-21 20:13:25 -06:00
f89fb293c0 Binary operations from stack 2025-02-21 17:52:58 -06:00
71f70a35fb Minimal stack 2025-02-21 14:49:17 -06:00
de142080f3 Constant xor 2025-02-21 13:34:04 -06:00
9b8011086f Constant or 2025-02-21 13:25:06 -06:00
648fe7480d Constant and 2025-02-21 13:19:40 -06:00
99e13a7218 Constant shifts 2025-02-21 13:14:10 -06:00
dc52283250 Isolate tests 2025-02-21 13:02:33 -06:00
60b078caf3 Constant rem 2025-02-21 12:52:33 -06:00
1c8fd82e1f Constant div 2025-02-21 12:48:44 -06:00
7bd79cb741 Constant mul 2025-02-21 11:34:20 -06:00
892360a084 Constant add 2025-02-21 11:24:42 -06:00
c4d25ca393 Constant sub 2025-02-21 08:56:25 -06:00
34a3514856 Even better test parameters 2025-02-20 21:32:25 -06:00
322c2aaa8b Better testing system 2025-02-20 20:56:00 -06:00
38c4ab99be More rename 2025-02-20 15:23:25 -06:00
3a232da71e remove "enable_llvm" switch 2025-02-20 14:18:04 -06:00
621ce78874 rename parser to converter 2025-02-20 13:58:56 -06:00
9e5fcc8af3 Character functions 2025-02-20 09:43:28 -06:00
4d2ebeab02 Some restructuring on the parser 2025-02-20 09:27:40 -06:00
c80ea273de Actually include parsing test 2025-02-20 07:08:05 -06:00
340562038c Switch to GH runner 2025-02-19 22:55:45 -06:00
ff08270b6b Add CI coverage 2025-02-19 22:00:47 -06:00
9cbb03256b Parse simple file with null storage and result 2025-02-19 19:13:05 -06:00
7ee458b93b Linker pipeline 2025-02-19 12:33:21 -06:00
8126a5e9e8 Code generation pipeline 2025-02-19 07:08:11 -06:00
b7eff075fc Optimization pipeline 2025-02-18 20:17:18 -06:00
59b35682c7 Implement target machine 2025-02-18 19:33:10 -06:00
2e76e5f6fd reach abi compatibility 2025-02-18 19:33:10 -06:00
6662759bc8 wip emit 2025-02-18 19:33:10 -06:00
589677fa5b advance llvm well enough 2025-02-18 19:33:10 -06:00
745e74cc3d Link LLVM through llvm-config 2025-02-18 19:33:10 -06:00
b59377fe97 Some formatting 2025-02-18 19:33:10 -06:00
b53a5bbae5 File API 2025-02-18 19:33:10 -06:00
e291ff1bee panic cleanup and misc 2025-02-18 19:33:10 -06:00
230acc6ce7 implement arena 2025-02-18 19:33:10 -06:00
5e7126ab93 take out the garbage 2025-02-18 19:33:10 -06:00
d8570dce2e wip 2025-02-18 19:33:10 -06:00