Skip to content

Conversation

@pguyot
Copy link
Collaborator

@pguyot pguyot commented Oct 18, 2025

Continuation of:

Precompile an ELF binary with DWARF symbols. Suitable for debugging, registering symbols at runtime with gdb and lldb.
Currently uses newly allocated Erlang language code.

These changes are made under both the "Apache 2.0" and the "GNU Lesser General
Public License 2.1 or later" license terms (dual license).

SPDX-License-Identifier: Apache-2.0 OR LGPL-2.1-or-later

pguyot added 30 commits October 19, 2025 12:49
Signed-off-by: Paul Guyot <[email protected]>
Signed-off-by: Paul Guyot <[email protected]>
Signed-off-by: Paul Guyot <[email protected]>
Signed-off-by: Paul Guyot <[email protected]>
pguyot added 13 commits October 19, 2025 12:50
Signed-off-by: Paul Guyot <[email protected]>
Use a cache to remember tail calls that were already implemented and
replace further implementations of the same tail call with a jump to the
previous implementation.

Coverage shows that all cases are covered in libs/estdlib/src and libs/jit/src:

OP_RETURN: 50 misses, 1735 hits (97%)
OP_JUMP/OP_CALL_LAST/OP_CALL_ONLY: 656 misses, 389 hits (37%)
OP_CALL_LAST: 220 misses, 206 hits (48%)
OP_FUNC_INFO: 58 misses, 1619 hits (97%)

Signed-off-by: Paul Guyot <[email protected]>
pguyot added 14 commits October 21, 2025 23:14
- Add riscv32 to AVM_PRECOMPILED_TARGETS
- Enable ENABLE_TRACE for debugging
- Add riscv32 directory handling in test.c

Signed-off-by: Paul Guyot <[email protected]>
Signed-off-by: Paul Guyot <[email protected]>
Signed-off-by: Paul Guyot <[email protected]>
Signed-off-by: Paul Guyot <[email protected]>
Signed-off-by: Paul Guyot <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant