Simplify compatibility intrinsics for x86#1924
Conversation
Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
WalkthroughThis change updates intrinsic function usage and naming for 64-bit integer and __m128i conversions in x86 SIMD code. It replaces and renames functions and macros to use non-'x' suffixed versions, aligning with standard intrinsic conventions. No logic, control flow, or error handling is modified. Changes
Sequence Diagram(s)sequenceDiagram
participant Caller
participant SIMD_Utils
Caller->>SIMD_Utils: Call _mm_cvtsi128_si64(__m128i)
SIMD_Utils-->>Caller: Return int64_t
Caller->>SIMD_Utils: Call _mm_cvtsi64_si128(int64_t)
SIMD_Utils-->>Caller: Return __m128i
Possibly related PRs
Suggested labels
Suggested reviewers
📜 Recent review detailsConfiguration used: CodeRabbit UI 📒 Files selected for processing (3)
🧰 Additional context used🧠 Learnings (3)📓 Common learningsarch/x86/chorba_sse2.c (1)arch/x86/x86_intrins.h (2)⏰ Context from checks skipped due to timeout of 90000ms (20)
🔇 Additional comments (6)
✨ Finishing Touches
🧪 Generate Unit Tests
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## develop #1924 +/- ##
===========================================
- Coverage 81.81% 81.75% -0.07%
===========================================
Files 147 147
Lines 13322 13321 -1
Branches 2956 2955 -1
===========================================
- Hits 10900 10891 -9
- Misses 1513 1515 +2
- Partials 909 915 +6 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
|
Initially those X-suffixed versions were supposed to differentiate between versions using GPR (suffix) and MMX registers (no suffix) for 64-bit integers, but not all instructions had MMX versions, so there was two versions using GPR registers instead. As time has passed, most compilers don't even try to use MMX registers anymore as there is SSE equivalent versions and 64-bit processors have no need for MMX registers for 64-bit operations. |
!defined(__x86_64__)withdefined(__i386__)for compatibility with MCST LCC.Summary by CodeRabbit