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

            Bug ID: 84845
           Summary: [8 Regression] ICE: in extract_insn, at recog.c:2304:
                    unrecognizable insn at -O2 and above at aarch64
           Product: gcc
           Version: 8.0
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: zsojka at seznam dot cz
  Target Milestone: ---
              Host: x86_64-pc-linux-gnu
            Target: aarch64-unknown-linux-gnu

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

Compiler output:
$ aarch64-unknown-linux-gnu-gcc -O2 testcase.c
testcase.c: In function 'foo':
testcase.c:9:1: error: unrecognizable insn:
 }
 ^
(insn 30 29 26 2 (set (reg:DI 114)
        (rotatert:DI (reg:DI 115 [ d ])
            (subreg:QI (and:SI (reg:SI 118)
                    (const_int 65535 [0xffff])) 0))) "testcase.c":8 -1
     (expr_list:REG_DEAD (reg:SI 118)
        (expr_list:REG_DEAD (reg:DI 115 [ d ])
            (nil))))
during RTL pass: sched1
testcase.c:9:1: internal compiler error: in extract_insn, at recog.c:2304
0x5b87a4 _fatal_insn(char const*, rtx_def const*, char const*, int, char
const*)
        /repo/gcc-trunk/gcc/rtl-error.c:108
0x5b8828 _fatal_insn_not_found(rtx_def const*, char const*, int, char const*)
        /repo/gcc-trunk/gcc/rtl-error.c:116
0xbbd41c extract_insn(rtx_insn*)
        /repo/gcc-trunk/gcc/recog.c:2304
0xa68ad7 scan_one_insn
        /repo/gcc-trunk/gcc/ira-costs.c:1449
0xa68ad7 process_bb_for_costs
        /repo/gcc-trunk/gcc/ira-costs.c:1613
0xa696c4 find_costs_and_classes
        /repo/gcc-trunk/gcc/ira-costs.c:1720
0xa6abaa ira_set_pseudo_classes(bool, _IO_FILE*)
        /repo/gcc-trunk/gcc/ira-costs.c:2267
0x1487e00 alloc_global_sched_pressure_data
        /repo/gcc-trunk/gcc/haifa-sched.c:7157
0x1487e00 sched_init()
        /repo/gcc-trunk/gcc/haifa-sched.c:7314
0x148978d haifa_sched_init()
        /repo/gcc-trunk/gcc/haifa-sched.c:7326
0xc220b9 schedule_insns()
        /repo/gcc-trunk/gcc/sched-rgn.c:3504
0xc22973 schedule_insns()
        /repo/gcc-trunk/gcc/sched-rgn.c:3498
0xc22973 rest_of_handle_sched
        /repo/gcc-trunk/gcc/sched-rgn.c:3717
0xc22973 execute
        /repo/gcc-trunk/gcc/sched-rgn.c:3825
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <https://gcc.gnu.org/bugs/> for instructions.


$ aarch64-unknown-linux-gnu-gcc -v
Using built-in specs.
COLLECT_GCC=/repo/gcc-trunk/binary-latest-aarch64/bin/aarch64-unknown-linux-gnu-gcc
COLLECT_LTO_WRAPPER=/repo/gcc-trunk/binary-trunk-258459-checking-yes-rtl-df-extra-aarch64/bin/../libexec/gcc/aarch64-unknown-linux-gnu/8.0.1/lto-wrapper
Target: aarch64-unknown-linux-gnu
Configured with: /repo/gcc-trunk//configure --enable-languages=c,c++
--enable-valgrind-annotations --disable-nls --enable-checking=yes,rtl,df,extra
--with-cloog --with-ppl --with-isl
--with-sysroot=/usr/aarch64-unknown-linux-gnu --build=x86_64-pc-linux-gnu
--host=x86_64-pc-linux-gnu --target=aarch64-unknown-linux-gnu
--with-ld=/usr/bin/aarch64-unknown-linux-gnu-ld
--with-as=/usr/bin/aarch64-unknown-linux-gnu-as --disable-libstdcxx-pch
--prefix=/repo/gcc-trunk//binary-trunk-258459-checking-yes-rtl-df-extra-aarch64
Thread model: posix
gcc version 8.0.1 20180312 (experimental) (GCC)

Reply via email to