From 5ae0e6314eba13615b48df2eb6d20a9dd131f230 Mon Sep 17 00:00:00 2001 From: 0xFEEDC0DE64 Date: Sun, 3 Jan 2021 01:00:15 +0100 Subject: [PATCH] Added script to decode exception backtraces --- backtrace.sh | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100755 backtrace.sh diff --git a/backtrace.sh b/backtrace.sh new file mode 100755 index 0000000..3ae5e84 --- /dev/null +++ b/backtrace.sh @@ -0,0 +1,32 @@ +#!/bin/bash + +GDB_BINARY=~/.platformio/packages/toolchain-xtensa32/bin/xtensa-esp32-elf-gdb +ELF_FILE=.pio/build/feedc0de_usb/firmware.elf + +if [[ ! -x "$GDB_BINARY" ]] +then + echo Could not find gdb binary: "$GDB_BINARY" + exit 1 +fi + +if [[ ! -f "$ELF_FILE" ]] +then + echo Could not find elf file: "$ELF_FILE" + exit 1 +fi + +ls -lah "$ELF_FILE" + +PARAMS=() +for i in $@ +do + ADDR="$(echo "$i" | cut -d ":" -f 1)" + OUTPUT="$($GDB_BINARY --batch $ELF_FILE -ex "set listsize 1" -ex "l *$ADDR" -ex "q")" + + if [[ -z "$OUTPUT" ]] + then + echo "${ADDR} gdb empty output" + else + echo "${OUTPUT}" + fi +done