Restructured the include/ directory.

- All the subdirectories have gone: arm/, x86/, amd64/, linux/,         
  x86-linux/, amd64-linux/, arm-linux/.

- The following files were moved out of those directories into include/:

    amd64-linux/vki_arch.h            --> vki-amd64-linux.h
    x86-linux/vki_arch.h              --> vki-x86-linux.h
    x86-linux/vki_arch_posixtypes.h   --> vki_posixtypes-x86-linux.h
    linux/vki.h                       --> vki-linux.h
    amd64-linux/vki_arch_posixtypes.h --> vki_posixtypes-amd64-linux.h

- The following very small files were inlined into tool.h using the "#if
  defined(VGP_x86)..." technique:

    x86/tool_arch.h
    arm/tool_arch.h
    amd64/tool_arch.h

  The same technique was used twice to include the appropriate
  vki-$PLATFORM and vki-$OS files into tool.h.  

- The other files in those directories were removed.

- The build is much simpler, since we have 7(!) fewer Makefile.am files.
  Far fewer -I options are needed when compiling, too.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3733 a5019735-40e9-0310-863c-91ae7b9d1cf9
diff --git a/Makefile.core-AM_CPPFLAGS.am b/Makefile.core-AM_CPPFLAGS.am
index a0b4578..fe9d406 100644
--- a/Makefile.core-AM_CPPFLAGS.am
+++ b/Makefile.core-AM_CPPFLAGS.am
@@ -1,13 +1,12 @@
-add_includes = -I$(top_builddir)/coregrind -I$(top_srcdir)/coregrind \
+# we need $(top_builddir)/include for when builddir != srcdir, because
+# valgrind.h is generated from valgrind.h.in.
+add_includes = -I$(top_srcdir)/coregrind \
 		-I$(top_srcdir) \
 		-I$(top_srcdir)/coregrind/$(VG_ARCH) \
-		-I$(top_builddir)/coregrind/$(VG_ARCH) \
 		-I$(top_srcdir)/coregrind/$(VG_OS) \
 		-I$(top_srcdir)/coregrind/$(VG_PLATFORM) \
-		-I$(top_builddir)/include -I$(top_srcdir)/include \
-		-I$(top_srcdir)/include/$(VG_ARCH) \
-		-I$(top_srcdir)/include/$(VG_OS) \
-		-I$(top_srcdir)/include/$(VG_PLATFORM) \
+		-I$(top_srcdir)/include \
+		-I$(top_builddir)/include \
 		-I@VEX_DIR@/pub \
 		-DVGA_$(VG_ARCH)=1 \
 		-DVGO_$(VG_OS)=1 \
diff --git a/Makefile.tool-flags.am b/Makefile.tool-flags.am
index 32b3b85..89a3b0c 100644
--- a/Makefile.tool-flags.am
+++ b/Makefile.tool-flags.am
@@ -1,10 +1,11 @@
-## Need $(top_builddir)/include because tool.h is built from tool.h.base;
-## otherwise it will not work if builddir != srcdir.
-add_includes = -I$(top_builddir)/include -I$(top_srcdir)/include \
-		-I$(top_srcdir)/include/$(VG_ARCH) \
-		-I$(top_srcdir)/include/$(VG_OS) \
-		-I$(top_srcdir)/include/$(VG_PLATFORM) \
-		-I@VEX_DIR@/pub
+# we need $(top_builddir)/include for when builddir != srcdir, because
+# valgrind.h is generated from valgrind.h.in.
+add_includes = -I$(top_srcdir)/include \
+		-I$(top_builddir)/include \
+		-I@VEX_DIR@/pub \
+		-DVGA_$(VG_ARCH)=1 \
+		-DVGO_$(VG_OS)=1 \
+		-DVGP_$(VG_ARCH)_$(VG_OS)=1
 
 AM_CPPFLAGS = $(add_includes)
 AM_CFLAGS = $(WERROR) -Wmissing-prototypes -Winline -Wall -Wshadow -O -g @ARCH_TOOL_AM_CFLAGS@
