aboutsummaryrefslogtreecommitdiff
path: root/libphobos/libdruntime/gcc
diff options
context:
space:
mode:
authorPan Li <pan2.li@intel.com>2023-12-18 08:18:30 +0800
committerPan Li <pan2.li@intel.com>2023-12-18 08:31:06 +0800
commit2c3e4d18b2f75cce287c8566c4231c677a243161 (patch)
treef279383ce8e1e753ac8338cfc8a50c42fe9d595a /libphobos/libdruntime/gcc
parent5440b59e93dcb7e8bdd767f48453a8f229d73a0a (diff)
downloadgcc-2c3e4d18b2f75cce287c8566c4231c677a243161.zip
gcc-2c3e4d18b2f75cce287c8566c4231c677a243161.tar.gz
gcc-2c3e4d18b2f75cce287c8566c4231c677a243161.tar.bz2
RISC-V: Fix POLY INT handle bug
This patch fixes the following FAIL: Running target riscv-sim/-march=rv64gcv/-mabi=lp64d/-mcmodel=medlow/--param=riscv-autovec-lmul=m8 FAIL: gcc.dg/vect/fast-math-vect-complex-3.c execution test The root cause is we generate incorrect codegen for (const_poly_int:DI [549755813888, 549755813888]) Before this patch: li a7,0 vmv.v.x v0,a7 After this patch: csrr a2,vlenb slli a2,a2,33 vmv.v.x v0,a2 gcc/ChangeLog: * config/riscv/riscv.cc (riscv_expand_mult_with_const_int): Change int into HOST_WIDE_INT. (riscv_legitimize_poly_move): Ditto. gcc/testsuite/ChangeLog: * gcc.target/riscv/rvv/autovec/bug-3.c: New test. Signed-off-by: Pan Li <pan2.li@intel.com>
Diffstat (limited to 'libphobos/libdruntime/gcc')
0 files changed, 0 insertions, 0 deletions