Clean up crc32_braid/chorba calls.#2133
Conversation
WalkthroughPromotes and inlines the braid implementation by renaming Changes
Possibly related PRs
Suggested reviewers
🚥 Pre-merge checks | ✅ 1 | ❌ 2❌ Failed checks (1 warning, 1 inconclusive)
✅ Passed checks (1 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing touches
🧪 Generate unit tests (beta)
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. Comment |
There was a problem hiding this comment.
Actionable comments posted: 0
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (3)
arch/generic/crc32_braid_c.c (1)
209-211: Remove duplicatecrc32_braiddefinition (build breaks).There are two
crc32_braiddefinitions, and the second one callscrc32_braid_internal, which no longer exists. This matches the CI redefinition/implicit-declaration failures.🧹 Suggested fix (remove the stale wrapper)
-Z_INTERNAL uint32_t crc32_braid(uint32_t crc, const uint8_t *buf, size_t len) { - return ~crc32_braid_internal(~crc, buf, len); -}arch/x86/chorba_sse2.c (1)
23-846: SSE2 small chorba now returns pre-conditioned CRC.After the inversion refactor, this path still seeds with raw
crcand returnscrcwithout a final complement, which likely makes SSE2 results inconsistent with generic paths and the updated wrapper behavior.✅ Suggested fix to re-align with post-conditioned outputs
- uint64_t next1 = crc; + uint64_t next1 = ~crc; @@ - return crc; + return ~crc;arch/x86/chorba_sse41.c (1)
55-303: SSE4.1 32K chorba path still missing CRC complement.With the wrapper now returning directly, this function still treats
crcas pre-conditioned and returns it without the final~, which likely breaks parity with the generic path.✅ Suggested fix to re-align with post-conditioned outputs
- __m128i init_crc = _mm_cvtsi64_si128(crc); + __m128i init_crc = _mm_cvtsi64_si128(~crc); @@ - return crc; + return ~crc;
b81f07f to
fa0e43b
Compare
fa0e43b to
8176a7e
Compare
802b354 to
6b04b9d
Compare
35285df to
3c01ff8
Compare
3c01ff8 to
d2df036
Compare
No description provided.