From 6ceb761499252a8ce085cc99a369da0b7791d9bd Mon Sep 17 00:00:00 2001 From: anzz1 Date: Wed, 22 Mar 2023 04:36:29 +0200 Subject: [PATCH] MSVC cvt intrinsics --- ggml.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/ggml.c b/ggml.c index b74b04b..c4a645d 100644 --- a/ggml.c +++ b/ggml.c @@ -168,8 +168,13 @@ typedef double ggml_float; #ifdef __F16C__ +#ifdef _MSC_VER +#define GGML_COMPUTE_FP16_TO_FP32(x) _mm_cvtss_f32(_mm_cvtph_ps(_mm_cvtsi32_si128(x))) +#define GGML_COMPUTE_FP32_TO_FP16(x) _mm_extract_epi16(_mm_cvtps_ph(_mm_set_ss(x), 0), 0) +#else #define GGML_COMPUTE_FP16_TO_FP32(x) _cvtsh_ss(x) #define GGML_COMPUTE_FP32_TO_FP16(x) _cvtss_sh(x, 0) +#endif #else