/* The common simulator framework for GDB, the GNU Debugger.
- Copyright 2002, 2004, 2007 Free Software Foundation, Inc.
+ Copyright 2002-2021 Free Software Foundation, Inc.
Contributed by Andrew Cagney and Red Hat.
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 2 of the License, or
+ 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,
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, write to the Free Software
- Foundation, Inc., 59 Temple Place - Suite 330,
- Boston, MA 02111-1307, USA. */
+ along with this program. If not, see <http://www.gnu.org/licenses/>. */
-#ifndef _SIM_BASICS_H_
-#define _SIM_BASICS_H_
+#ifndef SIM_BASICS_H
+#define SIM_BASICS_H
/* Basic configuration */
-#ifdef HAVE_CONFIG_H
-#include "cconfig.h"
-#endif
+#include "defs.h"
/* Basic host dependant mess - hopefully <stdio.h> + <stdarg.h> will
bring potential conflicts out in the open */
#include <stdio.h>
#include <setjmp.h>
-#ifdef __CYGWIN32__
-extern int vasprintf (char **result, const char *format, va_list args);
-extern int asprintf (char **result, const char *format, ...);
-#endif
-
-#ifndef NULL
-#define NULL 0
-#endif
-
-
-
-/* Some versions of GCC include an attribute operator, define it */
-
-#if !defined (__attribute__)
-#if (!defined(__GNUC__) || (__GNUC__ < 2) || (__GNUC__ == 2 && __GNUC_MINOR__ < 6))
-#define __attribute__(arg)
+#ifndef min
+#define min(a, b) ((a) < (b) ? (a) : (b))
#endif
+#ifndef max
+#define max(a, b) ((a) > (b) ? (a) : (b))
#endif
/* Global types that code manipulates */
-typedef struct _device device;
struct hw;
struct _sim_fpu;
\f
/* Basic definitions - ordered so that nothing calls what comes after it. */
-/* FIXME: conditionalizing tconfig.h on HAVE_CONFIG_H seems wrong. */
-#ifdef HAVE_CONFIG_H
-#include "tconfig.h"
-#endif
-
#include "ansidecl.h"
-#include "gdb/callback.h"
-#include "gdb/remote-sim.h"
+#include "sim/sim.h"
#include "sim-config.h"
#include "sim-types.h"
#include "sim-bits.h"
#include "sim-endian.h"
-#include "sim-signal.h"
-#include "sim-arange.h"
#include "sim-utils.h"
weight objects, such as core and events, are defined in the more
serious sim-base.h header. */
-#endif /* _SIM_BASICS_H_ */
+#endif /* SIM_BASICS_H */