https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=280936
--- Comment #10 from Dimitry Andric <[email protected]> --- Right, I knew I had seen this before: https://github.com/llvm/llvm-project/issues/87923 [After 7740565f56ce, "Assertion failed: (isa<Function>(Callee) || isa<GlobalAlias>(Callee)), function analyzeAllUses" with -asan-use-stack-safety] This looks like the same sort of thing. The minimized test case I arrived at now was slightly different: typedef int uint32_t; void sysarch(int, void *); #define DEFINE_UIFUNC(qual, ret_type, name, args) \ ret_type name args __attribute__((ifunc(#name "_resolver"))); \ ret_type(*name##_resolver(uint32_t cpu_feature2)) args int __fillcontextx2_xfpu() { int xfpu; sysarch(2, &xfpu); return 0; } int __fillcontextx2_noxfpu(); DEFINE_UIFUNC(, int, __fillcontextx2, (char *)) { return cpu_feature2 ? __fillcontextx2_xfpu : __fillcontextx2_noxfpu; } void __fillcontextx(char *ctx) { __fillcontextx2(ctx); } I'll need do ping the assignee of the upstream bug again. -- You are receiving this mail because: You are the assignee for the bug.
