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

    <tr>
        <th>Summary</th>
        <td>
            [AArch64] AArch64TargetLowering::computeKnownBitsForTargetNode - add support for AArch64ISD::MOV/MVN constants
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            good first issue,
            backend:AArch64
      </td>
    </tr>

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

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

<pre>
    Followup to #148596

AArch64TargetLowering::computeKnownBitsForTargetNode is still missing for the following constant nodes:

```
  case AArch64ISD::MOVIedit:
  case AArch64ISD::MOVImsl:
  case AArch64ISD::MVNIshift:
  case AArch64ISD::MVNImsl:
```

As its tricky to get codegen folds to consistently use these, it might be easiest to add test coverage to AArch64SelectionDAGTest.cpp (there are already some computeKnownBits tests in there) - adding unit test coverage for the existing AArch64ISD::MOVI and AArch64ISD::MOVIshift handling would be useful there as well.

CC @aabhinavg1
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJycU9GOozgQ_Brz0poIDGSGBx7YRJxGe5uTblZ5N7gB3xobuZvk8vcnk8ztaTXak1YCgezuruoqlSIyo0OsRflJlMdErTz5UP_5-c3M3iWd17e69db667oAexAyz4qXstqLtBFp0zShn_bFVxVG5N_9FYNxo8gbkTe9n5eV8bPzV_fJMLU-3MtOXiMYAmJjLcyGyLgRBh-AJ4RhA4snvXfEyjE4r5Hi0A1S7NPHkzYAvSKEB4vXt-Md-ssf51fUhu89Pymayf685nx6pckM_zPpfPo-6b_0okAEhgk4mP7bLQo4IkPvNY7o4q6a4mFc1RCjY3uDlTAqQSjkAQzDbMaJoUNARQaJY4PSGjj-9_6CQY0YDx-83tBiz8a7Y_PbVyTe9csCQr7whAFBxdcGVPoG5GeEH33a5hIYB1uDkBU8RbxoyeoM_4D77hv-bYhjzUc6g3L6w4tNXJiU0zb2Xv1qdVx1JRxWCw_KBFe0dndX9HAAUaRKdZNx6jJmia5zXeWVSrDOnsuiquTzPk2mutJ5NXSZ3D_r9KXTepBVX0glUUrcd0WXmFqmskxfMplWZSXTXTmUqKpn1OW-H7JhEEWKszJ2Z-1l3vkwJoZoxTor86ysEqs6tLQlR8rRew2DCcSwFQkphTwIKTvVf0OnRf4elnhTHpNQx6lP3TqSKFJriOk7Dhu2Wybfe8oj_HLWNvuA1mXxgTfDPrBCyPbL-fRv6ChZg60n5mVLnmyFbEfD09rtej8L2Uaqj8_TEvxf2LOQ7bY6Cdk-JLrU8p8AAAD__y7VapQ">