Skip to content

Use unified data types in LoongArch SIMD intrinsics - #602

Merged
Leonard Hecker (lhecker) merged 1 commit into
microsoft:mainfrom
heiher:loong-simd-types
Aug 12, 2025
Merged

Leonard Hecker (lhecker) merged 1 commit into
microsoft:mainfrom
heiher:loong-simd-types

Conversation

@heiher

Copy link
Copy Markdown
Contributor

Prior to Rust nightly-2025-08-08, LoongArch SIMD intrinsics used distinct vector types such as v4i32, v8i32, and others. Passing data between intrinsics of different types required explicit mem::transmute calls, introducing unnecessary boilerplate and complexity.

This change adopts unified m128i and m256i types for all LoongArch SIMD intrinsics, eliminating redundant conversions and simplifying cross-intrinsic data handling.

Prior to Rust `nightly-2025-08-08`, LoongArch SIMD intrinsics used distinct
vector types such as `v4i32`, `v8i32`, and others. Passing data between
intrinsics of different types required explicit `mem::transmute` calls,
introducing unnecessary boilerplate and complexity.

This change adopts unified `m128i` and `m256i` types for all LoongArch SIMD
intrinsics, eliminating redundant conversions and simplifying cross-intrinsic
data handling.

@lhecker Leonard Hecker (lhecker) 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.

Thank you for maintaining this code!

@lhecker
Leonard Hecker (lhecker) enabled auto-merge (squash) August 12, 2025 11:56
@lhecker
Leonard Hecker (lhecker) merged commit e2ea892 into microsoft:main Aug 12, 2025
@heiher
hev (heiher) deleted the loong-simd-types branch August 12, 2025 13:16
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