[llvm-dev] LTO and Inlining and Stack Frame Size

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

[llvm-dev] LTO and Inlining and Stack Frame Size

Alberto Barbaro via llvm-dev
Inlining is more aggressive with LTO. This could lead to stack frame sizes growing. However, sometimes you're working with software that is sensitive to stack sizes and would like to keep things within a certain limit (say 8K). Is there a way to achieve this with clang's LTO (or indeed its inliner in general)?

-bw

_______________________________________________
LLVM Developers mailing list
[hidden email]
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
Reply | Threaded
Open this post in threaded view
|

Re: [llvm-dev] LTO and Inlining and Stack Frame Size

Alberto Barbaro via llvm-dev
This is probably better controlled in the inliner, and there are internal options there already for controlling various size thresholds. LTO doesn't directly control inlining directly, it just provides a bigger scope. +Easwaran who works on the inliner and might be able to point you in the right direction.

Teresa

On Wed, Nov 28, 2018 at 11:40 AM Bill Wendling via llvm-dev <[hidden email]> wrote:
Inlining is more aggressive with LTO. This could lead to stack frame sizes growing. However, sometimes you're working with software that is sensitive to stack sizes and would like to keep things within a certain limit (say 8K). Is there a way to achieve this with clang's LTO (or indeed its inliner in general)?

-bw
_______________________________________________
LLVM Developers mailing list
[hidden email]
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev


--
Teresa Johnson | Software Engineer | [hidden email] |

_______________________________________________
LLVM Developers mailing list
[hidden email]
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
Reply | Threaded
Open this post in threaded view
|

Re: [llvm-dev] LTO and Inlining and Stack Frame Size

Alberto Barbaro via llvm-dev
Thanks, Teresa. I'll look at some of those options.

On Wed, Nov 28, 2018 at 5:46 PM Teresa Johnson <[hidden email]> wrote:
This is probably better controlled in the inliner, and there are internal options there already for controlling various size thresholds. LTO doesn't directly control inlining directly, it just provides a bigger scope. +Easwaran who works on the inliner and might be able to point you in the right direction.

Teresa

On Wed, Nov 28, 2018 at 11:40 AM Bill Wendling via llvm-dev <[hidden email]> wrote:
Inlining is more aggressive with LTO. This could lead to stack frame sizes growing. However, sometimes you're working with software that is sensitive to stack sizes and would like to keep things within a certain limit (say 8K). Is there a way to achieve this with clang's LTO (or indeed its inliner in general)?

-bw
_______________________________________________
LLVM Developers mailing list
[hidden email]
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev


--
Teresa Johnson | Software Engineer | [hidden email] |

_______________________________________________
LLVM Developers mailing list
[hidden email]
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev