/* The common simulator framework for GDB, the GNU Debugger.
- Copyright 2002, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
+ Copyright 2002-2021 Free Software Foundation, Inc.
Contributed by Andrew Cagney and Red Hat.
#ifndef HW_DEVICE_H
#define HW_DEVICE_H
-/* declared in sim-basics.h, this object is used everywhere */
-/* typedef struct _device device; */
-
/* Introduction:
The number of words determined by the number of {address,size}
cells attributes of the device. */
-typedef struct _hw_unit {
+typedef struct _hw_unit
+{
int nr_cells;
unsigned_cell cells[4]; /* unused cells are zero */
} hw_unit;
const hw_unit *unit,
char *encoded,
int sizeof_buf);
-
+
#define hw_unit_encode(bus, unit, encoded, sizeof_encoded) \
((bus)->to_unit_encode (bus, unit, encoded, sizeof_encoded))
*/
-typedef enum {
+typedef enum
+{
hw_ioctl_break, /* unsigned_word requested_break */
hw_ioctl_set_trace, /* void */
hw_ioctl_create_stack, /* unsigned_word *sp, char **argv, char **envp */
void hw_abort
(struct hw *me,
const char *fmt,
- ...) __attribute__ ((format (printf, 2, 3)));
+ ...) ATTRIBUTE_PRINTF (2, 3) ATTRIBUTE_NORETURN;
void hw_vabort
(struct hw *me,
const char *fmt,
- va_list ap);
+ va_list ap) ATTRIBUTE_NORETURN;
void hw_halt
(struct hw *me,
int reason,
- int status);
+ int status) ATTRIBUTE_NORETURN;
#define hw_trace_p(hw) ((hw)->trace_of_hw_p + 0)
void hw_trace
(struct hw *me,
const char *fmt,
- ...) __attribute__ ((format (printf, 2, 3)));
+ ...) ATTRIBUTE_PRINTF (2, 3);
#define HW_TRACE(ARGS) \
do { \
/* Finally the hardware device - keep your grubby little mits off of
these internals! :-) */
-struct hw {
+struct hw
+{
/* our relatives */
struct hw *parent_of_hw;