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

    <tr>
        <th>Summary</th>
        <td>
            [AArch64][Windows] Fix stack probing to match recent non-Windows improvements
        </td>
    </tr>

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

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

    <tr>
      <th>Reporter</th>
      <td>
          efriedma-quic
      </td>
    </tr>
</table>

<pre>
    The recent implementation of stack probing for stack-clash (#66525 #66524 etc.)has exposed a few cases where we don't properly probe the stack according to the Windows rules. Specifically:

- For large call frames (calling a function with many arguments, where the caller also has dynamic allocation)
- For SVE locals/spills.

Also, we might want to consider leveraging the new inline probing sequences in some cases instead of calling __chkstk.

CC @mstorsjo 
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJxcks1yozoQhZ9GbLrsAgEmXrBw4usXyK17l6m21CAlQiJqEcdvPyWGzGRmw4-61Oec7g-Z7eiJetE-ivZc4JJMiD0N0ZKecPe-WFVcg773_xqCSIp8AjvNjibyCZMNHsIAnFC9wRzD1foRhhB_nuyUQzYg5IOQ9eHQyha2jwYoqb2QR4MM9DkHJg0IA91AIRPDzVAkuBHo4IXsUm4-U3T3VYUgGdpUUakQddZNYT3-33odbgxxccR7eJ5J2cEqdO4u6pMoz6Lcnju4hAgO40iQ6zBEnIiz4fybeyIMi1drzptNBib0d8A4Ljk_C_m0Oc3C-Q5FQMcBci599zhZBehcUOushDx-V37-7x_IJcdCXni2zvH-u7-T47BKEEx2NAlu6FOOqYJnqymCow-KOK7pDYGnG1jvrKdfy2B6X8grYrAeOEy0Ddh6ToQ6b-8r68uLMm-c3v7w8PQEoiknTiHya4BC97U-1kcsqK-6sqq75qHtCtPL9iprWR2xVWVVSVJaI2mtrl3ZkB7awvaylHVV1aUsy64-7Euq62Z4GBpNVdO1lWhKmtC6vXMf0z7EsbDMC_VdfezawuGVHK-cSrnmzEUhZcY29vnO7rqMLJrSWU78u0uyya2An05RmUMj2rNoHzdKRHuGi_38i-AUYMKkzBfxPvjdF1Z2mmP4WPnnYomuNynNnMmSFyEvo01mue5VmIS8ZA_bazfH8EoqCXlZneeVr8l-BAAA__8beSwE">