Ayke van Laethem 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								e884221fad 
								
							 
						 
						
							
							
								
								Implement len() for map types  
							
							
							
						 
						
							2018-08-23 23:14:54 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Ayke van Laethem 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								005665aee6 
								
							 
						 
						
							
							
								
								Move hashmap creation to runtime  
							
							
							
						 
						
							2018-08-23 23:13:38 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Ayke van Laethem 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								3a6ef38041 
								
							 
						 
						
							
							
								
								Preliminary implementation of a hashmap, unfinished  
							
							... 
							
							
							
							Missing features:
  * keys other than strings
  * more than 8 values in the hashmap
  * growing a map when needed
  * initial size hint
  * delete(m, key)
  * iterators (for range)
  * initializing global maps
  * ...more? 
							
						 
						
							2018-08-22 04:50:24 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Ayke van Laethem 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								c3cb22030f 
								
							 
						 
						
							
							
								
								Implement == and != for strings  
							
							
							
						 
						
							2018-08-22 00:56:11 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Ayke van Laethem 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								2777f8464e 
								
							 
						 
						
							
							
								
								Implement printing of booleans  
							
							
							
						 
						
							2018-08-22 00:54:39 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Ayke van Laethem 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								29d601883b 
								
							 
						 
						
							
							
								
								Implement dummy GOMAXPROCS  
							
							... 
							
							
							
							This compiler targets single-core machines, GOMAXPROCS is thus fixed to
1. 
							
						 
						
							2018-08-18 20:06:59 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Ayke van Laethem 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								8b6cb204cd 
								
							 
						 
						
							
							
								
								Basic support for slices  
							
							
							
						 
						
							2018-08-18 20:06:35 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Ayke van Laethem 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								70871c98f8 
								
							 
						 
						
							
							
								
								Improve print functions  
							
							
							
						 
						
							2018-08-17 23:23:38 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Ayke van Laethem 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								62c4c5e90b 
								
							 
						 
						
							
							
								
								go fmt  
							
							
							
						 
						
							2018-08-17 23:23:20 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Ayke van Laethem 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								a97ca91c1f 
								
							 
						 
						
							
							
								
								compiler: Implement interface calls  
							
							... 
							
							
							
							This is a big combined change. Other changes in this commit:
  * Analyze makeinterface and make sure type switches don't include
    unnecessary cases.
  * Do not include CGo wrapper functions in the analyzer callgraph.
    This also avoids some unnecessary type IDs.
  * Give all Go named structs a name in LLVM.
  * Use such a named struct for compiler-generated task data.
  * Use the type and function names defined by the ssa and types
    package instead of generating our own.
  * Some improvements to function pointers.
  * A few other minor improvements.
The one thing lacking here is interface-to-interface assertions. 
							
						 
						
							2018-06-17 15:50:19 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Ayke van Laethem 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								90fb0ee4eb 
								
							 
						 
						
							
							
								
								Add AVR support  
							
							... 
							
							
							
							This requires support in LLVM, as AVR support is still experimental. For
example, in bindings/go/build.sh, add
-DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD=AVR to cmake_flags. 
							
						 
						
							2018-06-07 18:35:54 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Ayke van Laethem 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								802302a1aa 
								
							 
						 
						
							
							
								
								Add support for inline assembly  
							
							... 
							
							
							
							This depends on support in LLVM, which hasn't been merged yet.
See: https://reviews.llvm.org/D46437  
							
						 
						
							2018-06-07 18:29:49 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Ayke van Laethem 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								0168bf7797 
								
							 
						 
						
							
							
								
								Add goroutines and function pointers  
							
							
							
						 
						
							2018-06-07 14:48:24 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Ayke van Laethem 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								b4e60deacd 
								
							 
						 
						
							
							
								
								runtime/nrf: Fix allocator by adding align() function  
							
							
							
						 
						
							2018-06-03 17:56:56 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Ayke van Laethem 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								588910792d 
								
							 
						 
						
							
							
								
								Translate bootstrapping main from C to LLVM IR  
							
							... 
							
							
							
							This avoids needing a C compiler for every platform. 
							
						 
						
							2018-06-03 17:38:16 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Ayke van Laethem 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								89f77fa861 
								
							 
						 
						
							
							
								
								machine/dummy: Add LED1, LED2, etc to dummy machine  
							
							
							
						 
						
							2018-06-03 16:42:09 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Ayke van Laethem 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								320c583221 
								
							 
						 
						
							
							
								
								Implement printing of int8/uint8/pointers  
							
							
							
						 
						
							2018-06-03 16:39:24 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Ayke van Laethem 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								e171f32493 
								
							 
						 
						
							
							
								
								Implement minimal bump pointer allocator  
							
							... 
							
							
							
							Useful for MCUs, until a real garbage collector has been implemented. 
							
						 
						
							2018-06-03 16:30:48 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Ayke van Laethem 
								
							 
						 
						
							
							
							
							
								
							
							
								a39951c3d7 
								
							 
						 
						
							
							
								
								runtime: Convert device initialization to Go  
							
							
							
						 
						
							2018-05-05 20:10:39 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Ayke van Laethem 
								
							 
						 
						
							
							
							
							
								
							
							
								c4f0dc90dd 
								
							 
						 
						
							
							
								
								machine: Rewrite most of the GPIO functionality  
							
							... 
							
							
							
							Split across device types (nrf, dummy) and use registers directly