diff --git a/configure.in b/configure.in
index 679efea..0a45429 100644
--- a/configure.in
+++ b/configure.in
@@ -384,13 +384,6 @@
    tests/unused/Makefile 
    include/valgrind.h 
    include/Makefile 
-   include/amd64/Makefile 
-   include/arm/Makefile 
-   include/x86/Makefile 
-   include/linux/Makefile 
-   include/amd64-linux/Makefile 
-   include/arm-linux/Makefile 
-   include/x86-linux/Makefile 
    auxprogs/Makefile
    coregrind/Makefile 
    coregrind/m_aspacemgr/Makefile 
diff --git a/coregrind/amd64/core_arch.h b/coregrind/amd64/core_arch.h
index 98d65c0..cae7b23 100644
--- a/coregrind/amd64/core_arch.h
+++ b/coregrind/amd64/core_arch.h
@@ -32,7 +32,6 @@
 #define __AMD64_CORE_ARCH_H
 
 #include "core_arch_asm.h"    // arch-specific asm  stuff
-#include "tool_arch.h"        // arch-specific tool stuff
 
 #include "libvex_guest_amd64.h"
 
diff --git a/coregrind/arm/core_arch.h b/coregrind/arm/core_arch.h
index d95fd75..b8b4237 100644
--- a/coregrind/arm/core_arch.h
+++ b/coregrind/arm/core_arch.h
@@ -32,7 +32,6 @@
 #define __ARM_CORE_ARCH_H
 
 #include "core_arch_asm.h"    // arch-specific asm  stuff
-#include "tool_arch.h"        // arch-specific tool stuff
 
 #include "libvex_guest_arm.h"
 
diff --git a/coregrind/core.h b/coregrind/core.h
index ff2718f..7e45587 100644
--- a/coregrind/core.h
+++ b/coregrind/core.h
@@ -32,56 +32,6 @@
 #ifndef __CORE_H
 #define __CORE_H
 
-/*
-   [This comment is not longer accurate -- we're switching to an easier to
-   understand module-based approach, with one or two headers per module,
-   rather than having monolithic headers as described.  --njn 07-May-2005]
-   
-   Header hierarchy:
-
-   - core C   files include core.h
-   - core asm files include core_asm.h
-   - tool C   files include tool.h
-   - tool asm files include tool_asm.h
-
-   - The hierarchy of the header files themselves is based around the
-     following rules:
-
-      - core headers     include  tool headers
-      - generic headers  include  arch/OS/platform headers
-      - C headers        include  asm headers
-
-     This gives the following hierarchy (only showing 'arch' headers, not
-     'os' or 'platform' headers), where arrows indicate inclusion, and
-     $VG_ARCH==x86:
-
-
-   (include/x86/tool_arch_asm.h?) <----- coregrind/x86/core_arch_asm.h
-              ^   ^                          ^   ^
-             /     \                        /     \
-            /       \                      /       \
-           /         \                    /         \
- include/tool_asm.h <-\---- coregrind/core_asm.h     \
-           ^           \                  ^           \
-            \  include/x86/tool_arch.h <--------coregrind/x86/core_arch.h
-             \         ^                    \         ^
-              \       /                      \       /
-               \     /                        \     /
-                \   /                          \   /
-           include/tool.h <------------ coregrind/core.h
-
-
-   Note that core.h contains the *declarations* of arch-specific functions
-   and variables, which can be used by the core_arch.h file of any
-   architecture.  (The functions/variables are *defined* within arch/.)
-   However, arch-specific macros and types cannot go into core.h, because
-   there is no separation between declaration and definition for
-   macros/types, so they instead go into $VG_ARCH/core_arch.h.
-
-   The tool-specific headers are all in include/ so they can be seen by any
-   external tools.
-*/
-
 #include "tool.h"          // tool stuff
 #include "core_arch.h"     // arch-specific stuff,  eg. x86/core_arch.h
 
diff --git a/coregrind/x86/core_arch.h b/coregrind/x86/core_arch.h
index 0f7ddae..9d4b355 100644
--- a/coregrind/x86/core_arch.h
+++ b/coregrind/x86/core_arch.h
@@ -32,7 +32,6 @@
 #define __X86_CORE_ARCH_H
 
 #include "core_arch_asm.h"    // arch-specific asm  stuff
