Commit Graph

36 Commits

Author SHA1 Message Date
Ron Evans b4dd2dbf60 docs: change links in README and remove old ReadTheDocs pages to point to TinyGo.org site
Signed-off-by: Ron Evans <ron@hybridgroup.com>
2019-01-13 20:29:45 +01:00
Konstantin Yegupov a8dd82538e all: add flag to enable i64 parameters in WebAssembly 2019-01-03 18:09:33 +01:00
Johan Brandhorst a830451426 Dockerfile, README, docs: Remove entrypoint
This was causing more trouble than it was helping,
so lets remove it.
2018-12-17 20:41:33 +01:00
Ayke van Laethem 564b1b3312 compiler: always use fat function pointers with context
This reduces complexity in the compiler without affecting binary sizes
too much.

Cortex-M0:   no changes
Linux x64:   no changes
WebAssembly: some testcases (calls, coroutines, map) are slightly bigger
2018-12-09 18:47:39 +01:00
Ron Evans 8325f2a53d reelboard: support Reel Board (nrf52840 dev board)
Signed-off-by: Ron Evans <ron@hybridgroup.com>
2018-12-01 18:25:36 +01:00
Ron Evans 8f35a4711a pca10056: support this nrf52840-based board
Signed-off-by: Ron Evans <ron@hybridgroup.com>
2018-12-01 18:19:42 +01:00
Ayke van Laethem e54a1c4dc0 compiler: disallow exporting functions that have their address taken
This simplifies the ABI a lot and makes future changes easier.
In the future, determining which functions need a context parameter
should be moved from IR generation into an optimization pass, avoiding
the need for recursively scanning the Go SSA.
2018-12-01 17:41:20 +01:00
Darren Rush cea0a5977a docs: enable tinygo/docker to resolve go dependencies
Example for mapping the GOPATH into the tinygo docker image so that go
dependencies installed on the host can be found by the image.
2018-12-01 13:40:42 +01:00
Ayke van Laethem 62d74d8329 all: compile and link using clang, where possible 2018-11-22 16:20:10 +01:00
Ron Evans ce0ad1daa2 pca10031: add support for PCA10031 nrf51 wireless dongle
Signed-off-by: Ron Evans <ron@hybridgroup.com>
2018-11-21 10:36:36 +01:00
Ayke van Laethem 9392ef900d avr: add support for the digispark
Blinking the on-board LED works. Nothing else has been tested yet.
2018-11-20 18:50:24 +01:00
Ayke van Laethem 74b5e28a38 docs: add documentation for the -gc compiler flag 2018-11-18 19:32:57 +01:00
Ron Evans ae3535945c all: add support to Dockerfile for AVR and ARM targets
Signed-off-by: Ron Evans <ron@hybridgroup.com>
2018-11-15 12:53:10 +01:00
Ayke van Laethem 101d41dc58 compiler: pass i64 return value in an extra pointer param
To support the WebAssembly<->JS barrier, return values also have to be
passed in memory. i64 return values are used by syscall/js, so must be
supported across this ABI barrier.
2018-11-14 12:35:43 +01:00
Ayke van Laethem 2e22d53e5d compiler: work around i64 limitation in JavaScript
JavaScript does not support i64 directly, so make sure we pass a pointer
instead which can be read from JavaScript.

This is a temporary workaround which should be removed once JavaScript
supports some form of i64 (probably in the form of BigInt).
2018-11-03 12:03:49 +01:00
Ayke van Laethem c7cf6f0e82 docs: move calling convention documentation here 2018-11-01 11:41:24 +01:00
Ayke van Laethem 85d5fe7643 docs: add description of internal datatypes 2018-10-31 20:47:12 +01:00
Ayke van Laethem 06b8afab2e docs: add command line subcommands + flags documentation 2018-10-31 19:55:48 +01:00
Ayke van Laethem 7ea9a32058 docs: give a small example how JS<->wasm bridging is done 2018-10-31 19:55:46 +01:00
Ayke van Laethem c88d2d10a7 docs: give a working Docker example 2018-10-21 22:42:38 +02:00
Ayke van Laethem 58ce5d9bf2 docs: add WebAssembly to targets and improve formatting 2018-10-21 20:22:21 +02:00
Ayke van Laethem e5e09747f0 all: add WebAssembly backend 2018-10-21 19:47:47 +02:00
Johan Brandhorst 97caabb8c2 Add Dockerfile 2018-10-21 00:28:18 +01:00
Ayke van Laethem b81aecf753 docs: add "Supported targets" page 2018-10-18 15:35:50 +02:00
Ayke van Laethem 72390c21cb docs: add FAQ 2018-10-17 17:55:11 +02:00
Ayke van Laethem 392bba8394 compiler: add support for parameters to inline assembly 2018-10-15 19:37:09 +02:00
Ayke van Laethem 0e65b0da1c docs: add page "Go on microcontrollers" 2018-10-09 15:32:40 +02:00
Ayke van Laethem 823ecd5167 docs: reorder internals sections 2018-10-09 15:32:40 +02:00
Ayke van Laethem f0f6a12d19 docs: add avr-libc as a dependency 2018-10-07 22:14:44 +02:00
Ayke van Laethem 22da104530 all: use compiler-rt for builtins 2018-10-07 19:04:29 +02:00
Ayke van Laethem bcf441ccba docs: add another way in which a llvm-7-dev installation can fail 2018-09-30 18:02:15 +02:00
Ayke van Laethem a2e57b40f9 docs: update installation instructions
* Update to system-installed LLVM.
  * Avoid the use of make.
2018-09-30 15:40:58 +02:00
Ayke van Laethem 3850530c88 docs/installation: fix LLVM hyperlink 2018-09-23 17:21:49 +02:00
Ayke van Laethem 3e1a60351d docs/internals: fix hyperlink 2018-09-23 17:20:24 +02:00
Ayke van Laethem c9a2b3f417 docs: remove "Indices and tables" 2018-09-23 17:05:32 +02:00
Ayke van Laethem f7f33a1163 docs: add initial documentation 2018-09-23 16:46:57 +02:00