<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/144477>144477</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
[DAG] Add SDPatternMatch m_SpecificScalarVT / m_SpecificVectorElementVT matchers
</td>
</tr>
<tr>
<th>Labels</th>
<td>
good first issue,
llvm:SelectionDAG
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
RKSimon
</td>
</tr>
</table>
<pre>
We already have m_SpecificVT(EVT) which matches a specific requested value type, these helpers would be similar but would match the scalar/vector element component type:
- [ ] Add SDPatternMatch::m_SpecificScalarVT matcher to match a source SDValue getScalarType result (i.e. either a scalar type or vector element element type)
- [ ] Add SDPattcrnMatch::m_SpecificVectorElementVT matcher to check a source SDValue type is a vector and match its getVectorElementType result
- [ ] Unit test coverage in SelectionDAGPatternMatchTest.cpp
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJyEk1Fvmz4UxT-NebkqAgMFHnhIm_J_-GvStGTZ42TMBbwZzOxLqnz7yYSqzdZqUhQjfHz8O_dehHOqnxArlj2wbB-IhQZjqy__H9RopqAx7aX6hiC0RdFeYBBnhPH7YUapOiVPR8aLJ_9fwvOg5ACjIDmgAwFu04DFXws6whbOQi8IdJmR8UegAR3CgHpG6-DZLLqFBsGpUWlhoVloe7l6ejk4KbSwjNdnlGQsoMYRJwJpxtlM_mk1T3Ys8r87YNkDsGwPu7aFw_6zIEI7ffJ-XpTsXqMcVuvTcUtggcx2sQBnFisRDvvTGqBHuqqPlxnBols0AeOFCjEEVORPi411BQJj4Q_il_VajPIDWPkB7Gk1e7p63DLLAeXPv5lXDOX7soGI6aWwipyPdOP5JtkN2tdJERA6X_IzWtEjqAkOqFGSMtN-99_bGh_RUSjnOWirpC2TUgRYxXkWxWmRxWUwVFFTxmXBmzyJChQ86bK4y8syjjoedRiLQFU84ll0H-dRweOsCNM4KTssi_u8lel9VLI0wlEoHWp9HkNj-0A5t2AVp2ma54EWDWq3DjfnvTEtdMo6glXEOGf8kXHuz7Jk9zaG38v2ga383l2z9I6lkVaO3OtNpEivH47Xvztk8M58MV7DPzvpgsXqaiCane89rxmve0XD0oTSjIzXK_J1uZut-YGSGK_XWI7xeot_rvjvAAAA___Fq06N">