-
Notifications
You must be signed in to change notification settings - Fork 1.6k
Move wasm refs back to Int64s on 32-bits. #33900
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
Move wasm refs back to Int64s on 32-bits. #33900
Conversation
EWS run on previous version of this PR (hash 26042d8) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can we make a using WasmConstRefValue = Const64Value
and use that? That will help enumerate places to update if you ever want to switch back.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
r=me once Keith is happy
26042d8
to
2b27886
Compare
EWS run on previous version of this PR (hash 2b27886) |
2b27886
to
6e47f4e
Compare
EWS run on current version of this PR (hash 6e47f4e) |
@kmiller68 made the changes in the new upload, thanks. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
r=me
https://bugs.webkit.org/show_bug.cgi?id=279977 Reviewed by Justin Michaud and Keith Miller. Lots of generic code carries the assumption that refs are stored as EncodedJSValues. In the interest of getting things working, change wasm.json to use Int64 for refs (rather than pointerType()). Update ref-accessing code in WasmOMGIRGenerator32_64.cpp to match. * Source/JavaScriptCore/wasm/WasmOMGIRGenerator32_64.cpp: (JSC::Wasm::OMGIRGenerator::addRefIsNull): (JSC::Wasm::OMGIRGenerator::addTableGet): (JSC::Wasm::OMGIRGenerator::addRefAsNonNull): (JSC::Wasm::OMGIRGenerator::addI31GetS): (JSC::Wasm::OMGIRGenerator::addI31GetU): (JSC::Wasm::OMGIRGenerator::pushArrayNew): (JSC::Wasm::OMGIRGenerator::addArrayGet): (JSC::Wasm::OMGIRGenerator::emitArrayNullCheck): (JSC::Wasm::OMGIRGenerator::addArrayLen): (JSC::Wasm::OMGIRGenerator::addStructNew): (JSC::Wasm::OMGIRGenerator::addStructNewDefault): (JSC::Wasm::OMGIRGenerator::addStructGet): (JSC::Wasm::OMGIRGenerator::addStructSet): (JSC::Wasm::OMGIRGenerator::emitRefTestOrCast): (JSC::Wasm::OMGIRGenerator::addBranchNull): (JSC::Wasm::OMGIRGenerator::addCallRef): * Source/JavaScriptCore/wasm/wasm.json: Canonical link: https://commits.webkit.org/284070@main
6e47f4e
to
44c025e
Compare
Committed 284070@main (44c025e): https://commits.webkit.org/284070@main Reviewed commits have been landed. Closing PR #33900 and removing active labels. |
44c025e
6e47f4e