Re: [PATCH 1/1] riscv: thead: Fix ICE when enable XTheadMemPair ISA extension.

2023-07-12 Thread Xianmiao Qu via Gcc-patches
On Tue, Jul 11, 2023 at 06:02:18PM +0200, Christoph Müllner wrote: > Hi Kito, > > I take some of the blame because I have sent a series > that consisted of fixes followed by new features. > > You have ack'ed patches 1-9 from the series. > The last two patches (for XTheadMemIdx and XTheadFMemIdx)

[PATCH 1/1] riscv: thead: Fix ICE when enable XTheadMemPair ISA extension.

2023-07-11 Thread Xianmiao Qu via Gcc-patches
The frame related load/store instructions should not been scheduled bewteen echo other, and the REG_FRAME_RELATED_EXPR expression note should should be added to those instructions to prevent this. This bug cause ICE during GCC bootstap, and it will also ICE in the simplified case mempair-4.c,

[PATCH] testsuite: Fix pr108574-3.c failed in arch where sign defaults to unsigned.

2023-01-30 Thread Xianmiao Qu via Gcc-patches
In the architecture where sign defaults to unsigned, the 'f' will be zero extended to int type in the expression 'd = ~(f & ~2880764155)', then the 'd' will become -1 wich cause the case to fail. So it's ok for the architectures where sign defaults to signed like x86, but failed for the

[COMMITTED] C-SKY: Fix wrong sysroot suffix when disable multilib.

2023-01-24 Thread Xianmiao Qu via Gcc-patches
The SYSROOT_SUFFIX_SPEC works even when multilib is disabled. So when build no-multilib glibc toolchain and the options are not same as MULTILIB_DEFAULTS, the sysroot will specify wrong because the libc will not be installed as such. This bug causes glibc regression test error:

[COMMITTED] C-SKY: Support --with-float=softfp in configuration.

2023-01-14 Thread Xianmiao Qu via Gcc-patches
Missed it before, it needs to be used when compiling non-multilib. gcc/ * config.gcc (csky-*-*): Support --with-float=softfp. --- gcc/config.gcc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gcc/config.gcc b/gcc/config.gcc index c4633e869ac..f89a071b495 100644 ---

[committed] C-SKY: Fix skip codition for testcase ldbs.c

2023-01-13 Thread Xianmiao Qu via Gcc-patches
gcc/testsuite/ * gcc.target/csky/ldbs.c : Fix exclude-opts, should not be "*". --- gcc/testsuite/gcc.target/csky/ldbs.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gcc/testsuite/gcc.target/csky/ldbs.c b/gcc/testsuite/gcc.target/csky/ldbs.c index

[committed] C-SKY: Add missing builtin defines for soft float abi.

2023-01-13 Thread Xianmiao Qu via Gcc-patches
The builtin defines for soft float abi are: '__csky_soft_float_abi__' and '__CSKY_SOFT_FLOAT_ABI__'. gcc/ * config/csky/csky.cc (csky_cpu_cpp_builtins): Add builtin defines for soft float abi. --- gcc/config/csky/csky.cc | 5 + 1 file changed, 5 insertions(+) diff --git

[committed] C-SKY: Fix float abi option in MULTILIB_DEFAULTS.

2023-01-13 Thread Xianmiao Qu via Gcc-patches
The msoft-float is alias of mfloat-abi=soft, use mfloat-abi=soft in MULTILIB_DEFAULTS to correspond to the option in MULTILIB_OPTIONS, otherwise it will find the wrong path. gcc/ * config/csky/csky.h (MULTILIB_DEFAULTS): Fix float abi option. --- gcc/config/csky/csky.h | 2 +- 1 file

[committed] C-SKY: Define SYSROOT_SUFFIX_SPEC.

2023-01-13 Thread Xianmiao Qu via Gcc-patches
The earlier patch https://gcc.gnu.org/pipermail/gcc-patches/2021-July/575418.html refine the way to generate sysroot suffix, but it can't find the right path for all CPUs. The SYSROOT_SUFFIX_SPEC should be defined to fix it. gcc/ * config/csky/csky-linux-elf.h (SYSROOT_SUFFIX_SPEC):

[committed] C-SKY: Fix patterns' condition for ck802 smart mode.

2023-01-13 Thread Xianmiao Qu via Gcc-patches
Ck802 smart mode should not be treated as ck801. It do only allocate r0-r8 registers like ck801, but support 32-bits intructions. This bug will cause ICE when compiler pr43164.c for ck802 big-endian, /src/gcc/gcc/testsuite/gcc.c-torture/compile/pr43164.c:16:1: error: insn does not satisfy its

[committed] C-SKY: Skip other CPUs if the testcases are only for ck801.

2023-01-13 Thread Xianmiao Qu via Gcc-patches
Refine some testcases for ck801, if the testcase is only for ck801, add the filename prefix "ck801-", and add dg-skip-if to skip other CPUs. gcc/testsuite/ * gcc.target/csky/and3a.c: Rename to ... * gcc.target/csky/ck801-and.c: ... this. * gcc.target/csky/constpool-3.c:

[committed] C-SKY: Add conditions for ceil etc patterns.

2023-01-13 Thread Xianmiao Qu via Gcc-patches
The ceil etc functions can be only inlined as instruction when they can raise the "inexact" exception. Without the adding conditions, it will cause the "gcc.dg/torture/builtin-fp-int-inexact-c2x.c" etc cases fails. gcc/ * config/csky/csky_insn_fpuv3.md (lsi2): Test

[COMMITTED] C-SKY: Fix expanding of float LE comparing with zero for fpuv3.

2022-09-07 Thread Xianmiao Qu via Gcc-patches
The original code will cause the warning: /usr/lib/gcc-snapshot/bin/g++ -fno-PIE -c -g -O2 -DIN_GCC -DCROSS_DIRECTORY_STRUCTURE -fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wmissing-format-attribute -Woverloaded-virtual

[COMMITTED] C-SKY: Fix missing operand when do spilt for cskyv2_addcc and cskyv2_addcc_invert.

2022-09-06 Thread Xianmiao Qu via Gcc-patches
It will cause ICE when compiling the case: gcc/testsuite/gcc.dg/params/blocksort-part.c gcc/ * config/csky/csky.md (cskyv2_addcc): Fix missing operand. (cskyv2_addcc_invert): Likewise. --- gcc/config/csky/csky.md | 6 -- 1 file changed, 4 insertions(+), 2 deletions(-) diff

[committed] Update c-sky port maintainers' emails.

2022-09-06 Thread Xianmiao Qu via Gcc-patches
/ * MAINTAINERS: Update c-sky port maintainers' emails. --- MAINTAINERS | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/MAINTAINERS b/MAINTAINERS index 02ced0c43aa..5e483e3cbe1 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -67,8 +67,8 @@ bfin port Jie