Irmen de Jong
							
						 
					 | 
					
						
						
							
						
						a2b9d78cf3
					 | 
					
						
						
							
							start with introducing LONG datatype (32 bits signed integer)
						
						
						
						
						
						
					 | 
					
						2025-10-03 01:22:24 +02:00 | 
					
					
						
						
						
							
							
							
							
							
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Irmen de Jong
							
						 
					 | 
					
						
						
							
						
						9d3b2f12fd
					 | 
					
						
						
							
							IR code blocks now better SSA basic blocks (ending with single branch instruction)
						
						
						
						
						
						
					 | 
					
						2025-10-01 19:08:44 +02:00 | 
					
					
						
						
						
							
							
							
							
							
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Irmen de Jong
							
						 
					 | 
					
						
						
							
						
						a611406020
					 | 
					
						
						
							
							IR: add compilerversion attribute to p8ir file
						
						
						
						
						
						
					 | 
					
						2025-09-30 22:07:04 +02:00 | 
					
					
						
						
						
							
							
							
							
							
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Irmen de Jong
							
						 
					 | 
					
						
						
							
						
						2c7256a443
					 | 
					
						
						
							
							support assignment to indexed pointer targets
						
						
						
						
						
						
					 | 
					
						2025-09-27 14:52:04 +02:00 | 
					
					
						
						
						
							
							
							
							
							
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Irmen de Jong
							
						 
					 | 
					
						
						
							
						
						97420b28e5
					 | 
					
						
						
							
							preparing to support assignment to indexed pointer targets
						
						
						
						
						
						
					 | 
					
						2025-09-27 11:03:55 +02:00 | 
					
					
						
						
						
							
							
							
							
							
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Irmen de Jong
							
						 
					 | 
					
						
						
							
						
						a71895cbe8
					 | 
					
						
						
							
							optimize pointer.field += 1 into pointer.field INC/DEC
						
						
						
						
						
						
					 | 
					
						2025-09-18 19:27:36 +02:00 | 
					
					
						
						
						
							
							
							
							
							
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Irmen de Jong
							
						 
					 | 
					
						
						
							
						
						f6c8e693a5
					 | 
					
						
						
							
							add offsetof()
						
						
						
						
						
						
					 | 
					
						2025-09-17 23:30:15 +02:00 | 
					
					
						
						
						
							
							
							
							
							
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Irmen de Jong
							
						 
					 | 
					
						
						
							
						
						124ea1230b
					 | 
					
						
						
							
							fix vm to understand struct instances in arrays
						
						
						
						
						
						
					 | 
					
						2025-09-14 19:04:01 +02:00 | 
					
					
						
						
						
							
							
							
							
							
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Irmen de Jong
							
						 
					 | 
					
						
						
							
						
						8b48a295b6
					 | 
					
						
						
							
							allow struct initializers to occur in array literals
						
						
						
						
						
						
					 | 
					
						2025-09-14 18:16:46 +02:00 | 
					
					
						
						
						
							
							
							
							
							
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Irmen de Jong
							
						 
					 | 
					
						
						
							
						
						79419a98d0
					 | 
					
						
						
							
							add if-expression versions for the conditionals if_cc, if_cs, if_vc etc
						
						
						
						
						
						
					 | 
					
						2025-09-11 01:57:30 +02:00 | 
					
					
						
						
						
							
							
							
							
							
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Irmen de Jong
							
						 
					 | 
					
						
						
							
						
						a7e9d8e14b
					 | 
					
						
						
							
							fix struct field offset calculations
						
						
						
						
						
						
					 | 
					
						2025-09-01 18:57:02 +02:00 | 
					
					
						
						
						
							
							
							
							
							
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Irmen de Jong
							
						 
					 | 
					
						
						
							
						
						3ef09d7d9a
					 | 
					
						
						
							
							use LOADFIELD instruction more instead of an extra explicit ADD
						
						
						
						
						
						
						
						add implicit @zp to pointer variables if they don't have a preference 
						
						
					 | 
					
						2025-08-31 15:53:44 +02:00 | 
					
					
						
						
						
							
							
							
							
							
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Irmen de Jong
							
						 
					 | 
					
						
						
							
						
						5a3aa1bd25
					 | 
					
						
						
							
							optimized IR to return a constant value: use RETURNI
						
						
						
						
						
						
					 | 
					
						2025-08-26 22:54:11 +02:00 | 
					
					
						
						
						
							
							
							
							
							
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Irmen de Jong
							
						 
					 | 
					
						
						
							
						
						79b8bb5c9f
					 | 
					
						
						
							
							Merge branch 'master' into structs6502
						
						
						
						
						
						
					 | 
					
						2025-08-19 01:12:50 +02:00 | 
					
					
						
						
						
							
							
							
							
							
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Irmen de Jong
							
						 
					 | 
					
						
						
							
						
						fc5889ec0b
					 | 
					
						
						
							
							kotlin 2.2.10, kotest
						
						
						
						
						
						
					 | 
					
						2025-08-19 01:04:24 +02:00 | 
					
					
						
						
						
							
							
							
							
							
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Irmen de Jong
							
						 
					 | 
					
						
						
							
						
						f74eeaee0f
					 | 
					
						
						
							
							fix IR address-of for array-indexed pointers (pointer arithmetic)
						
						
						
						
						
						
					 | 
					
						2025-08-18 03:24:32 +02:00 | 
					
					
						
						
						
							
							
							
							
							
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Irmen de Jong
							
						 
					 | 
					
						
						
							
						
						4a8d5def84
					 | 
					
						
						
							
							code cleanups, pointer TODOs, docs dark mode
						
						
						
						
						
						
					 | 
					
						2025-08-16 11:25:18 +02:00 | 
					
					
						
						
						
							
							
							
							
							
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Irmen de Jong
							
						 
					 | 
					
						
						
							
						
						fd9bd23449
					 | 
					
						
						
							
							6502 statementreorderer: str -> ^^ubyte
						
						
						
						
						
						
					 | 
					
						2025-08-13 18:45:29 +02:00 | 
					
					
						
						
						
							
							
							
							
							
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Irmen de Jong
							
						 
					 | 
					
						
						
							
						
						9e85571a7b
					 | 
					
						
						
							
							fix pointer variable usage detection in other block
						
						
						
						
						
						
					 | 
					
						2025-08-05 17:39:22 +02:00 | 
					
					
						
						
						
							
							
							
							
							
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Irmen de Jong
							
						 
					 | 
					
						
						
							
						
						d4e83b28bb
					 | 
					
						
						
							
							error messages and trying to improve support for struct allocs in arrays
						
						
						
						
						
						
						
						added sorting example 
						
						
					 | 
					
						2025-08-02 19:22:58 +02:00 | 
					
					
						
						
						
							
							
							
							
							
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Irmen de Jong
							
						 
					 | 
					
						
						
							
						
						647cd0fbe1
					 | 
					
						
						
							
							fix pointer[i].field compiler crash
						
						
						
						
						
						
					 | 
					
						2025-08-02 05:29:16 +02:00 | 
					
					
						
						
						
							
							
							
							
							
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Irmen de Jong
							
						 
					 | 
					
						
						
							
						
						88ee7a8187
					 | 
					
						
						
							
							fix expected outcome of function call arg type pointer test
						
						
						
						
						
						
					 | 
					
						2025-08-01 00:23:10 +02:00 | 
					
					
						
						
						
							
							
							
							
							
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Irmen de Jong
							
						 
					 | 
					
						
						
							
						
						c4c5636a81
					 | 
					
						
						
							
							fixing array indexing on pointers
						
						
						
						
						
						
					 | 
					
						2025-07-29 23:41:38 +02:00 | 
					
					
						
						
						
							
							
							
							
							
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Irmen de Jong
							
						 
					 | 
					
						
						
							
						
						23ad540aa5
					 | 
					
						
						
							
							fix IR codegen type error on array pointer dereference
						
						
						
						
						
						
					 | 
					
						2025-07-28 20:25:56 +02:00 | 
					
					
						
						
						
							
							
							
							
							
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Irmen de Jong
							
						 
					 | 
					
						
						
							
						
						624220e9a3
					 | 
					
						
						
							
							fix boolean struct field as if conditional
						
						
						
						
						
						
					 | 
					
						2025-07-27 01:58:18 +02:00 | 
					
					
						
						
						
							
							
							
							
							
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Irmen de Jong
							
						 
					 | 
					
						
						
							
						
						82267b3f56
					 | 
					
						
						
							
							Merge branch 'master' into structs
						
						
						
						
						
						
						
						# Conflicts:
