| 
							
							
								 Irmen de Jong | 522958e0e9 | @dirty variables now actually end up in the uninitialized BSS_NOCLEAR section | 2025-05-06 01:41:34 +02:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | 98505d27b1 | IR: fix invalid removal of label chunks and include asmsubs when looking for labels | 2025-04-24 23:30:51 +02:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | cd63a58ad9 | IR: get rid of problematic PREPARECALL pseudo instruction | 2025-04-24 22:32:40 +02:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | 99ae8ea52e | code cleanup | 2025-04-24 18:51:03 +02:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | a4d0589f10 | fix errors like parse error still printed in color when -plaintext is set | 2025-04-22 19:26:11 +02:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | 3770a4fe0c | easier datatype notation by just using  the type objects directly | 2025-03-18 23:33:04 +01:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | e55ce5504e | added %option romable  to enable romable mode, but only generate a bunch of warnings for problematic codegeneration atm | 2025-02-20 23:40:44 +01:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | 7a13f57ab0 | enforce variable init values are only strings or arrays | 2025-01-20 01:25:17 +01:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | 09a17743ad | merge IMachineDefinition into ICompilationTarget | 2025-01-13 21:45:38 +01:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | 8f6b5676d7 | working on codegen for multi-value returns | 2025-01-07 20:35:49 +01:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | 2727a4dcb3 | tweak DataType class and memsizer related to subtypes/elementtypes | 2024-12-23 17:28:25 +01:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | 512ddd1694 | cleanups | 2024-12-20 22:59:20 +01:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | 7c79cdbd2f | fix symbol prefixing on goto with expression added coroutines example | 2024-12-17 16:16:38 +01:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | cc59069876 | allow goto to take any expression, not only an integer or an identifier (part 1) | 2024-12-14 01:01:32 +01:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | 1a1ab0dac6 | changed the data type system to composite types | 2024-12-05 21:48:51 +01:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | 9864abd393 | romsub keyword is now extsub | 2024-11-06 22:14:53 +01:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | c702c4a6df | internal rename of romsub to extsub | 2024-11-06 21:42:16 +01:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | 77e376f6bf | romsub @bank now also accepts a variable so the bank can be dynamic | 2024-11-06 00:02:36 +01:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | 85e87dfe2e | consolidate @rombank and @rambank into just @bank | 2024-11-03 21:15:11 +01:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | 155896c4c7 | added @rombank and @rambank bank number tags on romsubs on cx16 and c128 targets the compiler then automatically inserts a CALLFAR instead of a regular JSR to automatically do the bank switching. | 2024-11-03 18:19:31 +01:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | 3b798097b9 | added memtop to machine definition and asm source code check added %memtop directive | 2024-11-02 00:59:07 +01:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | c9535049c8 | %align directive and @align64 | 2024-10-26 20:58:35 +02:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | 1cd754f05d | adding @alignword/page on individual variables | 2024-10-26 17:00:38 +02:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | d5adb85e5b | IR: add SEC,CLC,SEI,CLI instructions for the sys function calls. | 2024-07-14 21:01:19 +02:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | 641f6c05d8 | allow 'void' as dummy assign target in multi-assignment statements | 2024-03-31 23:43:26 +02:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | f40b7b62bb | updated unit tests and some basic changes for them | 2024-03-02 23:19:20 +01:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | 9c1b11d605 | some WARN messages are now INFO | 2023-12-28 14:20:47 +01:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | 2eb137618e | refactor block options | 2023-12-26 22:13:08 +01:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | eba0bde6f3 | Merge branch 'optimize-st' # Conflicts:
#	examples/test.p8 | 2023-12-17 02:11:01 +01:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | 01c2112881 | remove PtJump label, just use identifier with dummy | 2023-12-13 04:16:49 +01:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | f97b3f23e2 | optimize symbol table for IR | 2023-12-12 19:26:27 +01:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | 8e4319cd5a | module directive %encoding to set the text encoding for that whole file (iso, petscii, etc.) | 2023-12-06 23:54:08 +01:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | 9ef9c24388 | IR: optimize redundant labels | 2023-11-25 01:10:17 +01:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | f68b46fc60 | add a %zpallowed option to specify the range of zeropage register that can be used | 2023-11-03 00:19:25 +01:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | a48ce35f0b | added %option verafxmuls | 2023-10-05 22:06:33 +02:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | c319233ddc | ir: added preparecall 'meta' instruction for functioncalls | 2023-09-18 23:22:03 +02:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | bb95484c8a | uniform symbol prefixing with p8_ | 2023-07-02 06:15:09 +02:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | eae41de27d | improve errors generated for undefined symbols | 2023-06-25 15:19:51 +02:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | 91421b0c62 | IR handy sequence shortcut functions | 2023-05-18 11:32:20 +02:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | 905921a684 | IR: new (sys)call instructions that encapsulate the full subroutine call to fix the bugs resulting from nesting subroutine calls (as param to another call etc) | 2023-05-14 15:20:25 +02:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | f465b2e2a0 | some improvements to IR peephole optimizer | 2023-05-02 00:29:04 +02:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | ccdf05e922 | tweaking IR instruction formats | 2023-04-09 16:12:16 +02:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | c3d74f2ae9 | fix golden ram area for x16, remove romsub restriction note: romsubs still won't work in the VM but at least they compile again | 2023-04-08 00:40:52 +02:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | f47498888c | optimize imports | 2023-04-07 22:34:23 +02:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | d76547ead4 | don't crash on certain undefined symbols, give proper error instead Also the error handlers in unit tests now de-duplicate messages just like the compiler itself does | 2023-03-11 14:58:41 +01:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | fd07ae5225 | fix various IR file and symboltable issues | 2023-03-07 19:40:11 +01:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | 5c3f41f64d | reintroduce explicit PtAugmentedAssign ast node | 2023-02-15 22:54:32 +01:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | b2cb125bd4 | more 6502 codegen on new Pt-AST. | 2023-01-22 17:10:52 +01:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | c21913a66b | ir: keep order of children in block | 2022-11-22 02:04:24 +01:00 |  | 
			
				
					| 
							
							
								 Irmen de Jong | e7408224ac | ir: remove position tracking from codechunk for now | 2022-11-02 22:12:42 +01:00 |  |