cargo-call-stack
cargo-call-stack copied to clipboard
Whole program static stack analysis
Analyzing an example built from a stm32f4 project. It requires linking to a C library, which I mocked out by declaring `void symbol_name_here(void) {}` for every needed symbol (because the...
for this code: ``` rust #![no_main] #![no_std] use core::{cmp::Ordering, panic::PanicInfo}; #[no_mangle] fn _start() -> (usize, usize) { (yes as usize, no as usize) } fn no(a: &str, b: &str) ->...
dynamically linked binaries contain 'undefined' symbols ``` console $ file hello hello: ELF 64-bit LSB pie executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2 $ nm -CSn hello U...
When trying to use the tool I get the following error: ``` cargo +nightly call-stack --bin fedra --verbose "cargo" "rustc" "--bin" "fedra" "--release" "--" "--emit=llvm-ir,obj" "-C" "embed-bitcode=yes" "-C" "lto=fat" "-Z"...
When I was trying `Cargo-Call-Stack` in my project, it failed with the following error message: ``` ... thread 'main' panicked at 'assertion failed: `(left == right)` left: `56`, right: `52`:...
Being able to output JSON, instead of a `.dot` file, has a few uses: - it makes our unit tests more reliable: we would be able to use an API...
if you do this on stable ``` console $ cargo call-stack --bin something ``` then cargo-call-stack will compile the entire dependency graph and fail at the last step saying `-Z`...
I tried to use cargo-call-stack on a project that uses a workspace, and the only output I got was ``` error: missing field `package` ``` The only semi-related information I...
When running cargo-call-stack --help I get informed that there are some features that can be activated, but not which ones. It would be helpful if these were listed.
I'm not sure if this is feasible, but since this project uses the LLVM output in the .stack-size section of the ELF binary, is there any technical reason why this...