Commit Graph

36 Commits

Author SHA1 Message Date
gingerBill
99c812b02d Begin working on a minimum build 2023-07-23 21:44:50 +01:00
gingerBill
d82c2ce50f Update Tilde; Add min and max 2023-07-22 12:21:29 +01:00
gingerBill
6c12156b1a Simplify procedure argument handling 2023-07-22 11:16:29 +01:00
gingerBill
b09ea17f0e Support multiple return values for non-odin calling conventions 2023-07-22 08:48:13 +01:00
gingerBill
e5f9458905 Update Tilde to get procedure passing rules 2023-07-22 07:56:13 +01:00
gingerBill
ec0a9a5f8a Copy lvalues on multi-valued assignments to allow for a, b = b, a on large types (minor bodge) 2023-07-21 13:05:39 +01:00
gingerBill
f32d71eca0 Mock out any type switch statement 2023-07-19 20:44:37 +01:00
gingerBill
5fb98609cd Implement type switch statement for unions 2023-07-19 18:03:42 +01:00
gingerBill
19633ece80 Simplification of the ValueDecl code 2023-07-19 15:51:56 +01:00
gingerBill
fb04103352 Add defer statements; add implicit context pointer to context stack 2023-07-19 15:37:33 +01:00
gingerBill
9abf43b0d2 Mock out defer handling logic (before handling defer statements) 2023-07-19 15:24:07 +01:00
gingerBill
7f97274ecc Wrap Tilde's goto pseudo-instruction 2023-07-19 14:31:32 +01:00
gingerBill
b2edab193f Support branch statements break/continue/fallthrough 2023-07-19 14:19:01 +01:00
gingerBill
184563bbe1 Add trivial switch statement check to use a jump table 2023-07-19 13:58:56 +01:00
gingerBill
73f25ed182 Add basic switch statement
Implement as naive if-else chain
2023-07-19 13:37:56 +01:00
gingerBill
533f6a552c Add for and += assignments 2023-07-19 13:15:13 +01:00
gingerBill
32ac319525 Implement if statements 2023-07-19 12:55:44 +01:00
gingerBill
feda213c0c Mock out cg_append_tuple_values 2023-07-18 13:30:59 +01:00
gingerBill
c6593e8cde Mock out binary expressions and variable declarations 2023-07-18 13:27:47 +01:00
gingerBill
55733171c1 Planning for multi-valued expressions in the tilde backend 2023-07-17 23:16:50 +01:00
gingerBill
d72f8da6d7 Move debug type code its own file 2023-07-17 22:37:40 +01:00
gingerBill
0b697b24bd Implement debug type for procs 2023-07-17 22:33:13 +01:00
gingerBill
b2c75dc3a2 Mostly fill in cg_debug_type 2023-07-17 22:18:15 +01:00
gingerBill
b5b3f1fb42 Mock out struct_ep calls 2023-07-17 17:28:12 +01:00
gingerBill
bd73834e19 Update Tilde; mock out cg_build_return_stmt
128-bit types are broken
2023-07-17 16:56:10 +01:00
gingerBill
45b3ae31af Mock out more of the ep procedures 2023-07-17 00:31:44 +01:00
gingerBill
66a20264ab Mock out cg_emit_arith 2023-07-17 00:06:03 +01:00
gingerBill
d2d243cca8 Mock out cg_emit_conv 2023-07-16 23:41:51 +01:00
gingerBill
ee8372145d Begin working on proper expressions 2023-07-15 14:26:47 +01:00
gingerBill
ccb736411b Basic context creation 2023-07-15 13:30:31 +01:00
gingerBill
e2e5641a45 Update TB; Fix calling nullptr TB_Node* problems 2023-07-15 13:15:50 +01:00
gingerBill
ca442defbb Mocking out call related stuff 2023-07-14 17:34:00 +01:00
gingerBill
b17ebeb6f6 Mock out more of the addr related stuff 2023-07-14 17:03:28 +01:00
gingerBill
a8afcf1ca9 cg_emit_load/cg_emit_store 2023-07-14 16:03:21 +01:00
gingerBill
6545cc2d48 Stub out expr and const files 2023-07-14 14:54:49 +01:00
gingerBill
2a10c8fe5c Begin work on building statements 2023-07-14 13:01:17 +01:00