about summary refs log tree commit diff
path: root/compiler/rustc_codegen_gcc/example/std_example.rs
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2024-03-29 15:07:03 +0000
committerbors <bors@rust-lang.org>2024-03-29 15:07:03 +0000
commit97ba291d5aa026353ad93e48cf00e06f08c73830 (patch)
tree4b3b35cce85b441673e58b97c336c5d4424315e9 /compiler/rustc_codegen_gcc/example/std_example.rs
parent124e68bef8be61aa151ff33bea325c832728146f (diff)
parent01646457a9206429c9a463984d075de25805791e (diff)
downloadrust-97ba291d5aa026353ad93e48cf00e06f08c73830.tar.gz
rust-97ba291d5aa026353ad93e48cf00e06f08c73830.zip
Auto merge of #12582 - kpreid:stacksize, r=Manishearth
`large_stack_frames`: print total size and largest component.

Instead of just saying “this function's stack frame is big”, report:

* the (presumed) size of the frame
* the size and type of the largest local contributing to that size
* the configurable limit that was exceeded (once)

Known issues:

* The lint may report an over-estimate because codegen may be able to overlap some of these locals. However, that already affected whether the lint fired at all; I believe this change is still an improvement because it gives the user much more actionable information about _why_ the lint fired.
* Please tell me a better way to determine whether a local has a variable name.

changelog: [`large_stack_frames`]: print total size and largest component.
Diffstat (limited to 'compiler/rustc_codegen_gcc/example/std_example.rs')
0 files changed, 0 insertions, 0 deletions