#	compiler/test/codegeneration/TestVariables.kt
#	docs/source/_static/symboldumps/skeletons-c128.txt
#	docs/source/_static/symboldumps/skeletons-c64.txt
#	docs/source/_static/symboldumps/skeletons-cx16.txt
#	docs/source/_static/symboldumps/skeletons-pet32.txt
#	docs/source/_static/symboldumps/skeletons-virtual.txt
#	docs/source/todo.rst
#	examples/test.p8 
						
						
					 | 
					
						2025-07-26 12:43:13 +02:00 | 
					
					
						
						
						
							
							
							
							
							
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Irmen de Jong
							
						 
					 | 
					
						
						
							
						
						67fb45a55b
					 | 
					
						
						
							
							don't produce invalid boolean initalization error.  Fixes #173
						
						
						
						
						
						
					 | 
					
						2025-07-26 12:35:23 +02:00 | 
					
					
						
						
						
							
							
							
							
							
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Irmen de Jong
							
						 
					 | 
					
						
						
							
						
						817f4f8e7c
					 | 
					
						
						
							
							Merge branch 'master' into structs
						
						
						
						
						
						
						
						# Conflicts:
#	compiler/src/prog8/compiler/Compiler.kt
#	compiler/src/prog8/compiler/astprocessing/AstExtensions.kt
#	compiler/src/prog8/compiler/astprocessing/StatementReorderer.kt
#	docs/source/todo.rst
#	examples/test.p8 
						
						
					 | 
					
						2025-07-24 22:27:29 +02:00 | 
					
					
						
						
						
							
							
							
							
							
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Irmen de Jong
							
						 
					 | 
					
						
						
							
						
						866313209b
					 | 
					
						
						
							
							fixed zp vars 0 initialization
						
						
						
						
						
						
					 | 
					
						2025-07-24 00:17:31 +02:00 | 
					
					
						
						
						
							
							
							
							
							
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Irmen de Jong
							
						 
					 | 
					
						
						
							
						
						e14c3f8b59
					 | 
					
						
						
							
							code cleanups
						
						
						
						
						
						
					 | 
					
						2025-07-06 00:52:37 +02:00 | 
					
					
						
						
						
							
							
							
							
							
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Irmen de Jong
							
						 
					 | 
					
						
						
							
						
						54d41b7f6f
					 | 
					
						
						
							
							fixed a[i]^^
						
						
						
						
						
						
					 | 
					
						2025-07-05 23:54:08 +02:00 | 
					
					
						
						
						
							
							
							
							
							
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Irmen de Jong
							
						 
					 | 
					
						
						
							
						
						49a4d9ba37
					 | 
					
						
						
							
							allow str as struct field type (^^ubyte) and strings in struct initializers
						
						
						
						
						
						
					 | 
					
						2025-06-15 00:29:59 +02:00 | 
					
					
						
						
						
							
							
							
							
							
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Irmen de Jong
							
						 
					 | 
					
						
						
							
						
						12abafb917
					 | 
					
						
						
							
							Merge branch 'master' into structs
						
						
						
						
						
						
						
						# Conflicts:
