+void
+dummy_frame_pop (struct frame_id dummy_id, ptid_t ptid)
+{
+ struct dummy_frame **dp;
+ struct dummy_frame_id id = { dummy_id, ptid };
+
+ dp = lookup_dummy_frame (&id);
+ gdb_assert (dp != NULL);
+
+ pop_dummy_frame (dp);
+}
+
+/* Find the dummy frame by DUMMY_ID and PTID and drop it. Do nothing
+ if it is not found. Do not restore its state into inferior, just
+ free its memory. */
+
+void
+dummy_frame_discard (struct frame_id dummy_id, ptid_t ptid)
+{
+ struct dummy_frame **dp;
+ struct dummy_frame_id id = { dummy_id, ptid };
+
+ dp = lookup_dummy_frame (&id);
+ if (dp)
+ remove_dummy_frame (dp);
+}
+
+/* See dummy-frame.h. */
+
+void
+register_dummy_frame_dtor (struct frame_id dummy_id, ptid_t ptid,
+ dummy_frame_dtor_ftype *dtor, void *dtor_data)