* Daniel Alley: > What has happened is that because -O2 optimized away all of the stack > access for the function, so it uses no space on the stack, so there is > no stack frame separate from the caller's. > > It is unlikely that the critical bottleneck of any applications will > be on such a function. Is it? Plenty of math functions and cryptographic primitives are like that. Anything that makes an inline system call, too. Maybe you can infer from the caller's caller where the time is spent in these cases. People certainly seem to be concerned about this gap because they included -mno-omit-leaf-frame-pointer in the build flags. This is something that an upstream/ABI discussion could cover, with some sort of protocol that ensures the toolchain produces something the intended tools can consume. For example, there could be a rule that only frames up to a certain size may lack a frame pointer, so that a fixed-size copy from the top of the stack can recover the caller address by looking at the DWARF unwinding data (out of context, for that frame alone). Or it could be spelt out that LBR has to be used to recover the calling frame. This isn't really something that Fedora can implement in a downstream change, though. Thanks, Florian _______________________________________________ devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue