[gcc r13-2456] C-SKY: Fix missing operand when do spilt for cskyv2_addcc and cskyv2_addcc_invert.
qu
xianmiao@gcc.gnu.org
Tue Sep 6 07:13:55 GMT 2022
https://gcc.gnu.org/g:33b182f61280d991bd0bda33003b5ee2a16024e2
commit r13-2456-g33b182f61280d991bd0bda33003b5ee2a16024e2
Author: Xianmiao Qu <cooper.qu@linux.alibaba.com>
Date: Tue Sep 6 15:10:36 2022 +0800
C-SKY: Fix missing operand when do spilt for cskyv2_addcc and cskyv2_addcc_invert.
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.
Diff:
---
gcc/config/csky/csky.md | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/gcc/config/csky/csky.md b/gcc/config/csky/csky.md
index 6b05930a9fb..6a6592902ef 100644
--- a/gcc/config/csky/csky.md
+++ b/gcc/config/csky/csky.md
@@ -1279,7 +1279,8 @@
"reload_completed && !rtx_equal_p (operands[0], operands[1])"
[(set (match_dup 0)
(if_then_else:SI (ne (reg:CC CSKY_CC_REGNUM) (const_int 0))
- (plus:SI (match_dup 0) (match_dup 2))))]
+ (plus:SI (match_dup 0) (match_dup 2))
+ (match_dup 0)))]
{
emit_insn (gen_movf (copy_rtx (operands[0]),
copy_rtx (operands[1]),
@@ -1305,7 +1306,8 @@
"reload_completed && !rtx_equal_p (operands[0], operands[1])"
[(set (match_dup 0)
(if_then_else:SI (eq (reg:CC CSKY_CC_REGNUM) (const_int 0))
- (plus:SI (match_dup 0) (match_dup 2))))]
+ (plus:SI (match_dup 0) (match_dup 2))
+ (match_dup 0)))]
{
emit_insn (gen_movt (copy_rtx (operands[0]),
copy_rtx (operands[1]),
More information about the Gcc-cvs
mailing list