File tree Expand file tree Collapse file tree 1 file changed +6
-2
lines changed Expand file tree Collapse file tree 1 file changed +6
-2
lines changed Original file line number Diff line number Diff line change @@ -855,13 +855,17 @@ static inline __vector float __lzs_f16cx4_load(const ggml_fp16_t * x) {
855855 tmp [i ] = GGML_FP16_TO_FP32 (x [i ]);
856856 }
857857
858- return vec_xl (0 , tmp );
858+ // note: keep type-cast here to prevent compiler bugs
859+ // see: https://github.com/ggml-org/llama.cpp/issues/12846
860+ return vec_xl (0 , (const float * )(tmp ));
859861}
860862
861863static inline void __lzs_f16cx4_store (ggml_fp16_t * x , __vector float y ) {
862864 float arr [4 ];
863865
864- vec_xst (y , 0 , arr );
866+ // note: keep type-cast here to prevent compiler bugs
867+ // see: https://github.com/ggml-org/llama.cpp/issues/12846
868+ vec_xst (y , 0 , (float * )(arr ));
865869
866870 for (int i = 0 ; i < 4 ; i ++ ) {
867871 x [i ] = GGML_FP32_TO_FP16 (arr [i ]);
You can’t perform that action at this time.
0 commit comments