diff options
author | Lehua Ding <lehua.ding@rivai.ai> | 2023-09-15 19:13:42 +0800 |
---|---|---|
committer | Lehua Ding <lehua.ding@rivai.ai> | 2023-09-15 20:59:14 +0800 |
commit | dd6e5d29cbdbed25e4e52e5f06b1bfa835aab215 (patch) | |
tree | 152d462835c48c8bd00b9a0728c5c7c9504974bd /gcc/analyzer/infinite-recursion.cc | |
parent | e6dba708c8627080f4ca776590a191683b38336c (diff) | |
download | gcc-dd6e5d29cbdbed25e4e52e5f06b1bfa835aab215.zip gcc-dd6e5d29cbdbed25e4e52e5f06b1bfa835aab215.tar.gz gcc-dd6e5d29cbdbed25e4e52e5f06b1bfa835aab215.tar.bz2 |
RISC-V: Fix using wrong mode to get reduction insn vlmax
This patch fix using wrong mode when emit vlmax reduction insn. We should
use src operand instead dest operand (which always LMUL=m1) to get the vlmax
length. This patch alse remove dest_mode and mask_mode from insn_expander
constructor, which can be geted by insn_flags.
gcc/ChangeLog:
* config/riscv/riscv-protos.h (enum insn_flags): Change name.
(enum insn_type): Ditto.
* config/riscv/riscv-v.cc (get_mask_mode_from_insn_flags): Removed.
(emit_vlmax_insn): Adjust.
(emit_nonvlmax_insn): Adjust.
(emit_vlmax_insn_lra): Adjust.
gcc/testsuite/ChangeLog:
* gcc.target/riscv/rvv/vsetvl/wredsum_vlmax.c: New test.
Diffstat (limited to 'gcc/analyzer/infinite-recursion.cc')
0 files changed, 0 insertions, 0 deletions