instead of the HAL. 
							
						 
						
							2018-05-05 20:05:53 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Ayke van Laethem 
								
							 
						 
						
							
							
							
							
								
							
							
								8c426b406d 
								
							 
						 
						
							
							
								
								Automatically convert .svd files to Go source files  
							
							
							
						 
						
							2018-05-05 19:02:43 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Ayke van Laethem 
								
							 
						 
						
							
							
							
							
								
							
							
								3a4663150e 
								
							 
						 
						
							
							
								
								runtime: Implement GPIO output  
							
							... 
							
							
							
							Now we can actually blink a LED! 
							
						 
						
							2018-04-27 01:29:13 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Ayke van Laethem 
								
							 
						 
						
							
							
							
							
								
							
							
								d4170faa0a 
								
							 
						 
						
							
							
								
								runtime/nrf: Add Sleep()  
							
							
							
						 
						
							2018-04-26 23:47:59 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Ayke van Laethem 
								
							 
						 
						
							
							
							
							
								
							
							
								4491a63fe8 
								
							 
						 
						
							
							
								
								Add print() for 64-bit integers  
							
							
							
						 
						
							2018-04-26 23:46:34 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Ayke van Laethem 
								
							 
						 
						
							
							
							
							
								
							
							
								c940617849 
								
							 
						 
						
							
							
								
								compiler: Implement init()  
							
							
							
						 
						
							2018-04-26 18:54:46 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Ayke van Laethem 
								
							 
						 
						
							
							
							
							
								
							
							
								2d19bb11ba 
								
							 
						 
						
							
							
								
								compiler: Merge the runtime into the Go code, for better code size  
							
							
							
						 
						
							2018-04-26 18:06:54 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Ayke van Laethem 
								
							 
						 
						
							
							
							
							
								
							
							
								10427c2b6f 
								
							 
						 
						
							
							
								
								Add blinky example (which doesn't blink a LED, yet)  
							
							
							
						 
						
							2018-04-25 20:07:04 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Ayke van Laethem 
								
							 
						 
						
							
							
							
							
								
							
							
								04fef19753 
								
							 
						 
						
							
							
								
								Add runtime support for the nRF52  
							
							
							
						 
						
							2018-04-25 20:06:08 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Ayke van Laethem 
								
							 
						 
						
							
							
							
							
								
							
							
								ea129f3072 
								
							 
						 
						
							
							
								
								Implement runtime.Sleep  
							
							
							
						 
						
							2018-04-22 19:23:16 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Ayke van Laethem 
								
							 
						 
						
							
							
							
							
								
							
							
								5067891236 
								
							 
						 
						
							
							
								
								Implement unsigned integers  
							
							
							
						 
						
							2018-04-22 15:59:17 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Ayke van Laethem 
								
							 
						 
						
							
							
							
							
								
							
							
								75fce0f949 
								
							 
						 
						
							
							
								
								runtime: Move print functions to separate file  
							
							
							
						 
						
							2018-04-22 15:26:07 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Ayke van Laethem 
								
							 
						 
						
							
							
							
							
								
							
							
								cf9cea7a0d 
								
							 
						 
						
							
							
								
								Implement array bounds check  
							
							
							
						 
						
							2018-04-21 01:03:05 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Ayke van Laethem 
								
							 
						 
						
							
							
							
							
								
							
							
								1f0651c84c 
								
							 
						 
						
							
							
								
								Implement string out of bounds checks  
							
							
							
						 
						
							2018-04-21 00:40:21 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Ayke van Laethem 
								
							 
						 
						
							
							
							
							
								
							
							
								db66039dfe 
								
							 
						 
						
							
							
								
								Implement panic()  
							
							
							
						 
						
							2018-04-21 00:26:14 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Ayke van Laethem 
								
							 
						 
						
							
							
							
							
								
							
							
								217c48f933 
								
							 
						 
						
							
							
								
								Implement interfaces on the string type  
							
							
							
						 
						
							2018-04-20 22:42:43 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Ayke van Laethem 
								
							 
						 
						
							
							
							
							
								
							
							
								45e7376f39 
								
							 
						 
						
							
							
								
								Implement print() and println() in Go  
							
							
							
						 
						
							2018-04-20 16:32:40 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Ayke van Laethem 
								
							 
						 
						
							
							
							
							
								
							
							
								ff9e7a8b77 
								
							 
						 
						
							
							
								
								Implement CGo support  
							
							... 
							
							
							
							This mostly works around the default CGo support: this compiler doesn't
need special wrappers for C functions as it uses the C calling
convention by default. 
							
						 
						
							2018-04-20 16:31:43 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Ayke van Laethem 
								
							 
						 
						
							
							
							
							
								
							
							
								3e3c3d259f 
								
							 
						 
						
							
							
								
								Add rudimentary interface support  
							
							
							
						 
						
							2018-04-19 20:33:10 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Ayke van Laethem 
								
							 
						 
						
							
							
							
							
								
							
							
								850fef9852 
								
							 
						 
						
							
							
								
								Add builtin len(string)  
							
							
							
						 
						
							2018-04-19 20:24:01 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Ayke van Laethem 
								
							 
						 
						
							
							
							
							
								
							
							
								013b375904 
								
							 
						 
						
							
							
								
								Add type methods  
							
							
							
						 
						
							2018-04-16 17:04:49 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Ayke van Laethem 
								
							 
						 
						
							
							
							
							
								
							
							
								139ac45cb1 
								
							 
						 
						
							
							
								
								Use only putchar() for printing  
							
							
							
						 
						
							2018-04-16 01:56:10 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Ayke van Laethem 
								
							 
						 
						
							
							
							
							
								
							
							
								d555ad93d7 
								
							 
						 
						
							
							
								
								Add support for structs  
							
							
							
						 
						
							2018-04-16 01:01:11 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Ayke van Laethem 
								
							 
						 
						
							
							
							
							
								
							
							
								5dfcb5f085 
								
							 
						 
						
							
							
								
								Reorganize packages  
							
							
							
						 
						
							2018-04-15 03:38:01 +02:00