================
@@ -196,12 +196,14 @@ bool AArch64FunctionInfo::needsAsyncDwarfUnwindInfo(
const MachineFunction &MF) const {
if (!NeedsAsyncDwarfUnwindInfo) {
const Function &F = MF.getFunction();
+ const AArch64FunctionInfo *AFI = MF.getInfo<AArch64FunctionInfo>();
// The check got "minsize" is because epilogue unwind info is not emitted
// (yet) for homogeneous epilogues, outlined functions, and functions
// outlined from.
- NeedsAsyncDwarfUnwindInfo = needsDwarfUnwindInfo(MF) &&
- F.getUWTableKind() == UWTableKind::Async &&
- !F.hasMinSize();
+ NeedsAsyncDwarfUnwindInfo =
+ (needsDwarfUnwindInfo(MF) && F.getUWTableKind() == UWTableKind::Async
&&
----------------
kmclaughlin-arm wrote:
I think outlining from functions with streaming-mode changes needs more
investigation. I don't think this is just a concern for async unwind; I noticed
that when passing `-enable-machine-outliner` to sme-vg-to-stack.ll that some
calls are outlined with only one of the smstart/smstop instructions surrounding
the call. I'm not sure if this is safe yet, so for now I've disabled outlining
for these functions in `isFunctionSafeToOutlineFrom`.
https://github.com/llvm/llvm-project/pull/83301
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits