AtomVM
AtomVM copied to clipboard
Tiny Erlang VM
Update few CI tests to optimize VM for the tested OTP version Fix accordingly conditions for following opcodes: - OP_BS_MATCH_STRING is generated by at least OTP 21 to 27 -...
hello, there are 2 interfaces to the i2c-bus in avm_builtins: 1. portbased: components/avm_builtins/i2c_driver.c 2. nifbased: components/avm_builtins/i2c_resource.c (why both?) but why do atomvm_ssd1306.c, ssd1306_display_driver.c and ds3231.c implement their own interfaces? moreover...
Currently, AtomVM has non-existent support for Regex. It comes up in few places in Elixir (`=~` operator, regex sigils, Regex module). OTP has fork of [PCRE](https://github.com/erlang/otp/blob/10e20b1dbe39b056fab430e50b08cb4f3696ae87/erts/emulator/pcre/README.pcre_update.md) with few adjustments. Regex...
Carbon copy from upstream, and adapted to gen_server.erl Ready to go now.. closes https://github.com/atomvm/AtomVM/issues/265 These changes are made under both the "Apache 2.0" and the "GNU Lesser General Public License...
With BEAM: ``` 1> iolist_to_binary("アトム"). ** exception error: bad argument in function iolist_to_binary/1 called as iolist_to_binary([12450,12488,12512]) *** argument 1: not an iodata term 2> iolist_size("アトム"). ** exception error: bad argument...
This is one of the last remaining issues on CI. It has been observed for quite some time. See also [build-and-test (cc, 27, ubuntu-20.04, c++, 1.17)](https://github.com/atomvm/AtomVM/actions/runs/14177476804/job/39715728152?pr=1610#logs). ``` ==14973== Memcheck, a...
After a number of fixes, this timeout issue is one of the last remaining ones. See also [build-and-test (gcc-9, -O3, 26)](https://github.com/atomvm/AtomVM/actions/runs/14177476804/job/39715728079?pr=1610#logs). ``` Run ulimit -c unlimited ==14857== Memcheck, a memory...
I discovered some discrepancies with some of the returns from `estdlib` with OTP. OTP `gen_*` modules export a per-behaviour `start_ret()` type that are functional equivalents, but AtomVM specs use `{ok,...
I tried the bme280 sample (esp32) on my pico, but had crashes on i2c_bus: and/or i2c:open/1. I searched the issues and come to the conclusion that I2C is not supported...
This fixes some of the memleaks found by ASAN running tests on Ubuntu. I believe having ASAN enabled on the AtomVM's CI would be beneficial, as there are still some...