-#include "tool_arch.h"        // arch-specific tool stuff
 
 #include "libvex_guest_x86.h"
 
diff --git a/include/Makefile.am b/include/Makefile.am
index 9119c44..50dffc7 100644
--- a/include/Makefile.am
+++ b/include/Makefile.am
@@ -1,7 +1,4 @@
 
-SUBDIRS      = $(VG_ARCH)     $(VG_OS)     $(VG_PLATFORM)     .
-DIST_SUBDIRS = $(VG_ARCH_ALL) $(VG_OS_ALL) $(VG_PLATFORM_ALL) .
-
 EXTRA_DIST = \
 	valgrind.h.in \
 	vg_profile.c
@@ -9,18 +6,23 @@
 incincdir = $(includedir)/valgrind
 
 incinc_HEADERS = \
-	basic_types.h 		\
-	tool.h 			\
-	tool_asm.h 		\
-	pub_tool_errormgr.h 	\
-	pub_tool_execontext.h 	\
-	pub_tool_hashtable.h 	\
-	pub_tool_mallocfree.h 	\
-	pub_tool_replacemalloc.h\
-	pub_tool_skiplist.h 	\
-	pub_tool_stacktrace.h 	\
-	pub_tool_tooliface.h 	\
-	valgrind.h
+	basic_types.h 			\
+	tool.h 				\
+	tool_asm.h 			\
+	pub_tool_errormgr.h 		\
+	pub_tool_execontext.h 		\
+	pub_tool_hashtable.h 		\
+	pub_tool_mallocfree.h 		\
+	pub_tool_replacemalloc.h	\
+	pub_tool_skiplist.h 		\
+	pub_tool_stacktrace.h 		\
+	pub_tool_tooliface.h 		\
+	valgrind.h 			\
+	vki-linux.h			\
+	vki-amd64-linux.h		\
+	vki-x86-linux.h			\
+	vki_posixtypes-amd64-linux.h	\
+	vki_posixtypes-x86-linux.h
 
 BUILT_SOURCES = valgrind.h
 CLEANFILES = valgrind.h
