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

--- Comment #14 from Oleg Endo <olegendo at gcc dot gnu.org> ---
(In reply to Kazumoto Kojima from comment #12)
> 
> (insn 516 508 510 18 (set (reg:SI 0 r0)
>         (plus:SI (reg:SI 2 r2)
>             (const_int 4 [0x4]))) xxx.i:100 67 {*addsi3}
>      (nil))
> 
> which is invalid.

I haven't checked the details... but we've added those "special" addsi patterns
and the above seems to be covered by at least one of them.

Maybe at that stage in the reload code it will end up using the last *addsi3
pattern and not try to look for a new pattern in the .md when it wants to
change it.  In other words, maybe it'll help if the *addsi3 patterns are merged
into a single pattern somehow.  I'll give it a try...

Reply via email to