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

MIPS 32-bit target without Atomic{I,U}64 #2599

Closed
Borber opened this issue Feb 13, 2023 · 3 comments · Fixed by #3399
Closed

MIPS 32-bit target without Atomic{I,U}64 #2599

Borber opened this issue Feb 13, 2023 · 3 comments · Fixed by #3399
Assignees
Labels
API bug Something isn't working

Comments

@Borber
Copy link

Borber commented Feb 13, 2023

https://github.com/Borber/seam/actions/runs/4154490037/jobs/7186917428#step:5:227

How should I fix this problem

@MisterEggnog
Copy link

MisterEggnog commented Feb 13, 2023

I looked into a bit, seems that the issue has to do with the fact that 64bit atomics are not available on mips platforms with 32bit pointers.

Unfortunately this seems to be an issue with rust-gc 1 so you may want to publish an issue there, however, while the repository is in continuous development they have not released an update in two years.

It should not be too difficult to fix, looking at the code they just need to add a few cfg guards for the 64bit atomics.

Footnotes

  1. That is if boa does not use 64bit atomics, I do not know if that is the case.

@jedel1043
Copy link
Member

We actually do use 64 bit atomics for our JsSymbol implementation.

// Symbol hash.
//
// For now this is an incremented u64 number.
static SYMBOL_HASH_COUNT: AtomicU64 = AtomicU64::new(RESERVED_SYMBOL_HASHES + 1);

We'll probably have to change that to an AtomicUSize, which should be available on more platforms.

Also, we've already pulled rust-gc into boa_gc because we needed to add support for weak pointers, so any issue related to the GC must be filed on this project.

@MisterEggnog
Copy link

I was not aware of that, my apologies.

@jedel1043 jedel1043 added the bug Something isn't working label Feb 13, 2023
@jedel1043 jedel1043 added the API label Mar 4, 2023
@jedel1043 jedel1043 self-assigned this Oct 19, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
API bug Something isn't working
Projects
Status: Done
Development

Successfully merging a pull request may close this issue.

3 participants