diff options
-rw-r--r-- | gdb/ChangeLog | 4 | ||||
-rw-r--r-- | gdb/tui/tui-stack.c | 62 |
2 files changed, 31 insertions, 35 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index f3cd6e9..54c19e0 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,9 @@ 2019-07-17 Tom Tromey <tom@tromey.com> + * tui/tui-stack.c (tui_show_frame_info): Consolidate "if"s. + +2019-07-17 Tom Tromey <tom@tromey.com> + * tui/tui-winsource.c (tui_update_source_window_as_is) (tui_update_source_windows_with_addr): Update. * tui/tui-source.h (tui_set_source_content) diff --git a/gdb/tui/tui-stack.c b/gdb/tui/tui-stack.c index f761ac1..e1b996d 100644 --- a/gdb/tui/tui-stack.c +++ b/gdb/tui/tui-stack.c @@ -341,8 +341,6 @@ tui_show_frame_info (struct frame_info *fi) if (fi) { - int start_line; - CORE_ADDR low; struct tui_locator_window *locator = tui_locator_win_info_ptr (); int source_already_displayed; CORE_ADDR pc; @@ -372,32 +370,15 @@ tui_show_frame_info (struct frame_info *fi) return 0; tui_show_locator_content (); - start_line = 0; for (struct tui_source_window_base *win_info : tui_source_windows ()) { if (win_info == TUI_SRC_WIN) { - start_line = (locator->line_no - - (win_info->viewport_height / 2)) + 1; + int start_line = (locator->line_no - + (win_info->viewport_height / 2)) + 1; if (start_line <= 0) start_line = 1; - } - else - { - if (find_pc_partial_function (get_frame_pc (fi), - NULL, &low, NULL) == 0) - { - /* There is no symbol available for current PC. There is no - safe way how to "disassemble backwards". */ - low = get_frame_pc (fi); - } - else - low = tui_get_low_disassembly_address (get_frame_arch (fi), - low, get_frame_pc (fi)); - } - if (win_info == TUI_SRC_WIN) - { struct tui_line_or_address l; l.loa = LOA_LINE; @@ -415,23 +396,34 @@ tui_show_frame_info (struct frame_info *fi) } else { - if (win_info == TUI_DISASM_WIN) + CORE_ADDR low; + + if (find_pc_partial_function (get_frame_pc (fi), + NULL, &low, NULL) == 0) + { + /* There is no symbol available for current PC. There is no + safe way how to "disassemble backwards". */ + low = get_frame_pc (fi); + } + else + low = tui_get_low_disassembly_address (get_frame_arch (fi), + low, get_frame_pc (fi)); + + struct tui_line_or_address a; + + a.loa = LOA_ADDRESS; + a.u.addr = low; + if (!tui_addr_is_displayed (locator->addr, + win_info, TRUE)) + tui_update_source_window (win_info, get_frame_arch (fi), + sal.symtab, a, TRUE); + else { - struct tui_line_or_address a; - - a.loa = LOA_ADDRESS; - a.u.addr = low; - if (!tui_addr_is_displayed (locator->addr, - win_info, TRUE)) - tui_update_source_window (win_info, get_frame_arch (fi), - sal.symtab, a, TRUE); - else - { - a.u.addr = locator->addr; - win_info->set_is_exec_point_at (a); - } + a.u.addr = locator->addr; + win_info->set_is_exec_point_at (a); } } + tui_update_exec_info (win_info); } |