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

            Bug ID: 96530
           Summary: MMA built-ins reject typedefs of MMA types
           Product: gcc
           Version: 11.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: bergner at gcc dot gnu.org
  Target Milestone: ---

We need to accept typedefs of MMA types too:

typedef __vector_quad vquad_t;

void
foo (__vector_quad *dst)
{
  __builtin_mma_xxsetaccz (dst);
}

void
bar (vquad_t *dst)
{
  __builtin_mma_xxsetaccz (dst);
}

bergner@pike:~/gcc/BUGS$ gcc -S -O2 -mcpu=power10 bug.c 
bug.c: In function ‘bar’:
bug.c:12:3: error: invalid conversion from type ‘* __vector_quad’
   12 |   __builtin_mma_xxsetaccz (dst);
      |   ^~~~~~~~~~~~~~~~~~~~~~~

Reply via email to