Skip to content

Commit

Permalink
avx512: typo fix for typedef of __mmask64
Browse files Browse the repository at this point in the history
  • Loading branch information
mr-c committed May 10, 2023
1 parent bcf4adb commit e8390a3
Showing 1 changed file with 5 additions and 1 deletion.
6 changes: 5 additions & 1 deletion simde/x86/avx512/types.h
Original file line number Diff line number Diff line change
Expand Up @@ -521,7 +521,11 @@ typedef uint64_t simde__mmask64;
#endif
#if !defined(__mmask64) && defined(SIMDE_ENABLE_NATIVE_ALIASES)
#if !defined(HEDLEY_INTEL_VERSION)
typedef uint64_t __mask64;
#if defined(HEDLEY_GCC_VERSION)
typedef unsigned long long __mask64;

This comment has been minimized.

Copy link
@mr-c

mr-c May 10, 2023

Author Collaborator

Gah, yes, I see the new typo here. Fixing now!

This comment has been minimized.

Copy link
@bd-jahn

bd-jahn Nov 15, 2024

Contributor

clang also has a typedef unsigned long long __mask64 in avx512bwintrin.h (link) and this logic causes typedef redefinition with different types ('uint64_t' (aka 'unsigned long') vs 'unsigned long long') error. Do we need another check to make it compatible with clang?

This comment has been minimized.

Copy link
@mr-c

mr-c Nov 15, 2024

Author Collaborator

Seems so, please send a PR; thank you!

This comment has been minimized.

Copy link
@mr-c

mr-c Nov 15, 2024

Author Collaborator

Do you know the 1st version of clang with that behavior?

This comment has been minimized.

Copy link
@bd-jahn

bd-jahn Nov 15, 2024

Contributor

Thanks, I will send a PR shortly.
release/3.6.x is the first release with avx512bwintrin.h defining typedef unsigned long long __mask64;.

This comment has been minimized.

Copy link
@bd-jahn

bd-jahn Nov 15, 2024

Contributor

This comment has been minimized.

Copy link
@bd-jahn

bd-jahn Nov 15, 2024

Contributor

Not sure why this didn't come up in CI test though. Looks like you have multiple CI jobs configured with different clang versions. Maybe they aren't testing with SIMDE_ENABLE_NATIVE_ALIASES macro?

This comment has been minimized.

Copy link
@mr-c

mr-c Nov 16, 2024

Author Collaborator

That's correct, I think we only test the native trick with GCC, so I'll add a clang check next week

#else
typedef uint64_t __mmask64;
#endif
#else
#define __mmask64 uint64_t;
#endif
Expand Down

0 comments on commit e8390a3

Please sign in to comment.