adjust for clang-gcc

This commit is contained in:
Youmu Liu
2026-04-03 18:40:11 +08:00
parent 2f74e5e8a9
commit d702b3224c
19 changed files with 217 additions and 126 deletions
+9 -3
View File
@@ -39,6 +39,11 @@ typedef union uint64_u {
uint32_t u32[2];
} uint64_u;
/* Opaque placeholder used by generic single-kernel dispatch.
* It preserves pointer semantics without pretending every branch shares the
* same concrete MAT_KERNEL(T) type. */
typedef struct sn_mat_kernel_opaque sn_mat_kernel_opaque;
typedef struct mat_kernel mat_kernel;
typedef struct mat_panel mat_panel;
@@ -71,9 +76,10 @@ static_assert(sizeof(matrix_task) == 128, "matrix_parallel_task_package size mis
static_assert(sizeof(matrix_task) == 128, "matrix_parallel_task_package size mismatch");
#endif
typedef void(SN_DECL *UNI_MK_PROC)(matrix_task *task);
typedef void(SN_DECL *UNI_SK_PROC)(mat_kernel const *left, mat_kernel const *right,
mat_kernel *restrict ans, uint64_t scalar);
typedef void(SN_DECL *UNI_MK_PROC)(matrix_task const *task);
typedef void(SN_DECL *UNI_SK_PROC)(sn_mat_kernel_opaque const *left,
sn_mat_kernel_opaque const *right,
sn_mat_kernel_opaque *restrict ans, uint64_t scalar);
typedef void(SN_DECL *VECTORNORMALIZEPROC)(sn_vec_f32 *source, sn_vec_f32 *target);
typedef void(SN_DECL *DOTPROC)(void *transpose, __m128 *vector, __m128 *ans);