-
Notifications
You must be signed in to change notification settings - Fork 100
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
jit: Fail to successfully execute the JIT assembler #168
Comments
QEMU (w/ TCG) fails to run
|
After applying the PR #175 patch, this testcase sometimes passes and sometimes fails due to an issue with the assert function in the file src/map.c. The same issue also happens in interpreter-only mode.
|
Can you use rr to debug the recording? |
@qwe661234 can you provide the reproduction steps? |
The repoduction way is
|
This issue is more easily reproducible on x86-64 machines. However, when using the Aarch64 architecture, I haven't encountered this issue on both macOS and GNU/Linux. I am unsure if there is a hidden alignment issue or not. |
I executed 30 times in Aarch64, and all executed properly.
The assertion failure above means that we cannot find the to-be-removed target node in the map. |
Alternatively, check the tutorial Running x86_64-based containers on Mac computers with an Apple silicon processor. |
I quickly reviewed the relevant code and thanks to @ypaskell 's mention, "The assertion failure above means that we cannot find the to-be-removed target node in the map". It led me to think that perhaps the issue in the rb_remove function, when searching for the node to delete, might be due to using I conducted some simple tests on x86_64 Linux, and it appears that this correction can potentially resolve the problem. However, I haven't thoroughly reviewed other code related to the map. If I haven't misunderstood, I can make code adjustments later after my class and then send a pull request to correct this error. |
Hi @visitorckw, Thank you for your careful inspection. It's better to also modify the unit test to ensure this behavior is tested. |
Thanks for your prompt response. |
xkon was tested with interpreter. However, JIT compiler fails to execute it successfully.
The way to reproduce:
Its output:
The text was updated successfully, but these errors were encountered: