[PATCH 57/66] Remove "data_content" and "data_content_count" from TUI data window

Tom Tromey
2019-06-24T18:49:00Z

The TUI has some stub code for adding data other than registers to the
data window. However, it doesn't do anything, and apparently never
has. This removes the dead code.

2019-06-23 Tom Tromey <tom@tromey.com>

* tui/tui-data.c (tui_data_item_window): Update.
* tui/tui-windata.h (tui_check_data_values): Don't declare.
* tui/tui-windata.c (tui_display_all_data)
(tui_display_data_from_line): Update.
(tui_check_data_values): Remove.
* tui/tui-regs.c (tui_show_register_group)
(tui_display_reg_element_at_line): Update.
* tui/tui-hooks.c (tui_register_changed)
(tui_refresh_frame_and_register_information): Call
tui_check_register_values.
* tui/tui-data.h (struct tui_data_window) <data_content,
data_content_count, data_type>: Remove.
(enum tui_data_type): Remove.
---
gdb/ChangeLog | 19 ++++++++++++
gdb/tui/tui-data.c | 7 -----
gdb/tui/tui-data.h | 13 ---------
gdb/tui/tui-hooks.c | 4 +--
gdb/tui/tui-regs.c | 9 ++----
gdb/tui/tui-windata.c | 67 +------------------------------------------
gdb/tui/tui-windata.h | 1 -
7 files changed, 25 insertions(+), 95 deletions(-)

diff --git a/gdb/tui/tui-data.c b/gdb/tui/tui-data.c
index e9d0308b86b..07bf20e290a 100644
--- a/gdb/tui/tui-data.c
+++ b/gdb/tui/tui-data.c
@@ -175,8 +175,6 @@ tui_cmd_window::clear_detail ()
void
tui_data_window::clear_detail ()
{
- data_content = NULL;
- data_content_count = 0;
regs_content = NULL;
regs_content_count = 0;
regs_column_count = 1;
@@ -485,9 +483,6 @@ tui_data_window::~tui_data_window ()
tui_free_data_content (regs_content, regs_content_count);
regs_content = NULL;
regs_content_count = 0;
- tui_free_data_content (data_content, data_content_count);
- data_content = NULL;
- data_content_count = 0;
regs_column_count = 1;
display_regs = false;
content = NULL;
@@ -567,8 +562,6 @@ free_content (tui_win_content content,

tui_data_item_window::~tui_data_item_window ()
{
- if (data_type != TUI_REGISTER)
- xfree ((void *) name);
xfree (value);
xfree (content);
}
diff --git a/gdb/tui/tui-data.h b/gdb/tui/tui-data.h
index 3416c413dc2..083b4a5f48e 100644
--- a/gdb/tui/tui-data.h
+++ b/gdb/tui/tui-data.h
@@ -146,15 +146,6 @@ enum tui_layout_type
UNDEFINED_LAYOUT
};

-/* Basic data types that can be displayed in the data window. */
-enum tui_data_type
-{
- TUI_REGISTER,
- TUI_SCALAR,
- TUI_COMPLEX,
- TUI_STRUCT
-};
-
enum tui_line_or_address_kind
{
LOA_LINE,
@@ -282,7 +273,6 @@ struct tui_data_item_window : public tui_gen_win_info
const char *name = nullptr;
/* The register number, or data display number. */
int item_no = UNDEFINED_ITEM;
- enum tui_data_type data_type = TUI_REGISTER;
void *value = nullptr;
bool highlight = false;
char *content = nullptr;
@@ -487,9 +477,6 @@ struct tui_data_window : public tui_win_info
return DATA_NAME;
}

- /* Start of data display content. */
- tui_win_content data_content = NULL;
- int data_content_count = 0;
/* Start of regs display content. */
tui_win_content regs_content = NULL;
int regs_content_count = 0;
diff --git a/gdb/tui/tui-hooks.c b/gdb/tui/tui-hooks.c
index 7e94a13e901..9bac4a883aa 100644
--- a/gdb/tui/tui-hooks.c
+++ b/gdb/tui/tui-hooks.c
@@ -81,7 +81,7 @@ tui_register_changed (struct frame_info *frame, int regno)
if (tui_refreshing_registers == 0)
{
tui_refreshing_registers = 1;
- tui_check_data_values (fi);
+ tui_check_register_values (fi);
tui_refreshing_registers = 0;
}
}
@@ -153,7 +153,7 @@ tui_refresh_frame_and_register_information (int registers_too_p)
&& (frame_info_changed_p || registers_too_p))
{
tui_refreshing_registers = 1;
- tui_check_data_values (fi);
+ tui_check_register_values (fi);
tui_refreshing_registers = 0;
}
}
diff --git a/gdb/tui/tui-regs.c b/gdb/tui/tui-regs.c
index 590a0752280..c3970caa5a6 100644
--- a/gdb/tui/tui-regs.c
+++ b/gdb/tui/tui-regs.c
@@ -270,8 +270,7 @@ tui_show_register_group (struct reggroup *group,
pos++;
}

