Skip to content

Remove special-case for simd_shuffle intrinsics in promotion #69493

Closed
@ecstatic-morse

Description

@ecstatic-morse

#69280 tried to normalize promotion of arguments that must be const by requiring #[rustc_args_required_const] everywhere. Currently, intrinsics beginning with the string "simd_shuffle" automatically get their third argument promoted. However, this broke the latest release of the packed_simd crate, which does not define the intrinsics with the requisite attribute (see #69313).

Although this is allowed breakage (you can't define intrinsics without the nightly-only platform_intrinsics feature), I reverted #69280 for now, since it's just a small cleanup and isn't blocking anything. I opened rust-lang/packed_simd#278 to fix packed_simd. Once a version of that crate is released with the fix, we should reapply #69280.

Metadata

Metadata

Labels

A-SIMDArea: SIMD (Single Instruction Multiple Data)A-const-evalArea: Constant evaluation, covers all const contexts (static, const fn, ...)C-cleanupCategory: PRs that clean code up or issues documenting cleanup.S-blockedStatus: Blocked on something else such as an RFC or other implementation work.T-compilerRelevant to the compiler team, which will review and decide on the PR/issue.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions