Can we use tinygo in ESP32 boards?
Not yet, unfortunately. For that we'd need an up-to-date version of LLVM with the Xtensa backend. For details: https://tinygo.org/faq/what-about-esp8266-esp32/
Closing as there is not much we can do about this.
thanks for the info.
@aykevl according to https://www.esp32.com/viewtopic.php?t=9226, the LLVM / Clang works now with XTensa.
Updated 2019/03/26: support for both ESP32 and ESP8266 targets (-mcpu=esp32, -mcpu=esp8266)
Actually https://github.com/espressif/llvm-xtensa has stalled for quite a while, sadly... hopefully it will pick back up again.
To add to that: we really need an up-to-date LLVM version to get it to work, because TinyGo depends on a recent stable release of LLVM (currently LLVM 9). While it would theoretically be possible to take Espressifs fork and rebase it upon LLVM 9, that would be a massive amount of work and would also make upgrading to a more recent LLVM version significantly harder. The only solution to that is upstreaming the backend, but work on that has sadly stalled.
I would really want to add ESP32 support, but until it's upstream I don't see how we can reasonably support it.
That does make sense @aykevl. Let's see if Espressify will keep the work on LLVM.
FYI.
The project has been archived and looks like active work is going on to commit to upstream llvm.
Here's the new repo to track
Thanks for that info @manikawnth sounds very encouraging.
Most helpful comment
FYI.
The project has been archived and looks like active work is going on to commit to upstream llvm.
Here's the new repo to track
https://github.com/espressif/llvm-project