diff --git a/include/amd64-linux/Makefile.am b/include/amd64-linux/Makefile.am
deleted file mode 100644
index 2b7b7c0..0000000
--- a/include/amd64-linux/Makefile.am
+++ /dev/null
@@ -1,5 +0,0 @@
-incincdir = $(includedir)/valgrind/amd64-linux
-
-incinc_HEADERS = \
-    vki_arch.h \
-    vki_arch_posixtypes.h
diff --git a/include/amd64/Makefile.am b/include/amd64/Makefile.am
deleted file mode 100644
index 5deb528..0000000
--- a/include/amd64/Makefile.am
+++ /dev/null
@@ -1,4 +0,0 @@
-incincdir = $(includedir)/valgrind/amd64
-
-incinc_HEADERS = tool_arch.h
-
diff --git a/include/amd64/tool_arch.h b/include/amd64/tool_arch.h
deleted file mode 100644
index fc48c68..0000000
--- a/include/amd64/tool_arch.h
+++ /dev/null
@@ -1,51 +0,0 @@
-/*--------------------------------------------------------------------*/
-/*---                                            amd64/tool_arch.h ---*/
-/*--------------------------------------------------------------------*/
-
-/*
-   This file is part of Valgrind, a dynamic binary instrumentation
-   framework.
-
-   Copyright (C) 2000-2005 Nicholas Nethercote
-      njn@valgrind.org
-
-   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 (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, write to the Free Software
-   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-   02111-1307, USA.
-
-   The GNU General Public License is contained in the file COPYING.
-*/
-
-#ifndef __AMD64_TOOL_ARCH_H
-#define __AMD64_TOOL_ARCH_H
-
-
-#define VGA_REGPARM(n)  /* */
-
-
-#define VGA_MIN_INSTR_SZB     1
-#define VGA_MAX_INSTR_SZB    16
-
-
-/* How many bytes below the stack pointer are validly addressible?
-   On amd64, the answer is: 128.
-*/
-#define VGA_STACK_REDZONE_SZB    128
-
-
-#endif   // __AMD64_TOOL_ARCH_H
-
-/*--------------------------------------------------------------------*/
-/*--- end                                                          ---*/
-/*--------------------------------------------------------------------*/
diff --git a/include/arm/Makefile.am b/include/arm/Makefile.am
deleted file mode 100644
index 9abfc6b..0000000
--- a/include/arm/Makefile.am
+++ /dev/null
@@ -1,4 +0,0 @@
-incincdir = $(includedir)/valgrind/arm
-
-incinc_HEADERS = tool_arch.h
-
diff --git a/include/arm/tool_arch.h b/include/arm/tool_arch.h
deleted file mode 100644
index 383c0a5..0000000
--- a/include/arm/tool_arch.h
+++ /dev/null
@@ -1,46 +0,0 @@
-/*--------------------------------------------------------------------*/
-/*---                                              arm/tool_arch.h ---*/
-/*--------------------------------------------------------------------*/
-
-/*
-   This file is part of Valgrind, a dynamic binary instrumentation
-   framework.
-
-   Copyright (C) 2000-2005 Nicholas Nethercote
-      njn@valgrind.org
-
-   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 (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, write to the Free Software
-   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-   02111-1307, USA.
-
-   The GNU General Public License is contained in the file COPYING.
-*/
-
-#ifndef __ARM_TOOL_ARCH_H
-#define __ARM_TOOL_ARCH_H
-
-/*====================================================================*/
-/*=== Registers, etc                                               ===*/
-/*====================================================================*/
-
-#define VGA_REGPARM(n)
-
-#define VGA_MIN_INSTR_SZB     4
-#define VGA_MAX_INSTR_SZB     4 
-
-#endif   // __ARM_TOOL_ARCH_H
-
-/*--------------------------------------------------------------------*/
-/*--- end                                                          ---*/
-/*--------------------------------------------------------------------*/
diff --git a/include/tool.h b/include/tool.h
index 0af508d..338bbc5 100644
--- a/include/tool.h
+++ b/include/tool.h
@@ -34,8 +34,6 @@
 
 #include "basic_types.h"
 #include "tool_asm.h"           /* asm stuff */
-#include "tool_arch.h"          /* arch-specific tool stuff */
-#include "vki.h"
 
 #include "pub_tool_errormgr.h"      // needed for 'Error', 'Supp'
 #include "pub_tool_execontext.h"    // needed for 'ExeContext'
@@ -43,6 +41,12 @@
 #include "libvex.h"
 #include "libvex_ir.h"
 
+#if defined(VGO_linux)
+#  include "vki-linux.h"
+#else
+#  error Unknown OS
+#endif
+
 /*====================================================================*/
 /*=== Build options and table sizes.                               ===*/
 /*====================================================================*/
@@ -589,6 +593,31 @@
 extern void VG_(set_shadow_regs_area) ( ThreadId tid, OffT guest_state_offset,
                                         SizeT size, const UChar* area );
 
+/*====================================================================*/
+/*=== Arch-specific stuff                                          ===*/
+/*====================================================================*/
+
+/* VGA_STACK_REDZONE_SZB: how many bytes below the stack pointer are validly
+ * addressible? */
+#if defined(VGA_x86)
+#  define VGA_REGPARM(n)            __attribute__((regparm(n)))
+#  define VGA_MIN_INSTR_SZB         1
+#  define VGA_MAX_INSTR_SZB        16
+#  define VGA_STACK_REDZONE_SZB     0
+#elif defined(VGA_amd64)
+#  define VGA_REGPARM(n)            /* */
+#  define VGA_MIN_INSTR_SZB         1
+#  define VGA_MAX_INSTR_SZB        16
+#  define VGA_STACK_REDZONE_SZB   128
+#elif defined(VGA_arm)
+#  define VGA_REGPARM(n)            /* */
+#  define VGA_MIN_INSTR_SZB         4
+#  define VGA_MAX_INSTR_SZB         4 
+#  define VGA_STACK_REDZONE_SZB     0
+#else
+#  error Unknown platform
+#endif
+
 #endif   /* __TOOL_H */
 
 
