Re: -fno-omit-frame-pointer does not work as advertised

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



* 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




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Users]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]

  Powered by Linux