Skip to content

Reorganise opcode space #826

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

Merged
merged 4 commits into from
Oct 21, 2016
Merged

Reorganise opcode space #826

merged 4 commits into from
Oct 21, 2016

Conversation

rossberg
Copy link
Member

@lukewagner
Copy link
Member

lgtm

| `i32.or` | `0x72` | | |
| `i32.xor` | `0x73` | | |
| `i32.shl` | `0x74` | | |
| `i32.shr_u` | `0x75` | | |
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the doc has i32.shr_s before i32.shr_u (which is consistent with the rest of the ops)

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks, fixed.

| `i64.or` | `0x84` | | |
| `i64.xor` | `0x85` | | |
| `i64.shl` | `0x86` | | |
| `i64.shr_u` | `0x87` | | |
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

same here

@@ -425,18 +425,16 @@ It is legal to have several entries with the same type.
| Name | Opcode | Immediates | Description |
| ---- | ---- | ---- | ---- |
| `unreachable` | `0x00` | | trap immediately |
| `block` | `0x01` | sig : `inline_signature_type` | begin a sequence of expressions, yielding 0 or 1 values |
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This doesn't match your "alternative opcode proposal". BLock has value 0x2 (nop is 0x1).

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hm, this is a - line in the diff?

@@ -515,132 +523,154 @@ natural alignment. The bits after the
`log(memory-access-size)` least-significant bits must be set to 0. These bits are reserved for future use
(e.g., for shared memory ordering requirements).

## Simple operators ([described here](Semantics.md#32-bit-integer-operators))
## Basic operators ([described here](Semantics.md#constants))
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Constant generating operators?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done (just "Constants")

@titzer
Copy link

titzer commented Oct 21, 2016

lgtm other than nit

@rossberg rossberg merged commit ea163a5 into binary_0xd Oct 21, 2016
@rossberg rossberg deleted the opcodes branch October 21, 2016 08:55
lukewagner added a commit that referenced this pull request Oct 26, 2016
* Reorganise opcode space (#826)

* Future-proof type opcodes (#823)

* Future-proof memory instructions (#824)

* Fix order of copysign (#828)

* Global types can be mutable, just not when imported (#830)

* Naming nit: rename `flags` to `reserved` (#832)

* Bump 0xd's version to 0xd

* Make it hex
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

Successfully merging this pull request may close these issues.

5 participants