From ce34fa309e05e4c417fc4ff96e6ab9e8dd058836 Mon Sep 17 00:00:00 2001 From: Ju-Zhe Zhong Date: Fri, 20 Jan 2023 10:20:29 +0800 Subject: [PATCH] RISC-V: Fix vop_m overloaded C++ API name. According to https://github.com/riscv-non-isa/rvv-intrinsic-doc/tree/master/ For "vop_m" intrinsics, C++ overloaded API does not have "_m" suffix. gcc/ChangeLog: * config/riscv/riscv-vector-builtins-shapes.cc (struct loadstore_def): Remove _m suffix for "vop_m" C++ overloaded API name. --- gcc/config/riscv/riscv-vector-builtins-shapes.cc | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/gcc/config/riscv/riscv-vector-builtins-shapes.cc b/gcc/config/riscv/riscv-vector-builtins-shapes.cc index 896704b..ef3a315 100644 --- a/gcc/config/riscv/riscv-vector-builtins-shapes.cc +++ b/gcc/config/riscv/riscv-vector-builtins-shapes.cc @@ -128,6 +128,10 @@ struct loadstore_def : public build_base b.append_name (type_suffixes[instance.type.index].vector); } + /* According to rvv-intrinsic-doc, it does not add "_m" suffix + for vop_m C++ overloaded API. */ + if (overloaded_p && instance.pred == PRED_TYPE_m) + return b.finish_name (); b.append_name (predication_suffixes[instance.pred]); return b.finish_name (); } -- 2.7.4