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

Stafford Horne <shorne at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Target|                            |or1k
   Last reconfirmed|                            |2025-06-08
             Status|UNCONFIRMED                 |ASSIGNED
     Ever confirmed|0                           |1

--- Comment #1 from Stafford Horne <shorne at gcc dot gnu.org> ---
Discussed on the mailing list.

https://gcc.gnu.org/pipermail/gcc-patches/2025-June/685962.html

In summary validate_subregs was modified in the patch: 

   2025-05-18 eb2ea476db2 Dimitar Dimitrov emit-rtl: Allow extra checks for
paradoxical subregs [PR119966]

After this the oepnrisc port no longer generates subregs when converting
special register SR_F from BI to SI.

A patch in the works is:

    --- a/gcc/config/or1k/or1k.cc
    +++ b/gcc/config/or1k/or1k.cc
    @@ -1408,8 +1408,9 @@ static bool
     or1k_can_change_mode_class (machine_mode from, machine_mode to,
                                reg_class_t rclass)
     {
    +  /* Allow cnoverting special flags to SI mode subregs.  */
       if (rclass == FLAG_REGS)
    -    return from == to;
    +    return from == to || (from == BImode && to == SImode);
       return true;
     }

Reply via email to