binutils-gdb/gdbsupport/common-debug.h
Simon Marchi 17417fb0ec gdb, gdbsupport: add debug_prefixed_printf, remove boilerplate functions
The *_debug_print_1 functions are all very similar, the only difference
being the subsystem name.  Remove them all and make the logging macros
use a new debug_prefixed_printf function directly.

gdb/ChangeLog:

	* infrun.c (infrun_debug_printf_1): Remove.
	(displaced_debug_printf_1): Remove.
	(stop_all_threads): Use debug_prefixed_printf.
	* infrun.h (infrun_debug_printf_1): Remove.
	(infrun_debug_printf): Use debug_prefixed_printf.
	(displaced_debug_printf_1): Remove.
	(displaced_debug_printf): Use debug_prefixed_printf.
	* linux-nat.c (linux_nat_debug_printf_1): Remove.
	(linux_nat_debug_printf): Use debug_prefixed_printf.

gdbsupport/ChangeLog:

	* common-debug.cc (debug_prefixed_printf): New.
	* common-debug.h (debug_prefixed_printf): New declaration.
	* event-loop.cc (event_loop_debug_printf_1): Remove.
	* event-loop.h (event_loop_debug_printf_1): Remove.
	(event_loop_debug_printf): Use debug_prefixed_printf.
	(event_loop_ui_debug_printf): Use debug_prefixed_printf.

Change-Id: Ib323087c7257f0060121d302055c41eb64aa60c6
2020-10-31 09:15:13 -04:00

54 lines
1.9 KiB
C

/* Declarations for debug printing functions.
Copyright (C) 2014-2020 Free Software Foundation, Inc.
This file is part of GDB.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>. */
#ifndef COMMON_COMMON_DEBUG_H
#define COMMON_COMMON_DEBUG_H
/* Set to true to enable debugging of hardware breakpoint/
watchpoint support code. */
extern bool show_debug_regs;
/* Print a formatted message to the appropriate channel for
debugging output for the client. */
extern void debug_printf (const char *format, ...)
ATTRIBUTE_PRINTF (1, 2);
/* Print a formatted message to the appropriate channel for
debugging output for the client. This function must be
provided by the client. */
extern void debug_vprintf (const char *format, va_list ap)
ATTRIBUTE_PRINTF (1, 0);
/* Print a debug statement prefixed with the module and function name, and
with a newline at the end. */
extern void ATTRIBUTE_PRINTF (3, 4) debug_prefixed_printf
(const char *module, const char *func, const char *format, ...);
/* Print a debug statement prefixed with the module and function name, and
with a newline at the end. */
extern void ATTRIBUTE_PRINTF (3, 0) debug_prefixed_vprintf
(const char *module, const char *func, const char *format, va_list args);
#endif /* COMMON_COMMON_DEBUG_H */