Skip to content

Compile bug: RISCV cross-compile warnings cause build failure #12693

Closed
@bandoti

Description

@bandoti

Git commit

9c4cef4

Operating systems

Linux

GGML backends

CPU

Problem description & steps to reproduce

I am updating the CI with cross-compile builds for RISCV regression tests (see #12428 ) and a build error is occurring due to some RISCV macros/functions. Since I am not familiar with RISCV functions in question, I am deferring this fix to folks who know that platform better.

First Bad Commit

No response

Compile command

Please see the github workflow here: https://github.com/ggml-org/llama.cpp/pull/12428/files#diff-245fd2c5accd266a35983ed2891af1c8f8b41af027aa393075f15a00b38ff817

Relevant log output

[ 12%] Building C object ggml/src/CMakeFiles/ggml-cpu.dir/ggml-cpu/ggml-cpu-quants.c.o
/home/runner/work/llama.cpp/llama.cpp/ggml/src/ggml-cpu/ggml-cpu-quants.c: In function ‘ggml_vec_dot_q5_0_q8_0’:
/home/runner/work/llama.cpp/llama.cpp/ggml/src/ggml-cpu/ggml-cpu-quants.c:3141:19: error: implicit declaration of function ‘__riscv_vcreate_v_i8m1_i8m2’; did you mean ‘__riscv_vset_v_i8m1_i8m2’? [-Werror=implicit-function-declaration]
 3141 |             v0c = __riscv_vcreate_v_i8m1_i8m2(v0l, v0h);
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~
      |                   __riscv_vset_v_i8m1_i8m2
/home/runner/work/llama.cpp/llama.cpp/ggml/src/ggml-cpu/ggml-cpu-quants.c:3141:19: error: incompatible types when assigning to type ‘vint8m2_t’ from type ‘int’
/home/runner/work/llama.cpp/llama.cpp/ggml/src/ggml-cpu/ggml-cpu-quants.c: In function ‘ggml_vec_dot_q5_1_q8_1’:
/home/runner/work/llama.cpp/llama.cpp/ggml/src/ggml-cpu/ggml-cpu-quants.c:3480:19: error: incompatible types when assigning to type ‘vint8m2_t’ from type ‘int’
 3480 |             v0c = __riscv_vcreate_v_i8m1_i8m2(v0l, v0h);
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~
cc1: some warnings being treated as errors

Metadata

Metadata

Assignees

No one assigned

    Labels

    RiscvIssues specific to RISCV hardwarebuildCompilation issuesgood first issueGood for newcomers

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions