https://gcc.gnu.org/bugzilla/show_bug.cgi?id=116358
Bug ID: 116358 Summary: undefined reference to `__umindi3' at -O3 when compiling with SVE Product: gcc Version: 15.0 Status: UNCONFIRMED Keywords: aarch64-sve, link-failure Severity: normal Priority: P3 Component: target Assignee: unassigned at gcc dot gnu.org Reporter: ktkachov at gcc dot gnu.org Target Milestone: --- Target: aarch64 The following code: #include <algorithm> char a; int b; int var_20; char var_43; void c(int d, int e, short f, long long g[][5], int h[][5]) { long long i; for (bool m; m < a; m = b) if ((0100 ? ~e : 0) ? 0 : std::min((long long)f, i)) for (bool j = 0; d ?: m ?: 0;) for (int k; k < 80485270; k += 4) { for (char l; l < 4; l += 3) var_20 = 0; for (long n(std::min((unsigned long long)(h[k][m] ? d : 0), e ? 3 ? (unsigned long long)16 : 0 : 0) - 16); n < 4; n++) var_43 = d ? std::min(g[m][j], (long long)d) : 0; } } int main() {return 0;} Compiled and linked with -O3 -march=armv9-a breaks at link-time: (.text+0x15c): undefined reference to `__umindi3' Interestingly, the presence of SVE seems to be the triggering factor. -O3 -march=armv9-a+nosve links successfully