- TUI_DATA_WIN->content_size =
- TUI_DATA_WIN->regs_content_count + TUI_DATA_WIN->data_content_count;
+ TUI_DATA_WIN->content_size = TUI_DATA_WIN->regs_content_count;
ret = TUI_SUCCESS;
}

@@ -395,12 +394,10 @@ tui_display_reg_element_at_line (int start_element_no,
if (first_line_on_last_page < 0)
first_line_on_last_page = 0;

- /* If there is no other data displayed except registers, and
- the element_no causes us to scroll past the end of the
+ /* If the element_no causes us to scroll past the end of the
registers, adjust what element to really start the
display at. */
- if (TUI_DATA_WIN->data_content_count <= 0
- && start_line_no > first_line_on_last_page)
+ if (start_line_no > first_line_on_last_page)
element_no
= tui_first_reg_element_no_inline (first_line_on_last_page);
}
diff --git a/gdb/tui/tui-windata.c b/gdb/tui/tui-windata.c
index 82436a31d92..23510f6da84 100644
--- a/gdb/tui/tui-windata.c
+++ b/gdb/tui/tui-windata.c
@@ -112,12 +112,6 @@ tui_display_all_data (void)
tui_delete_data_content_windows ();
tui_check_and_display_highlight_if_needed (TUI_DATA_WIN);
tui_display_registers_from (0);
-
- /* Then display the other data. */
- if (TUI_DATA_WIN->data_content != NULL
- && TUI_DATA_WIN->data_content_count > 0)
- {
- }
}
}

@@ -134,31 +128,7 @@ tui_display_data_from_line (int line_no)

tui_check_and_display_highlight_if_needed (TUI_DATA_WIN);

- /* There is no general data, force regs to display (if there are
- any). */
- if (TUI_DATA_WIN->data_content_count <= 0)
- tui_display_registers_from_line (_line_no, TRUE);
- else
- {
- int regs_last_line = tui_last_regs_line_no ();
-
-
- /* Display regs if we can. */
- if (tui_display_registers_from_line (_line_no, FALSE) < 0)
- { /* _line_no is past the regs display, so calc where the
- start data element is. */
- if (regs_last_line < _line_no)
- { /* Figure out how many lines each element is to obtain
- the start element_no. */
- }
- }
- else
- { /* Calculate the starting element of the data display, given
- regs_last_line and how many lines each element is, up to
- _line_no. */
- }
- /* Now display the data , starting at element_no. */
- }
+ tui_display_registers_from_line (_line_no, TRUE);
}

@@ -199,41 +169,6 @@ tui_data_window::refresh_all ()
}

-/* Function to check the data values and hilite any that have
- changed. */
-void
-tui_check_data_values (struct frame_info *frame)
-{
- tui_check_register_values (frame);
-
- /* Now check any other data values that there are. */
- if (TUI_DATA_WIN != NULL && TUI_DATA_WIN->is_visible)
- {
- int i;
-
- for (i = 0; TUI_DATA_WIN->data_content_count; i++)
- {
-#ifdef LATER
- tui_data_element_ptr data_element_ptr;
- struct tui_gen_win_info *data_item_win_ptr;
- Opaque new_value;
-
- data_item_ptr = &TUI_DATA_WIN->
- data_content[i]->which_element.data_window;
- data_element_ptr = &((tui_win_content)
- data_item_win_ptr->content)[0]->which_element.data;
- if value
- has changed (data_element_ptr, frame, &new_value)
- {
- data_element_ptr->value = new_value;
- update the display with the newobj value, hiliting it.
- }
-#endif
- }
- }
-}
-
-
/* Scroll the data window vertically forward or backward. */
void
tui_data_window::do_scroll_vertical (int num_to_scroll)
diff --git a/gdb/tui/tui-windata.h b/gdb/tui/tui-windata.h
index 4aa8cb0b38c..1aba67520ec 100644
--- a/gdb/tui/tui-windata.h
+++ b/gdb/tui/tui-windata.h
@@ -26,7 +26,6 @@

extern void tui_erase_data_content (const char *);
extern void tui_display_all_data (void);
-extern void tui_check_data_values (struct frame_info *);
extern void tui_display_data_from_line (int);
extern void tui_delete_data_content_windows (void);
extern void tui_refresh_data_win (void);
--
2.17.2