aboutsummaryrefslogtreecommitdiff
path: root/cortex-m-rt/src
diff options
context:
space:
mode:
authorGravatar Jorge Aparicio <jorge@japaric.io> 2019-03-24 17:46:26 +0100
committerGravatar Jorge Aparicio <jorge@japaric.io> 2019-03-24 17:46:26 +0100
commit142b48b0ce73e3ed0483414168b97bea8fc5b660 (patch)
tree4644b7297f8e41a66adc1e31f24d8b4122463157 /cortex-m-rt/src
parentf1c317d028fdd2e7b407bb9d22f2d3b3d284e721 (diff)
downloadcortex-m-142b48b0ce73e3ed0483414168b97bea8fc5b660.tar.gz
cortex-m-142b48b0ce73e3ed0483414168b97bea8fc5b660.tar.zst
cortex-m-142b48b0ce73e3ed0483414168b97bea8fc5b660.zip
do not KEEP the .stack_sizes section
this undoes PR #118 I found a problem with keeping this section. Turns out that the input `.stack_sizes` sections contain references to all functions compiled with `-Z emit-stack-sizes` (the section contains the addresses of all those functions after all) so keeping those section prevents the linker from removing *any* of those functions. This is not a problem today because `-Z emit-stack-sizes` is *opt-in* and only used to analyze a program. However, I am proposing a rust-lang/rust PR to build the `compiler-builtins` crate with `-Z emit-stack-sizes`. That change will cause *all* the functions in that crate to be kept in binaries that link to `cortex-m-rt`, regardless of whether the crate author uses `-Z emit-stack-sizes` or not, leading a increase in binary size of about 14 KB (`.text` section). To prevent issues with that rust-lang/rust PR I propose we undo PR #118. On the bright side, the tools that were depending on this (`cargo-stack-sizes` and `cargo-call-stack`) no longer do so in their latest releases so nothing is lost on the tooling front with this change.
Diffstat (limited to 'cortex-m-rt/src')
0 files changed, 0 insertions, 0 deletions