RISC-V: Fix vop_m overloaded C++ API name.
Checks
Commit Message
From: Ju-Zhe Zhong <juzhe.zhong@rivai.ai>
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(+)
Comments
committed, thanks!
On Fri, Jan 20, 2023 at 10:21 AM <juzhe.zhong@rivai.ai> wrote:
> From: Ju-Zhe Zhong <juzhe.zhong@rivai.ai>
>
> 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 76cf14a8cc4..56697f71cbd 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.36.3
>
>
@@ -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 ();
}