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

Dimitar Dimitrov <dimitar at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
      Known to work|                            |15.1.0

--- Comment #1 from Dimitar Dimitrov <dimitar at gcc dot gnu.org> ---

late_combine2 transforms:

(insn 3949 3948 3951 255 (set (reg:QI 56 r14.b0 [orig:1856 _619 ] [1856])
        (and:QI (reg:QI 1 r0.b1 [orig:1855 _201 ] [1855])
            (const_int 3 [0x3]))) 
     (nil))
...         
(insn 3961 7067 3962 255 (set (reg:SI 56 r14.b0)
        (zero_extend:SI (reg:QI 56 r14.b0 [orig:1856 _619 ] [1856])))
     (nil))


into:

(insn 3961 7067 3962 255 (set (reg:SI 56 r14.b0)
        (and:SI (subreg:SI (reg:QI 1 r0.b1 [orig:1855 _201 ] [1855]) 0)
            (const_int 3 [0x3]))) 
     (nil))

That paradoxical hardware register is not valid.  It was not validated 
with pru_hard_regno_mode_ok because the latter would have rejected it.

Reply via email to