https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64015

            Bug ID: 64015
           Summary: [5.0 Regression] AArch64 ICE due to conditional
                    compare
           Product: gcc
           Version: 5.0
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: ktkachov at gcc dot gnu.org
                CC: zhenqiang.chen at arm dot com
            Target: aarch64*

Created attachment 34065
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=34065&action=edit
Reduced testcase

Attached testcase ICEs with:

ice.c: In function 'test':
ice.c:4:1: error: unrecognizable insn:
 }
 ^
(insn 8 7 9 2 (set (reg:CC_DGTU 66 cc)
        (compare:CC_DGTU (and:SI (ne:SI (reg:CC_DGTU 66 cc)
                    (const_int 0 [0]))
                (gtu:SI (reg/v:SI 79 [ b ])
                    (const_int 252 [0xfc])))
            (const_int 0 [0]))) ice.c:3 -1
     (nil))


I've tracked it down to the aarch64 conditional compare patches. r217638 works
whereas r217646 has the ICE.

-O2 should be enough to reproduce.
Zhenqiang, can you take a look please?

Reply via email to