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

Stabilize Wasm relaxed SIMD #1494

Merged
merged 3 commits into from
Jun 27, 2024
Merged

Stabilize Wasm relaxed SIMD #1494

merged 3 commits into from
Jun 27, 2024

Conversation

daxpedda
Copy link
Contributor

@daxpedda daxpedda commented Oct 31, 2023

This is for rust-lang/rust#117468, which has to be accepted (but not merged) first before this can be merged.

I also changed some functions to use the proper LLVM instructions instead of their aliases, see #1396.
Additionally I added aliases to unsigned variants when appropriate (as is done in SIMD128).

Fixes #1396.
Depends on #1523.

@rustbot
Copy link
Collaborator

rustbot commented Oct 31, 2023

Thanks for the pull request, and welcome! The Rust team is excited to review your changes, and you should hear from @Amanieu (or someone else) soon.

@@ -12,7 +12,7 @@ mod simd128;
pub use self::simd128::*;

mod relaxed_simd;
#[unstable(feature = "stdarch_wasm_relaxed_simd", issue = "111196")]
#[stable(feature = "stdarch_wasm_relaxed_simd", since = "CURRENT_RUSTC_VERSION")]
Copy link
Contributor Author

Choose a reason for hiding this comment

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

Is CURRENT_RUSTC_VERSION how it's done in stdarch as well?

Copy link
Member

Choose a reason for hiding this comment

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

No, you have to put in the actual version. Since stdarch is a submodule it doesn't get updated by the release time.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Alright, will do that after the FCP in rust-lang/rust#117468.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I tentatively assigned Rust v1.81 to make this mergable.

@daxpedda daxpedda force-pushed the relaxed-simd branch 2 times, most recently from 3385000 to 7bbd5f7 Compare February 6, 2024 10:20
@daxpedda
Copy link
Contributor Author

daxpedda commented Feb 6, 2024

This is currently based on #1523.

@daxpedda
Copy link
Contributor Author

Rebased onto master after #1523 was merged.

@daxpedda
Copy link
Contributor Author

@Amanieu I believe the current CI failure is not coming from this PR?
https://github.com/rust-lang/stdarch/actions/runs/7903504132/job/21571575006?pr=1494

@Amanieu
Copy link
Member

Amanieu commented Feb 15, 2024

This should fix itself when rust-lang/rust#121088 is merged.

@nikic
Copy link
Contributor

nikic commented Feb 16, 2024

I've put up #1528 for the aarch64 failure.

@CryZe
Copy link
Contributor

CryZe commented Feb 16, 2024

I just noticed that there's a bunch of (aliased) "intrinsics" seemingly missing such as u8x16_relaxed_swizzle. Those should probably be added before stabilizing.

@daxpedda
Copy link
Contributor Author

I just noticed that there's a bunch of (aliased) "intrinsics" seemingly missing such as u8x16_relaxed_swizzle. Those should probably be added before stabilizing.

Do you mean adding u8x16_relaxed_swizzle but aliasing it internally to i8x16.relaxed_swizzle? Is that a thing that's done?

@CryZe
Copy link
Contributor

CryZe commented Feb 16, 2024

Yeah that's done for the normal swizzle for example. And many other instructions.

@daxpedda daxpedda marked this pull request as ready for review June 27, 2024 07:39
@Amanieu Amanieu merged commit 7783b01 into rust-lang:master Jun 27, 2024
29 checks passed
github-actions bot pushed a commit to rust-lang/miri that referenced this pull request Aug 6, 2024
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.

Wasm Relaxed SIMD intrinsics need new names for LLVM 16
5 participants