Граф коммитов

1530 коммитов

Автор SHA1 Сообщение Дата
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