From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id CA08C3857028; Thu, 11 May 2023 14:34:07 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org CA08C3857028 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1683815647; bh=ou6SMINRVkVJXVpHNM4d9Tonmn6CTtAEfoqKhT/zqko=; h=From:To:Subject:Date:From; b=Z/FA74al4XddLHm8XnL7Zt0Pdb//IU6TMAVDrhJwHIrtG/Dzmfi8cfwcLkbL7gdD+ MC08bH70g6IOZ9jAvDUsOLId802oWiXOfh/c3w7Y9PCmKHxBWhOphJBPwAKkUx0vWK TiK4iP1htIY0FIyCCHx97KJ48gb/9pDvq5kekiVI= From: "jamborm at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug target/109813] New: ICE in in extract_insn, at recog.cc:2791 on ARM with -mflip-thumb Date: Thu, 11 May 2023 14:34:07 +0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: new X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: target X-Bugzilla-Version: 14.0 X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: jamborm at gcc dot gnu.org X-Bugzilla-Status: UNCONFIRMED X-Bugzilla-Resolution: X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: bug_id short_desc product version bug_status bug_severity priority component assigned_to reporter target_milestone cf_gcchost cf_gcctarget Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 List-Id: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D109813 Bug ID: 109813 Summary: ICE in in extract_insn, at recog.cc:2791 on ARM with -mflip-thumb Product: gcc Version: 14.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: target Assignee: unassigned at gcc dot gnu.org Reporter: jamborm at gcc dot gnu.org Target Milestone: --- Host: x86_64-linux Target: arm-linux-gnueabi With a cross compiler (revision 475904f710c) configured with /home/worker/buildworker/tiber-gcc-trunk-arm/build/configure --enable-languages=3Dc,c++,fortran,rust,m2 --disable-bootstrap --disable-libsanitizer --disable-multilib --enable-checking=3Drelease --prefix=3D/home/worker/cross --target=3Darm-linux-gnueabi --with-as=3D/usr/bin/arm-suse-linux-gnueabi-as And the following testcase: ---------------------------------------- struct bfloat1 { __bf16 a; }; struct bfloat1 h1(__bf16 a) { struct bfloat1 x; x.a =3D a; return x; } struct bfloat2 { __bf16 a; __bf16 b; }; struct bfloat2 h2(__bf16 a, __bf16 b) { struct bfloat2 x; x.a =3D a; x.b =3D b; return x; } ---------------------------------------- Running it as: ~/cross/bin/arm-linux-gnueabi-gcc /tmp/t.c -mflip-thumb -S Results in: /tmp/t.c: In function =E2=80=98h2=E2=80=99: /tmp/t.c:22:1: error: unrecognizable insn: 22 | } | ^ (insn 3 2 4 2 (set (mem/c:BF (reg/f:SI 115) [2 a+0 S2 A16]) (reg:BF 0 r0 [ a ])) "/tmp/t.c":17:39 -1 (nil)) during RTL pass: vregs /tmp/t.c:22:1: internal compiler error: in extract_insn, at recog.cc:2791 0x6673dd _fatal_insn(char const*, rtx_def const*, char const*, int, char const*) /home/worker/buildworker/tiber-gcc-trunk-arm/build/gcc/rtl-error.cc= :108 0x6673f9 _fatal_insn_not_found(rtx_def const*, char const*, int, char const= *) /home/worker/buildworker/tiber-gcc-trunk-arm/build/gcc/rtl-error.cc= :116 0x666870 extract_insn(rtx_insn*) /home/worker/buildworker/tiber-gcc-trunk-arm/build/gcc/recog.cc:2791 0x9164d0 instantiate_virtual_regs_in_insn /home/worker/buildworker/tiber-gcc-trunk-arm/build/gcc/function.cc:= 1611 0x9164d0 instantiate_virtual_regs /home/worker/buildworker/tiber-gcc-trunk-arm/build/gcc/function.cc:= 1984 0x9164d0 execute /home/worker/buildworker/tiber-gcc-trunk-arm/build/gcc/function.cc:= 2033=