-
Notifications
You must be signed in to change notification settings - Fork 460
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
Use int64 for addresses and sizes, isolate BigArray int limitation #108
Conversation
@@ -4,11 +4,9 @@ | |||
|
|||
type memory | |||
type t = memory | |||
type address = int |
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.
Specific reason to remove these instead of making them synonyms for int64? They have some documentation value.
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.
The reason I removed was that, before, we half treated these as opaque types and, with this PR, we fully assume they are int64s, so it seemed like an unnecessary abstraction. But I wasn't considering the documentation value; I can add them back.
e8fba63
to
ae68e4a
Compare
ae68e4a
to
25c82c1
Compare
Updated for comment and rebased. |
@rossberg-chromium lgty? |
LGTM modulo nits |
Merging with nits fixed. |
Use int64 for addresses and sizes, isolate BigArray int limitation
* Update conversion op names This renaming was decided on in WebAssembly#884.
* Change element segment encoding * Change table index letter
Also add a note that we expect engines to trap when there are 4 billion waiters. See issue WebAssembly#108.
Remove type annotation on ref.is_null in overview
Fix a few minor issues in local validation rules
This PR is intended to address some of the issues raised in #80 by using
int64
throughoutspec
/. The BigArrayint
limitation is, as suggested in #80, addressed by modeling creation of an array bigger thanmax_int
as anOut_of_memory
trap.