<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/83226>83226</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            aarch64: prfm is not treated as an alias to prfum
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            new issue
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          pinskia
      </td>
    </tr>
</table>

<pre>
    Forwarded from https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99092 when building GCC with LLVM's assembler.
But can be reproduced with an inline-asm as simple as:
```
void f(void)
{
        asm("prfm    PLDL1KEEP, [x0, #-8]");
}
```

My analysis of why this is a LLVM assembler issue can be found at https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99092#c9 .
The ARM folks specifically wanted to output pfrm from GCC too:
https://gcc.gnu.org/legacy-ml/gcc-patches/2014-07/msg00612.html
```
When it comes to emitting the pattern, always use "prfm" -- the prfum
form can be generated from the prfm mnemonic when the offset implies
this is necessary.
```

So I suspect this should be accepted by the LLVM assembler also.
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJyklF-vozYTxj-NuRkFOSZ_4IKLk5PNq1c9R1q1VXtZDWYAd22MPOak9NNXhqQrrVZ70ygCYzzjh-f5ATKbfiSqxfEijtcM5zj4UE9m5C8Gs8a3S33z4Y6hpRa64B0MMU4sihehbkLdeq3zfpxzH3qhbs3c_22sRaFuPPj7H83c57o3oriZVhTXqpKVgvtAIzSzsa0Ze_jf6yvcTRzg7e23d6HODMhMrrEUciGvQr5c5ggaR2gIAk3Bt7OmdqvBEcxozUg7ZAfIwMZNlgBXgWu1OMnHf7388KaFTqgyDYSqHovOl20Ajx-yE6oUSk2hc2ni89v1bf_Tp0-fhXoFcbz8JdeBKnalOF6FUqlXcXm2u3538-34vgCOaBc2DL6D-7BAHAyDYcDVha8OgGGe6fn0nZ_HFjD-5wiEKnQFD3t_HQhefn6HztsvDDyRNp3RaO0CdxwjtRA9-DlOc4SpC26jIMUWvf_X5h9JstSjXnbObnd2E0Y9EAt1U3J_2MmzUDfHvZSnvcqH6Ox3zfs9YWMiaO-IkyZyJsaEUBwIJoyRwphCQXvHhWFmgkeAQinY7bZ1oZvd1rDzwT2t7WmkgPHJ-GOlAzeS86PRG7Rp2ncdU4TEmSHeOj3jG0kTM4Yl_0H8v3j4P_CcjI5b8Dz42bZJBmpNU1LRLOtm39CAln2etXXRVkWFGdX7s6z2UsrqnA11c6q6jmSxL_VBl2VZHWWHVBSHY4tnecbM1Eqqg1SqlCe5L875XipZlqVuqup0PHQncZDk0Njc2g-XwstW_uqyUOqUWWzI8vqlUGqk-wZnQv94zUKdanbN3LM4SGs48tcu0URLNWLQw-kgipfN22SYjxADrcYjp9cZrcE13TWobA62_gYtE4e5ybV3iSz78TztpuD_JB2Fuq26El6r7n8CAAD__5svhuE">