This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug target/78439] [7 Regression] error: insn does not satisfy its constraints (arm-linux-gnueabihf)


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

ktkachov at gcc dot gnu.org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |ASSIGNED
           Assignee|unassigned at gcc dot gnu.org      |ktkachov at gcc dot gnu.org

--- Comment #4 from ktkachov at gcc dot gnu.org ---
Hmm, this looks like a bug exposed by that patch.
The peephole2 pass does something weird.
We have:
(insn 13 33 40 2 (set (mem/c:SI (plus:SI (reg/f:SI 11 fp)
                (const_int -28 [0xffffffffffffffe4])) [3 d.num_comps+0 S4 A64])
        (reg:SI 12 ip [orig:117 _20 ] [117])) "cp-demangle.c":32 632
{*arm_movsi_vfp}
     (expr_list:REG_DEAD (reg:SI 12 ip [orig:117 _20 ] [117])
        (nil)))
(insn 40 13 39 2 (set (mem/f/c:SI (plus:SI (reg/f:SI 11 fp)
                (const_int -24 [0xffffffffffffffe8])) [2 d.subs+0 S4 A32])
        (reg/f:SI 13 sp)) "cp-demangle.c":51 632 {*arm_movsi_vfp}
     (nil))

being turned into:
(insn 68 33 39 2 (set (mem/c:DI (plus:SI (reg/f:SI 11 fp)
                (const_int -28 [0xffffffffffffffe4])) [3 d.num_comps+0 S8 A64])
        (reg:DI 12 ip)) "cp-demangle.c":51 -1
     (nil))

which is not recognisable.
Something dodgy with the store-multiple peepholes I think

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]