diff options
author | Xianmiao Qu <cooper.qu@linux.alibaba.com> | 2023-01-10 21:48:15 +0800 |
---|---|---|
committer | Xianmiao Qu <cooper.qu@linux.alibaba.com> | 2023-01-10 19:57:21 +0800 |
commit | 8f3b032e57ded80f6b773672b36def28b3e7ec50 (patch) | |
tree | b791c08c34ef8267bafb0206f4d1c4bf7dadd64a /gcc/fortran | |
parent | b86703a050c61d0dc81410de707b078a27ce4732 (diff) | |
download | gcc-8f3b032e57ded80f6b773672b36def28b3e7ec50.zip gcc-8f3b032e57ded80f6b773672b36def28b3e7ec50.tar.gz gcc-8f3b032e57ded80f6b773672b36def28b3e7ec50.tar.bz2 |
C-SKY: Fix patterns' condition for ck802 smart mode.
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 constraints:
(insn 48 28 30 2 (set (reg:SI 0 a0 [230])
(ior:SI (reg:SI 2 a2 [222])
(ashift:SI (const_int 1 [0x1])
(const_int 24 [0x18])))) "/src/gcc/gcc/testsuite/gcc.c-torture/compile/pr43164.c":15:10 224 {smart_bseti}
(expr_list:REG_DEAD (reg:SI 2 a2 [222])
(nil)))
gcc/
* config/csky/csky.md (smart_bseti): Change condition to CSKY_ISA_FEATURE (E1).
(smart_bclri): Likewise.
(fast_bseti): Change condition to CSKY_ISA_FEATURE (E2).
(fast_bclri): Likewise.
(fast_cmpnesi_i): Likewise.
(*fast_cmpltsi_i): Likewise.
(*fast_cmpgeusi_i): Likewise.
Diffstat (limited to 'gcc/fortran')
0 files changed, 0 insertions, 0 deletions