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

    <tr>
        <th>Summary</th>
        <td>
            ARM extensions tied to -march rather than having dedicated -mEXTENSION options
        </td>
    </tr>

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

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

    <tr>
      <th>Reporter</th>
      <td>
          luke-jr
      </td>
    </tr>
</table>

<pre>
    It seems ARM extensions must be specified as `-march=armv8-a+crc+crypto`, and cannot be enabled/disabled on a case-by-case basis like the traditional `-msse2` (eg, `-mcrc -mcrypto -mno-crc`). This makes it difficult to allow users to specify their preferred `-march` and build runtime-loaded modules using optional extensions - the build system needs to figure out what the base -march is, and append modifiers to that.
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJxdkcFunDAQhp8GLiNWrNklcOCQNImUQ1OpzaFXAwM4a2zksXe7b9-xN1GqSoDHeDzf_8_0drx2Lx4IcSW4__kd8I9HQ8oagjWQhx6BNhzUpHAESZDVZbFKNyxZ9Sjdem4KmYmHwQ3pe9285YxMfANpRhikMTbVQCN7jWMmnkdFKQRrQHIGYdFfi7hCL0kRaHVC8Au_To7KsxSpb1giFBxAJhqcIyP9ZTbEb2RzYGwR1UQR7Q7eFq64yhMSKA-jmiY1BO2BU6XW9gKB0FHc3lxeI1k52BxO6BzL_DLM5GiqD0qP4ILxasVCWzly1mrHoBkSSJkZ7PYh-59uFsnT7TJdyeMKBnFM7EnNwSHY4OGySH_LjB25kUHRZ0fltqFJuDiRm3LPV3Y5dvu6FodWiH2Zj101tlUrc6-8xu6_wfo4y9SsVN1J5rlYxsAiz9EAW1KD9JxWrE-_355ef738eP2wRXlwulu83yir7nmi_MzKL6HfDXbljdbnz6XYnH3HwfNWEQVkH8_Hu2PT5Esn6mFom77FQy_KgVVjL6qpb4bD_lhH7Vr2qKnLjg-ZEAYvkEpwnB0fc9WJUoiyLet9K6qq3E1TU91V5XG_r5EPyuxQ4iqV3kUdO-vm3HVJUh9m4kOtyNPXoSRSMw8k4bi-DH6xfCOcsHh3eUJ3SfpfjyUS9A">