Skip to content

Run initial SIMD spec tests #330

Merged
sunfishcode merged 8 commits into
bytecodealliance:masterfrom
abrown:spec-test-refactored
Sep 26, 2019
Merged

Run initial SIMD spec tests #330
sunfishcode merged 8 commits into
bytecodealliance:masterfrom
abrown:spec-test-refactored

Conversation

@abrown

@abrown abrown commented Sep 6, 2019

Copy link
Copy Markdown
Member

This change will allow us to verify that the SIMD implementation matches what is expected in the spec tests published to https://github.com/WebAssembly/simd/tree/master/test/core/simd. Some notes:

@abrown

abrown commented Sep 6, 2019

Copy link
Copy Markdown
Member Author

@sunfishcode sunfishcode left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

I forget where you asked me this, but to your question about exposing Uimm128:

Stepping back and looking at it, Uimm128 is actually misnamed, because it's not a scalar integer immediate, like the other Uimm* types are. (We should perhaps rename them too, as Uimm* isn't super clear, but that's a separate issue). If we renamed Uimm128 to something like V128Imm, I think it'd be fine to expose that in APIs. And it could have a Display implementation so that you don't have to use {:?} as the PR currently does.

Comment thread wasmtime-environ/src/vmoffsets.rs
@abrown abrown force-pushed the spec-test-refactored branch 4 times, most recently from 07402f6 to 60d1c88 Compare September 11, 2019 18:11
@abrown abrown force-pushed the spec-test-refactored branch from 60d1c88 to cf228ba Compare September 11, 2019 19:29
@abrown abrown marked this pull request as ready for review September 11, 2019 19:31
@abrown abrown force-pushed the spec-test-refactored branch from cf228ba to 4e995ad Compare September 11, 2019 19:37
@abrown abrown force-pushed the spec-test-refactored branch from 4e995ad to 77b12cc Compare September 19, 2019 23:32
@abrown

abrown commented Sep 20, 2019

Copy link
Copy Markdown
Member Author

I guess global get/set is still not working...

@abrown abrown force-pushed the spec-test-refactored branch from 77b12cc to 4609291 Compare September 20, 2019 21:20
@abrown

abrown commented Sep 20, 2019

Copy link
Copy Markdown
Member Author

This is almost there; only bytecodealliance/cranelift#993 needed to address the failing address.wast spec test:

...
@0267 [RexOp1rout#01]               v7, v8 = iadd_ifcout v1, v6
@0267 [-]                           trapnz v8, heap_oob
...
spec_testsuite/address.wast:3: WebAssembly compilation error: Compilation error: Verifier errors:
- inst8: has an invalid controlling type iflags
- inst8: Trapping instruction must have an encoding

@abrown abrown force-pushed the spec-test-refactored branch 3 times, most recently from 5928a59 to 8209a60 Compare September 25, 2019 19:37
@abrown abrown force-pushed the spec-test-refactored branch from 8209a60 to 44c6479 Compare September 26, 2019 19:23
@abrown abrown force-pushed the spec-test-refactored branch from 5cf5fff to ff7f800 Compare September 26, 2019 19:49
@abrown abrown requested a review from sunfishcode September 26, 2019 20:21

@sunfishcode sunfishcode left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Looks good!

@abrown

abrown commented Sep 26, 2019

Copy link
Copy Markdown
Member Author

@sunfishcode thanks for all the debugging help!

@sunfishcode sunfishcode merged commit 0667a28 into bytecodealliance:master Sep 26, 2019
@abrown abrown deleted the spec-test-refactored branch September 26, 2019 22:48
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.

2 participants