diff --git a/include/amd64-linux/vki_arch.h b/include/vki-amd64-linux.h
similarity index 98%
rename from include/amd64-linux/vki_arch.h
rename to include/vki-amd64-linux.h
index 018df7e..d97dbd6 100644
--- a/include/amd64-linux/vki_arch.h
+++ b/include/vki-amd64-linux.h
@@ -1,7 +1,7 @@
 
 /*--------------------------------------------------------------------*/
 /*--- AMD64/Linux-specific kernel interface.                       ---*/
-/*---                                       amd64-linux/vki_arch.h ---*/
+/*---                                            vki-amd64-linux.h ---*/
 /*--------------------------------------------------------------------*/
 
 /*
@@ -29,8 +29,8 @@
    The GNU General Public License is contained in the file COPYING.
 */
 
-#ifndef __AMD64_LINUX_VKI_ARCH_H
-#define __AMD64_LINUX_VKI_ARCH_H
+#ifndef __VKI_AMD64_LINUX_H
+#define __VKI_AMD64_LINUX_H
 
 // AMD64 is little-endian.
 #define VKI_LITTLE_ENDIAN  1
@@ -604,7 +604,7 @@
 // And that's it!
 //----------------------------------------------------------------------
 
-#endif // __AMD64_LINUX_VKI_ARCH_H
+#endif // __VKI_AMD64_LINUX_H
 
 /*--------------------------------------------------------------------*/
 /*--- end                                                          ---*/
diff --git a/include/linux/vki.h b/include/vki-linux.h
similarity index 98%
rename from include/linux/vki.h
rename to include/vki-linux.h
index 1b81ed6..d23c75f 100644
--- a/include/linux/vki.h
+++ b/include/vki-linux.h
@@ -1,6 +1,6 @@
 
 /*--------------------------------------------------------------------*/
-/*--- Linux-specific kernel interface.                 linux/vki.h ---*/
+/*--- Linux-specific kernel interface.                 vki-linux.h ---*/
 /*--------------------------------------------------------------------*/
 
 /*
@@ -48,8 +48,8 @@
 
    Also note that this file contains all the generic header info, ie. that
    from linux/include/linux/ *.h.  The arch-specific header info, eg. that
-   from linux/include/asm-i386/ *.h, is in $PLATFORM/vki_arch.h and
-   $PLATFORM/vki_arch_posixtypes.h.  (Two files are required to avoid
+   from linux/include/asm-i386/ *.h, is in vki-$PLATFORM.h and
+   vki_posixtypes-$PLATFORM.h.  (Two files are required to avoid
    circular dependencies between the generic VKI header and the
    arch-specific VKI header.  It's possible in the future, as more stuff
    gets pulled in, that we might have to split files up some more to avoid
@@ -59,14 +59,20 @@
    definitions, which affects some of them.
 */
 
-#ifndef __LINUX_VKI_H
-#define __LINUX_VKI_H
+#ifndef __VKI_LINUX_H
+#define __VKI_LINUX_H
 
 //----------------------------------------------------------------------
 // Arch-specific POSIX types
 //----------------------------------------------------------------------
 
-#include "vki_arch_posixtypes.h"
+#if defined(VGA_x86)
+#  include "vki_posixtypes-x86-linux.h"
+#elif defined(VGA_amd64)
+#  include "vki_posixtypes-amd64-linux.h"
+#else
+#  error Unknown platform
+#endif
 
 //----------------------------------------------------------------------
 // From linux-2.6.8.1/include/linux/compiler.h
@@ -138,7 +144,13 @@
 // Now the rest of the arch-specific stuff
 //----------------------------------------------------------------------
 
-#include "vki_arch.h"
+#if defined(VGA_x86)
+#  include "vki-x86-linux.h"
+#elif defined(VGA_amd64)
+#  include "vki-amd64-linux.h"
+#else
+#  error Unknown platform
+#endif
 
 //----------------------------------------------------------------------
 // From linux-2.6.8.1/include/linux/limits.h
