Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement erlang:exit/2 #766

Merged
merged 1 commit into from
Sep 7, 2023
Merged

Conversation

pguyot
Copy link
Collaborator

@pguyot pguyot commented Aug 19, 2023

Also add documentation for erlang:exit/1
Fix a bug where exit reason was incorrectly a tuple for exception of class exit
No longer dump crash logs when exit reason is normal

Signed-off-by: Paul Guyot [email protected]

@pguyot pguyot force-pushed the w33/implement-more-functions branch from a84426f to aa41976 Compare August 19, 2023 18:18
@pguyot pguyot mentioned this pull request Aug 20, 2023
pguyot added a commit to pguyot/AtomVM that referenced this pull request Aug 20, 2023
Cache last module in scheduler loop to reduce lookups of modules by index
Also fix a bug in stacktraces where the lock was not held
Also remove pointer to GlobalContext from modules

This optimization, in addition to PRs atomvm#766, atomvm#770, atomvm#771 and atomvm#772, bring an
additional gain of 2-3% on Sudoku benchmark

Signed-off-by: Paul Guyot <[email protected]>
pguyot added a commit to pguyot/AtomVM that referenced this pull request Aug 20, 2023
Cache last module in scheduler loop to reduce lookups of modules by index
Also fix a bug in stacktraces where the lock was not held
Also remove pointer to GlobalContext from modules

This optimization, in addition to PRs atomvm#766, atomvm#770, atomvm#771 and atomvm#772, bring an
additional gain of 2-3% on Sudoku benchmark

Signed-off-by: Paul Guyot <[email protected]>
pguyot added a commit to pguyot/AtomVM that referenced this pull request Aug 20, 2023
Cache last module in scheduler loop to reduce lookups of modules by index
Also fix a bug in stacktraces where the lock was not held
Also remove pointer to GlobalContext from modules

This optimization, in addition to PRs atomvm#766, atomvm#770, atomvm#771 and atomvm#772, bring an
additional gain of 2-3% on Sudoku benchmark

Signed-off-by: Paul Guyot <[email protected]>
pguyot added a commit to pguyot/AtomVM that referenced this pull request Aug 20, 2023
Cache last module in scheduler loop to reduce lookups of modules by index
Also fix a bug in stacktraces where the lock was not held
Also remove pointer to GlobalContext from modules

This optimization, in addition to PRs atomvm#766, atomvm#770, atomvm#771 and atomvm#772, bring an
additional gain of 2-3% on Sudoku benchmark

Signed-off-by: Paul Guyot <[email protected]>
pguyot added a commit to pguyot/AtomVM that referenced this pull request Aug 21, 2023
Cache last module in scheduler loop to reduce lookups of modules by index
Also fix a bug in stacktraces where the lock was not held
Also remove pointer to GlobalContext from modules

This optimization, in addition to PRs atomvm#766, atomvm#770, atomvm#771 and atomvm#772, bring an
additional gain of 2-3% on Sudoku benchmark

Signed-off-by: Paul Guyot <[email protected]>
pguyot added a commit to pguyot/AtomVM that referenced this pull request Aug 21, 2023
Cache last module in scheduler loop to reduce lookups of modules by index
Also fix a bug in stacktraces where the lock was not held
Also remove pointer to GlobalContext from modules

This optimization, in addition to PRs atomvm#766, atomvm#770, atomvm#771 and atomvm#772, bring an
additional gain of 2-3% on Sudoku benchmark

Signed-off-by: Paul Guyot <[email protected]>
pguyot added a commit to pguyot/AtomVM that referenced this pull request Aug 24, 2023
Cache last module in scheduler loop to reduce lookups of modules by index
Also fix a bug in stacktraces where the lock was not held
Also remove pointer to GlobalContext from modules

This optimization, in addition to PRs atomvm#766, atomvm#770, atomvm#771 and atomvm#772, bring an
additional gain of 2-3% on Sudoku benchmark

Signed-off-by: Paul Guyot <[email protected]>
libs/etest/src/etest.erl Outdated Show resolved Hide resolved
pguyot added a commit to pguyot/AtomVM that referenced this pull request Aug 25, 2023
Cache last module in scheduler loop to reduce lookups of modules by index
Also fix a bug in stacktraces where the lock was not held
Also remove pointer to GlobalContext from modules

This optimization, in addition to PRs atomvm#766, atomvm#770, atomvm#771 and atomvm#772, bring an
additional gain of 2-3% on Sudoku benchmark

Signed-off-by: Paul Guyot <[email protected]>
pguyot added a commit to pguyot/AtomVM that referenced this pull request Aug 25, 2023
Cache last module in scheduler loop to reduce lookups of modules by index
Also fix a bug in stacktraces where the lock was not held
Also remove pointer to GlobalContext from modules

This optimization, in addition to PRs atomvm#766, atomvm#770, atomvm#771 and atomvm#772, bring an
additional gain of 2-3% on Sudoku benchmark

Signed-off-by: Paul Guyot <[email protected]>
@pguyot pguyot force-pushed the w33/implement-more-functions branch from aa41976 to 3225457 Compare August 26, 2023 21:15
@pguyot pguyot marked this pull request as draft August 26, 2023 21:16
@pguyot pguyot force-pushed the w33/implement-more-functions branch from 3225457 to 18f2aaa Compare August 26, 2023 21:42
pguyot added a commit to pguyot/AtomVM that referenced this pull request Aug 27, 2023
Cache last module in scheduler loop to reduce lookups of modules by index
Also fix a bug in stacktraces where the lock was not held
Also remove pointer to GlobalContext from modules

This optimization, in addition to PRs atomvm#766, atomvm#770, atomvm#771 and atomvm#772, bring an
additional gain of 2-3% on Sudoku benchmark

Signed-off-by: Paul Guyot <[email protected]>
@pguyot pguyot changed the title Implement more functions Implement erlang:exit/2 Aug 27, 2023
pguyot added a commit to pguyot/AtomVM that referenced this pull request Aug 27, 2023
Cache last module in scheduler loop to reduce lookups of modules by index
Also fix a bug in stacktraces where the lock was not held
Also remove pointer to GlobalContext from modules

This optimization, in addition to PRs atomvm#766, atomvm#770, atomvm#771 and atomvm#772, bring an
additional gain of 2-3% on Sudoku benchmark

Signed-off-by: Paul Guyot <[email protected]>
bettio added a commit that referenced this pull request Sep 1, 2023
…ule-index

Reduce lock contention on GlobalContext.module_locks

Cache last module in scheduler loop to reduce lookups of modules by index
Also fix a bug in stacktraces where the lock was not held
Also remove pointer to GlobalContext from modules

This optimization, in addition to PRs #766, #770, #771 and #772, brings an
additional gain of 2-3% on Sudoku benchmark

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
Also add documentation for `erlang:exit/1`
Fix a bug where exit reason was incorrectly a tuple for exception of class exit
No longer dump crash logs when exit reason is normal

Signed-off-by: Paul Guyot <[email protected]>
@pguyot pguyot force-pushed the w33/implement-more-functions branch from 18f2aaa to ce7740c Compare September 5, 2023 04:13
@pguyot pguyot marked this pull request as ready for review September 5, 2023 05:44
@bettio bettio merged commit 8a7498b into atomvm:master Sep 7, 2023
81 checks passed
@pguyot pguyot deleted the w33/implement-more-functions branch September 7, 2023 17:39
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.

3 participants