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

vecobj.t exposes Moonjit bugs on PPC64le #581

Open
elliottslaughter opened this issue Jul 8, 2022 · 1 comment
Open

vecobj.t exposes Moonjit bugs on PPC64le #581

elliottslaughter opened this issue Jul 8, 2022 · 1 comment

Comments

@elliottslaughter
Copy link
Member

The vecobj.t test appears to expose multiple bugs in the Moonjit support for the C calling convention. I'm reasonably certain that these are Moonjit bugs rather than Terra bugs because we have extremely comprehensive tests against Clang, which Terra passes with flying colors.

  1. Callbacks: the printfloat callback into Lua ({float}->{}) results in a segfault.
  2. Calling a C/Terra function with a struct (containing arrays) results in garbage.

I'm going to patch the test to work around this since there isn't much we can do about Moonjit limitations.

@elliottslaughter
Copy link
Member Author

The second of these two issues (disagreement in the calling convention for arrays) applies to AArch64 as well. Since I'm pretty sure we're doing this correctly (thanks to cconv_more.t and cconv_array.t) I'm going to apply the workaround here as well.

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

No branches or pull requests

1 participant