@@ -1891,7 +1903,7 @@
 #define VKI_PTRACE_PEEKDATA	   2
 #define VKI_PTRACE_PEEKUSR	   3
 
-#endif // __LINUX_VKI_H
+#endif // __VKI_LINUX_H
 
 /*--------------------------------------------------------------------*/
 /*--- end                                                          ---*/
diff --git a/include/x86-linux/vki_arch.h b/include/vki-x86-linux.h
similarity index 98%
rename from include/x86-linux/vki_arch.h
rename to include/vki-x86-linux.h
index 752f04d..990c71c 100644
--- a/include/x86-linux/vki_arch.h
+++ b/include/vki-x86-linux.h
@@ -1,6 +1,6 @@
 
 /*--------------------------------------------------------------------*/
-/*--- x86/Linux-specific kernel interface.    x86-linux/vki_arch.h ---*/
+/*--- x86/Linux-specific kernel interface.         vki-x86-linux.h ---*/
 /*--------------------------------------------------------------------*/
 
 /*
@@ -28,8 +28,8 @@
    The GNU General Public License is contained in the file COPYING.
 */
 
-#ifndef __X86_LINUX_VKI_ARCH_H
-#define __X86_LINUX_VKI_ARCH_H
+#ifndef __VKI_X86_LINUX_H
+#define __VKI_X86_LINUX_H
 
 // x86 is little-endian.
 #define VKI_LITTLE_ENDIAN  1
@@ -802,7 +802,7 @@
 // And that's it!
 //----------------------------------------------------------------------
 
-#endif // __X86_LINUX_VKI_ARCH_H
+#endif // __VKI_X86_LINUX_H
 
 /*--------------------------------------------------------------------*/
 /*--- end                                                          ---*/
diff --git a/include/amd64-linux/vki_arch_posixtypes.h b/include/vki_posixtypes-amd64-linux.h
similarity index 91%
rename from include/amd64-linux/vki_arch_posixtypes.h
rename to include/vki_posixtypes-amd64-linux.h
index 1e8dbf0..01f7002 100644
--- a/include/amd64-linux/vki_arch_posixtypes.h
+++ b/include/vki_posixtypes-amd64-linux.h
@@ -1,7 +1,7 @@
 
 /*--------------------------------------------------------------------*/
 /*--- AMD64/Linux-specific kernel interface: posix types.          ---*/
-/*---                            amd64-linux/vki_arch_posixtypes.h ---*/
+/*---                                 vki_posixtypes-amd64-linux.h ---*/
 /*--------------------------------------------------------------------*/
 
 /*
@@ -29,8 +29,8 @@
    The GNU General Public License is contained in the file COPYING.
 */
 
-#ifndef __AMD64_LINUX_VKI_ARCH_POSIXTYPES_H
-#define __AMD64_LINUX_VKI_ARCH_POSIXTYPES_H
+#ifndef __VKI_POSIXTYPES_AMD64_LINUX_H
+#define __VKI_POSIXTYPES_AMD64_LINUX_H
 
 //----------------------------------------------------------------------
 // From linux-2.6.9/include/asm-x86_64/posix_types.h
@@ -61,7 +61,7 @@
 typedef __vki_kernel_uid_t __vki_kernel_uid32_t;
 typedef __vki_kernel_gid_t __vki_kernel_gid32_t;
 
-#endif // __AMD64_LINUX_VKI_ARCH_POSIXTYPES_H
+#endif // __VKI_POSIXTYPES_AMD64_LINUX_H
 
 /*--------------------------------------------------------------------*/
 /*--- end                                                          ---*/
diff --git a/include/x86-linux/vki_arch_posixtypes.h b/include/vki_posixtypes-x86-linux.h
similarity index 91%
rename from include/x86-linux/vki_arch_posixtypes.h
rename to include/vki_posixtypes-x86-linux.h
index f4f750f..9139328 100644
--- a/include/x86-linux/vki_arch_posixtypes.h
+++ b/include/vki_posixtypes-x86-linux.h
@@ -1,7 +1,7 @@
 
 /*--------------------------------------------------------------------*/
 /*--- x86/Linux-specific kernel interface: posix types.            ---*/