#	docs/source/todo.rst
#	examples/test.p8
#	gradle.properties 
						
						
					 | 
					
						2025-06-12 00:11:58 +02:00 | 
					
					
						
						
						
							
							
							
							
							
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Irmen de Jong
							
						 
					 | 
					
						
						
							
						
						8dc2e47507
					 | 
					
						
						
							
							fix partial unused code removal in vm target
						
						
						
						
						
						
					 | 
					
						2025-06-11 23:31:29 +02:00 | 
					
					
						
						
						
							
							
							
							
							
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Irmen de Jong
							
						 
					 | 
					
						
						
							
						
						e6bab3ceeb
					 | 
					
						
						
							
							IR: adding LOADFIELD and STOREFIELD instructions
						
						
						
						
						
						
					 | 
					
						2025-06-09 01:41:45 +02:00 | 
					
					
						
						
						
							
							
							
							
							
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Irmen de Jong
							
						 
					 | 
					
						
						
							
						
						1c02179c5c
					 | 
					
						
						
							
							refactor loadIndexReg()
						
						
						
						
						
						
					 | 
					
						2025-05-30 21:39:17 +02:00 | 
					
					
						
						
						
							
							
							
							
							
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Irmen de Jong
							
						 
					 | 
					
						
						
							
						
						77584493fd
					 | 
					
						
						
							
							support a.b.ptr[i]^^.value as expression (RHS)
						
						
						
						
						
						
					 | 
					
						2025-05-30 20:28:10 +02:00 | 
					
					
						
						
						
							
							
							
							
							
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Irmen de Jong
							
						 
					 | 
					
						
						
							
						
						112ca3cc53
					 | 
					
						
						
							
							allow sizeof(&thing),  add sys.SIZEOF_POINTER
						
						
						
						
						
						
					 | 
					
						2025-05-29 15:58:29 +02:00 | 
					
					
						
						
						
							
							
							
							
							
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Irmen de Jong
							
						 
					 | 
					
						
						
							
						
						4c0e6e2640
					 | 
					
						
						
							
							fix split/nosplit pointer arrays, replace ubyteptr^^ with @(ubyteptr), fix double dereference
						
						
						
						
						
						
					 | 
					
						2025-05-29 00:36:55 +02:00 | 
					
					
						
						
						
							
							
							
							
							
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Irmen de Jong
							
						 
					 | 
					
						
						
							
						
						08b314c37d
					 | 
					
						
						
							
							IR: fix various register type mismatches
						
						
						
						
						
						
					 | 
					
						2025-05-28 22:15:07 +02:00 | 
					
					
						
						
						
							
							
							
							
							
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Irmen de Jong
							
						 
					 | 
					
						
						
							
						
						86da9d3c7e
					 | 
					
						
						
							
							assigning to plain pointer with array indexing
						
						
						
						
						
						
					 | 
					
						2025-05-28 18:08:53 +02:00 | 
					
					
						
						
						
							
							
							
							
							
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Irmen de Jong
							
						 
					 | 
					
						
						
							
						
						4e61e25c02
					 | 
					
						
						
							
							Merge branch 'master' into structs
						
						
						
						
						
						
						
						# Conflicts:
