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

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

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

--- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
For arm, it worked in GCC 6.3.0:
```
lx:
        cmp     r0, r1
        movle   r0, #0
        movgt   r0, #1
        bx      lr
```

But started to fail in GCC 7.x:
```
lx:
        cmp     r0, r1
        movls   r0, #0
        movhi   r0, #1
        bx      lr
```

For GCC 6:
```
Trying 10, 8 -> 11:
Successfully matched this instruction:
(set (reg:CC 100 cc)
    (reg:CC 100 cc))
Successfully matched this instruction:
(set (reg:SI 124)
    (gt:SI (reg:CC 100 cc)
        (const_int 0 [0])))
(gt:SI (reg:CC 100 cc)
    (const_int 0 [0]))
```

While in 7:
```
Trying 14, 13 -> 15:
Successfully matched this instruction:
(set (reg:CC 100 cc)
    (reg:CC 100 cc))
Successfully matched this instruction:
(set (reg:SI 124)
    (gtu:SI (reg:CC 100 cc)
        (const_int 0 [0])))
(gtu:SI (reg:CC 100 cc)
    (const_int 0 [0]))
```

Reply via email to