-/*---                              x86-linux/vki_arch_posixtypes.h ---*/
+/*---                                   vki_posixtypes-x86-linux.h ---*/
 /*--------------------------------------------------------------------*/
 
 /*
@@ -29,8 +29,8 @@
    The GNU General Public License is contained in the file COPYING.
 */
 
-#ifndef __X86_LINUX_VKI_ARCH_POSIXTYPES_H
-#define __X86_LINUX_VKI_ARCH_POSIXTYPES_H
+#ifndef __VKI_POSIXTYPES_X86_LINUX_H
+#define __VKI_POSIXTYPES_X86_LINUX_H
 
 //----------------------------------------------------------------------
 // From linux-2.6.8.1/include/asm-i386/posix_types.h
@@ -61,7 +61,7 @@
 	int	val[2];
 } __vki_kernel_fsid_t;
 
-#endif // __X86_LINUX_VKI_ARCH_POSIXTYPES_H
+#endif // __VKI_POSIXTYPES_X86_LINUX_H
 
 /*--------------------------------------------------------------------*/
 /*--- end                                                          ---*/
diff --git a/include/x86-linux/.cvsignore b/include/x86-linux/.cvsignore
deleted file mode 100644
index 282522d..0000000
--- a/include/x86-linux/.cvsignore
+++ /dev/null
@@ -1,2 +0,0 @@
-Makefile
-Makefile.in
diff --git a/include/x86-linux/Makefile.am b/include/x86-linux/Makefile.am
deleted file mode 100644
index 2e5c005..0000000
--- a/include/x86-linux/Makefile.am
+++ /dev/null
@@ -1,5 +0,0 @@
-incincdir = $(includedir)/valgrind/x86-linux
-
-incinc_HEADERS = \
-    vki_arch.h \
-    vki_arch_posixtypes.h
diff --git a/include/x86/.cvsignore b/include/x86/.cvsignore
deleted file mode 100644
index 282522d..0000000
--- a/include/x86/.cvsignore
+++ /dev/null
@@ -1,2 +0,0 @@
-Makefile
-Makefile.in
diff --git a/include/x86/Makefile.am b/include/x86/Makefile.am
deleted file mode 100644
index 7d61728..0000000
--- a/include/x86/Makefile.am
+++ /dev/null
@@ -1,4 +0,0 @@
-incincdir = $(includedir)/valgrind/x86
-
-incinc_HEADERS = tool_arch.h
-
diff --git a/include/x86/tool_arch.h b/include/x86/tool_arch.h
deleted file mode 100644
index a98d4ce..0000000
--- a/include/x86/tool_arch.h
+++ /dev/null
@@ -1,51 +0,0 @@
-/*--------------------------------------------------------------------*/
-/*---                                              x86/tool_arch.h ---*/
-/*--------------------------------------------------------------------*/
-
-/*
-   This file is part of Valgrind, a dynamic binary instrumentation
-   framework.
-
-   Copyright (C) 2000-2005 Nicholas Nethercote
-      njn@valgrind.org
-
-   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 (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, write to the Free Software
-   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-   02111-1307, USA.
-
-   The GNU General Public License is contained in the file COPYING.
-*/
-
-#ifndef __X86_TOOL_ARCH_H
-#define __X86_TOOL_ARCH_H
-
-
-#define VGA_REGPARM(n)      __attribute__((regparm(n)))
-
-
-#define VGA_MIN_INSTR_SZB    1
-#define VGA_MAX_INSTR_SZB   16
-
-
-/* How many bytes below the stack pointer are validly addressible?
-   On x86, the answer is: none.
-*/
-#define VGA_STACK_REDZONE_SZB    0
-
-
-#endif   // __X86_TOOL_ARCH_H
-
-/*--------------------------------------------------------------------*/
-/*--- end                                                          ---*/
-/*--------------------------------------------------------------------*/