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) {
855
855
tmp [i ] = GGML_FP16_TO_FP32 (x [i ]);
856
856
}
857
857
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 ));
859
861
}
860
862
861
863
static inline void __lzs_f16cx4_store (ggml_fp16_t * x , __vector float y ) {
862
864
float arr [4 ];
863
865
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 ));
865
869
866
870
for (int i = 0 ; i < 4 ; i ++ ) {
867
871
x [i ] = GGML_FP32_TO_FP16 (arr [i ]);
You can’t perform that action at this time.
0 commit comments