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

Deprecate functions that use _mm_setcsr or _mm_getcsr internally #1471

Merged
merged 4 commits into from
Oct 1, 2023

Conversation

eduardosm
Copy link
Contributor

Follow-up of #1454

Additionally, I removed references to _mm_setcsr and _mm_getcsr from documentation of non-deprecated functions.

cc @RalfJung

@rustbot
Copy link
Collaborator

rustbot commented Sep 29, 2023

r? @Amanieu

(rustbot has picked a reviewer for you, use r? to override)

@eduardosm eduardosm changed the title Deprecated functions that use _mm_setcsr or _mm_getcsr internally Deprecate functions that use _mm_setcsr or _mm_getcsr internally Sep 29, 2023
@eduardosm
Copy link
Contributor Author

Is this generating SSE4.1 instructions in SSE functions?

---- core_arch::x86::sse::assert__mm_move_ss_movss stdout ----
disassembly for stdarch_test_shim__mm_move_ss_movss: 
	 0: pushq %rbp
	 1: movq %rsp, %rbp
	 2: blendps $1, %xmm1, %xmm0
	 3: popq %rbp
	 4: retq
	 5: nopl (%rax)
thread 'core_arch::x86::sse::assert__mm_move_ss_movss' panicked at crates/stdarch-test/src/lib.rs:172:9:
failed to find instruction `movss` in the disassembly

@eduardosm
Copy link
Contributor Author

It looks like on macOS some extensions beyond SSE2 are enabled by default, so their instructions can be emitted regardless of the #[target_feature(enable = ...)] attribute. I added -C target-feature=-sse3 as a workaround.

@Amanieu
Copy link
Member

Amanieu commented Oct 1, 2023

Thanks!

@Amanieu Amanieu merged commit 93ab354 into rust-lang:master Oct 1, 2023
26 checks passed
@eduardosm eduardosm deleted the more-sse-csr branch October 1, 2023 18:14
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.

3 participants