diff options
author | Pan Li <pan2.li@intel.com> | 2023-07-04 22:05:36 +0800 |
---|---|---|
committer | Pan Li <pan2.li@intel.com> | 2023-07-07 08:23:32 +0800 |
commit | 55900189ab517906efe08f8d17f3e4a310ee7fff (patch) | |
tree | ac20b439e400a0141fb3cbebdc8765f11611408b /gcc/value-range.h | |
parent | f58819c9aabfe23fa0e6ba422b39a00a980f991e (diff) | |
download | gcc-55900189ab517906efe08f8d17f3e4a310ee7fff.zip gcc-55900189ab517906efe08f8d17f3e4a310ee7fff.tar.gz gcc-55900189ab517906efe08f8d17f3e4a310ee7fff.tar.bz2 |
RISC-V: Fix one bug for floating-point static frm
This patch would like to fix one bug to align below items of spec.
RVV floating-point instructions always (implicitly) use the dynamic
rounding mode. This implies that rounding is performed according to the
rounding mode set in the FRM register. The FRM register itself
only holds proper rounding modes and never the dynamic rounding mode.
Signed-off-by: Pan Li <pan2.li@intel.com>
Co-Authored-By: Robin Dapp <rdapp@ventanamicro.com>
gcc/ChangeLog:
* config/riscv/riscv.cc (riscv_emit_mode_set): Avoid emit insn
when FRM_MODE_DYN.
(riscv_mode_entry): Take FRM_MODE_DYN as entry mode.
(riscv_mode_exit): Likewise for exit mode.
(riscv_mode_needed): Likewise for needed mode.
(riscv_mode_after): Likewise for after mode.
gcc/testsuite/ChangeLog:
* gcc.target/riscv/rvv/base/float-point-frm-insert-6.c: New test.
Diffstat (limited to 'gcc/value-range.h')
0 files changed, 0 insertions, 0 deletions