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

B3 ArgumentRegValue can encode a register pair on 32-bit #14310

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

jjgriego
Copy link
Contributor

@jjgriego jjgriego commented May 24, 2023

f48467a

B3 ArgumentRegValue can encode a register pair on 32-bit
https://bugs.webkit.org/show_bug.cgi?id=257286

Reviewed by NOBODY (OOPS!).

To start to wedge B3 support into the 32-bit port, we need a way to still talk
about the full breadth of B3 values, which includes 64-bit numbers; we need a
way to take these as arguments. Add a constructor for ArgumentRegValue which
denotes a register pair interpreted as a single 64-bit argument.

If we prefer, an alternative would be to add a new Value subclass for this; this
seemed more straightforward.

* Source/JavaScriptCore/b3/B3ArgumentRegValue.cpp:
(JSC::B3::ArgumentRegValue::dumpMeta const):
* Source/JavaScriptCore/b3/B3ArgumentRegValue.h:
* Source/JavaScriptCore/b3/B3Validate.cpp:

f48467a

Misc iOS, tvOS & watchOS macOS Linux Windows
βœ… πŸ§ͺ style βœ… πŸ›  ios βœ… πŸ›  mac βœ… πŸ›  wpe βœ… πŸ›  wincairo
βœ… πŸ›  ios-sim βœ… πŸ›  mac-AS-debug ❌ πŸ§ͺ wpe-wk2
βœ… πŸ§ͺ webkitperl βœ… πŸ§ͺ ios-wk2 βœ… πŸ§ͺ api-mac βœ… πŸ›  gtk
βœ… πŸ§ͺ ios-wk2-wpt βœ… πŸ§ͺ mac-wk1 βœ… πŸ§ͺ gtk-wk2
βœ… πŸ›  πŸ§ͺ jsc βœ… πŸ§ͺ api-ios βœ… πŸ§ͺ mac-wk2 βœ… πŸ§ͺ api-gtk
βœ… πŸ›  πŸ§ͺ jsc-arm64 βœ… πŸ›  tv βœ… πŸ§ͺ mac-AS-debug-wk2 βœ… πŸ›  jsc-armv7
βœ… πŸ›  tv-sim βœ… πŸ§ͺ jsc-armv7-tests
βœ… πŸ›  watch βœ… πŸ›  jsc-mips
βœ… πŸ›  watch-sim βœ… πŸ§ͺ jsc-mips-tests

https://bugs.webkit.org/show_bug.cgi?id=257286

Reviewed by NOBODY (OOPS!).

To start to wedge B3 support into the 32-bit port, we need a way to still talk
about the full breadth of B3 values, which includes 64-bit numbers; we need a
way to take these as arguments. Add a constructor for ArgumentRegValue which
denotes a register pair interpreted as a single 64-bit argument.

If we prefer, an alternative would be to add a new Value subclass for this; this
seemed more straightforward.

* Source/JavaScriptCore/b3/B3ArgumentRegValue.cpp:
(JSC::B3::ArgumentRegValue::dumpMeta const):
* Source/JavaScriptCore/b3/B3ArgumentRegValue.h:
* Source/JavaScriptCore/b3/B3Validate.cpp:
@jjgriego jjgriego self-assigned this May 24, 2023
@jjgriego jjgriego force-pushed the eng/b3-32bit-argument-reg-value-pair branch from 333f051 to f48467a Compare May 24, 2023 22:23
@jjgriego jjgriego added the JavaScriptCore For bugs in JavaScriptCore, the JS engine used by WebKit, other than kxmlcore issues. label May 24, 2023
@webkit-ews-buildbot webkit-ews-buildbot added the merging-blocked Applied to prevent a change from being merged label May 24, 2023
@jjgriego jjgriego marked this pull request as ready for review May 25, 2023 12:03
@jjgriego jjgriego requested a review from a team as a code owner May 25, 2023 12:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
JavaScriptCore For bugs in JavaScriptCore, the JS engine used by WebKit, other than kxmlcore issues. merging-blocked Applied to prevent a change from being merged
Projects
None yet
3 participants