blob: 42d6f20580bedab568b60bc9d3e92c26182fe924 [file] [log] [blame]
sewardjde4a1d02002-03-22 01:27:54 +00001
2/*--------------------------------------------------------------------*/
njnc7561b92005-06-19 01:24:32 +00003/*--- Header included by every core C file. pub_core_basics.h ---*/
sewardjde4a1d02002-03-22 01:27:54 +00004/*--------------------------------------------------------------------*/
njnc7561b92005-06-19 01:24:32 +00005
sewardjde4a1d02002-03-22 01:27:54 +00006/*
njnb9c427c2004-12-01 14:14:42 +00007 This file is part of Valgrind, a dynamic binary instrumentation
8 framework.
sewardjde4a1d02002-03-22 01:27:54 +00009
njnc7561b92005-06-19 01:24:32 +000010 Copyright (C) 2000-2005 Julian Seward
sewardjde4a1d02002-03-22 01:27:54 +000011 jseward@acm.org
sewardjde4a1d02002-03-22 01:27:54 +000012
13 This program is free software; you can redistribute it and/or
14 modify it under the terms of the GNU General Public License as
15 published by the Free Software Foundation; either version 2 of the
16 License, or (at your option) any later version.
17
18 This program is distributed in the hope that it will be useful, but
19 WITHOUT ANY WARRANTY; without even the implied warranty of
20 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
21 General Public License for more details.
22
23 You should have received a copy of the GNU General Public License
24 along with this program; if not, write to the Free Software
25 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
26 02111-1307, USA.
27
njn25e49d8e72002-09-23 09:36:25 +000028 The GNU General Public License is contained in the file COPYING.
sewardjde4a1d02002-03-22 01:27:54 +000029*/
30
njnc7561b92005-06-19 01:24:32 +000031#ifndef __PUB_CORE_BASICS_H
32#define __PUB_CORE_BASICS_H
sewardjde4a1d02002-03-22 01:27:54 +000033
njnc7561b92005-06-19 01:24:32 +000034//--------------------------------------------------------------------
35// PURPOSE: This header should be imported by every single C file
36// in the core. It contains the basic types and other things needed
37// everywhere.
38//--------------------------------------------------------------------
39
40#include "pub_tool_basics.h"
41
42/* ---------------------------------------------------------------------
43 Other headers to include
44 ------------------------------------------------------------------ */
45
46// Might as well have the following two in here, their contents are used so
47// broadly (eg. in pub_core_threadstate.h).
njn767eb422005-06-10 23:09:45 +000048
49#include "libvex.h"
njnf536bbb2005-06-13 04:21:38 +000050
njn767eb422005-06-10 23:09:45 +000051#if defined(VGA_x86)
sewardjefe0f922005-06-11 10:32:57 +000052# include "libvex_guest_x86.h"
njn767eb422005-06-10 23:09:45 +000053#elif defined(VGA_amd64)
sewardjefe0f922005-06-11 10:32:57 +000054# include "libvex_guest_amd64.h"
njn767eb422005-06-10 23:09:45 +000055#else
56# error Unknown arch
57#endif
58
njnc7561b92005-06-19 01:24:32 +000059#include <setjmp.h>
njnd01fef72005-03-25 23:35:48 +000060
njnc7561b92005-06-19 01:24:32 +000061#endif // __PUB_CORE_BASICS_H
nethercotec06e2132004-09-03 13:45:29 +000062
sewardjde4a1d02002-03-22 01:27:54 +000063/*--------------------------------------------------------------------*/
nethercote109d0df2004-09-02 08:10:13 +000064/*--- end ---*/
sewardjde4a1d02002-03-22 01:27:54 +000065/*--------------------------------------------------------------------*/