Skip to content
This repository has been archived by the owner on Jan 30, 2024. It is now read-only.

don't print <exception entry> more thn once per frame #109

Merged
merged 1 commit into from
Nov 23, 2020
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion src/main.rs
Original file line number Diff line number Diff line change
Expand Up @@ -747,7 +747,6 @@ fn backtrace(
if top_exception.is_none() {
Copy link
Member Author

@japaric japaric Nov 20, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not sure the code comment above this line applies anymore. the code inside the if checks for a stack overflow but doesn't do special logic around unwinding the frame. The frame is unwound normally using the logic in line 797.

probably the code around this can be simplified now that we put a breakpoint on HardFaultTrampoline

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah, seems like a good idea. I do find the code in probe-run to be a bit hard to follow sometimes.

top_exception = Some(if pc & !THUMB_BIT == vector_table.hard_fault & !THUMB_BIT {
// HardFaultTrampoline
println!(" <exception entry>");

let stack_overflow = if let Some(sp_ram_region) = sp_ram_region {
// NOTE stack is full descending; meaning the stack pointer can be `ORIGIN(RAM) +
Expand Down