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

Peter Bergner <bergner at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Last reconfirmed|                            |2022-08-26
             Target|powerpc-*-linux-gnu         |powerpc*-*-linux-gnu
             Status|UNCONFIRMED                 |ASSIGNED
     Ever confirmed|0                           |1
           Assignee|unassigned at gcc dot gnu.org      |bergner at gcc dot 
gnu.org

--- Comment #1 from Peter Bergner <bergner at gcc dot gnu.org> ---
Confirmed.  I see what the problem is.  When we expand the built-in, the cast
to the proper type is lost and we only see a char *vpp.  We then use that type
to create a temporary and we end up with a reg:QI rather than a reg:OO.

Is the casted pointer type supposed to be stripped away like that?

Anyway, I can work around that since I know what the temporary type should be
rather than stealing the type from the src operand.

Reply via email to