[Bug target/103124] New: PPC: "mr" instruction is unnecessary when extending DI to V1TI

guihaoc at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Mon Nov 8 03:20:57 GMT 2021


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

            Bug ID: 103124
           Summary: PPC: "mr" instruction is unnecessary when extending DI
                    to V1TI
           Product: gcc
           Version: 12.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: guihaoc at gcc dot gnu.org
  Target Milestone: ---

//test.c
vector __int128 init (long long a)
{
  vector __int128 b;
  b = (vector __int128) {a};
  return b;
}

gcc -O2 -s test.c -mcpu=power9

//p9 assembly
        mr 10,3
        sradi 11,3,63
        mtvsrdd 34,11,10

The first mr is unnecessary if the last one is changed to "mtvsrdd 34,11,3".


More information about the Gcc-bugs mailing list