-
-/* Allocate new riscv_inferior_data object. */
-
-static struct riscv_inferior_data *
-riscv_new_inferior_data (void)
-{
- struct riscv_inferior_data *inf_data
- = new (struct riscv_inferior_data);
- inf_data->misa_read = false;
- return inf_data;
-}
-
-/* Free inferior data. */
-
-static void
-riscv_inferior_data_cleanup (struct inferior *inf, void *data)
-{
- struct riscv_inferior_data *inf_data =
- static_cast <struct riscv_inferior_data *> (data);
- delete (inf_data);
-}
-
-/* Return riscv_inferior_data for the given INFERIOR. If not yet created,
- construct it. */
-
-struct riscv_inferior_data *
-riscv_inferior_data (struct inferior *const inf)
-{
- struct riscv_inferior_data *inf_data;
-
- gdb_assert (inf != NULL);
-
- inf_data
- = (struct riscv_inferior_data *) inferior_data (inf, riscv_inferior_data_reg);
- if (inf_data == NULL)
- {
- inf_data = riscv_new_inferior_data ();
- set_inferior_data (inf, riscv_inferior_data_reg, inf_data);
- }
-
- return inf_data;
-}
-
-/* Free the inferior data when an inferior exits. */
-
-static void
-riscv_invalidate_inferior_data (struct inferior *inf)
-{
- struct riscv_inferior_data *inf_data;
-
- gdb_assert (inf != NULL);
-
- /* Don't call RISCV_INFERIOR_DATA as we don't want to create the data if
- we've not already created it by this point. */
- inf_data
- = (struct riscv_inferior_data *) inferior_data (inf, riscv_inferior_data_reg);
- if (inf_data != NULL)
- {
- delete (inf_data);
- set_inferior_data (inf, riscv_inferior_data_reg, NULL);
- }
-}
-