#	compiler/test/TestTypecasts.kt 
						
						
					 | 
					
						2025-05-27 23:52:59 +02:00 | 
					
					
						
						
						
							
							
							
							
							
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Irmen de Jong
							
						 
					 | 
					
						
						
							
						
						5097d52d99
					 | 
					
						
						
							
							IR codegen for pointer indexing expressions, -assignment
						
						
						
						
						
						
					 | 
					
						2025-05-27 23:41:08 +02:00 | 
					
					
						
						
						
							
							
							
							
							
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Irmen de Jong
							
						 
					 | 
					
						
						
							
						
						09d2185bb1
					 | 
					
						
						
							
							PtArrayIndexer variable is now nullable (because it could be a ptr deref instead)
						
						
						
						
						
						
					 | 
					
						2025-05-25 23:04:32 +02:00 | 
					
					
						
						
						
							
							
							
							
							
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Irmen de Jong
							
						 
					 | 
					
						
						
							
						
						5c02e2bd71
					 | 
					
						
						
							
							fix a ptr indexing case, fix address-of fields
						
						
						
						
						
						
					 | 
					
						2025-05-25 21:32:31 +02:00 | 
					
					
						
						
						
							
							
							
							
							
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Irmen de Jong
							
						 
					 | 
					
						
						
							
						
						fb01389b3d
					 | 
					
						
						
							
							cleaning up pointer deref
						
						
						
						
						
						
					 | 
					
						2025-05-25 18:33:37 +02:00 | 
					
					
						
						
						
							
							
							
							
							
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Irmen de Jong
							
						 
					 | 
					
						
						
							
						
						aaa81210ce
					 | 
					
						
						
							
							cleaning up pointer indexing
						
						
						
						
						
						
					 | 
					
						2025-05-25 02:56:32 +02:00 | 
					
					
						
						
						
							
							
							
							
							
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Irmen de Jong
							
						 
					 | 
					
						
						
							
						
						23a853db1e
					 | 
					
						
						
							
							Merge branch 'master' into structs
						
						
						
						
						
						
						
						# Conflicts:
#	compiler/src/prog8/compiler/astprocessing/AstChecker.kt
#	examples/test.p8 
						
						
					 | 
					
						2025-05-23 19:00:59 +02:00 | 
					
					
						
						
						
							
							
							
							
							
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Irmen de Jong
							
						 
					 | 
					
						
						
							
						
						9da430ffeb
					 | 
					
						
						
							
							vm: more complete V-flag handling.  somd doc and todo updates.
						
						
						
						
						
						
					 | 
					
						2025-05-23 18:58:14 +02:00 | 
					
					
						
						
						
							
							
							
							
							
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								Irmen de Jong
							
						 
					 | 
					
						
						
							
						
						61fe55168a
					 | 
					
						
						
							
							Merge branch 'master' into structs
						
						
						
						
						
						
						
						# Conflicts:
#	codeGenIntermediate/src/prog8/codegen/intermediate/AssignmentGen.kt
#	codeGenIntermediate/src/prog8/codegen/intermediate/ExpressionGen.kt
#	examples/test.p8 
						
						
					 | 
					
						2025-05-20 22:35:04 +02:00 | 
					
					
						
						
						
							
							
							
							
							
							
							
							
						
					 |