Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 26 May 2002 08:57:16 -0700 (PDT)
From:      Doug Rabson <dfr@FreeBSD.org>
To:        Perforce Change Reviews <perforce@freebsd.org>
Subject:   PERFORCE change 11910 for review
Message-ID:  <200205261557.g4QFvGf60844@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
http://people.freebsd.org/~peter/p4db/chv.cgi?CH=11910

Change 11910 by dfr@dfr_home on 2002/05/26 08:56:56

	Move the declaration of ElfN_Hashelt to elfN.h to make it easier
	to include <machine/elf.h> without forcing the choice of either
	elf32 or elf64 on platforms which can support both.

Affected files ...

... //depot/projects/ia64/sys/alpha/include/elf.h#3 edit
... //depot/projects/ia64/sys/i386/include/elf.h#3 edit
... //depot/projects/ia64/sys/ia64/include/elf.h#4 edit
... //depot/projects/ia64/sys/kern/link_elf.c#6 edit
... //depot/projects/ia64/sys/powerpc/include/elf.h#3 edit
... //depot/projects/ia64/sys/sparc64/include/elf.h#3 edit
... //depot/projects/ia64/sys/sys/elf32.h#2 edit
... //depot/projects/ia64/sys/sys/elf64.h#2 edit
... //depot/projects/ia64/sys/sys/elf_generic.h#3 edit

Differences ...

==== //depot/projects/ia64/sys/alpha/include/elf.h#3 (text+ko) ====

@@ -60,15 +60,6 @@
 
 __ElfType(Auxinfo);
 
-/*
- * Types of dynamic symbol hash table bucket and chain elements.
- *
- * This is inconsistent among 64 bit architectures, so a machine dependent
- * typedef is required.
- */
-
-typedef Elf64_Off Elf64_Hashelt;
-
 /* Values for a_type. */
 #define	AT_NULL		0	/* Terminates the vector. */
 #define	AT_IGNORE	1	/* Ignored entry. */

==== //depot/projects/ia64/sys/i386/include/elf.h#3 (text+ko) ====

@@ -60,15 +60,6 @@
 
 __ElfType(Auxinfo);
 
-/*
- * Types of dynamic symbol hash table bucket and chain elements.
- *
- * This is inconsistent among 64 bit architectures, so a machine dependent
- * typedef is required.
- */
-
-typedef Elf32_Off Elf32_Hashelt;
-
 /* Values for a_type. */
 #define	AT_NULL		0	/* Terminates the vector. */
 #define	AT_IGNORE	1	/* Ignored entry. */

==== //depot/projects/ia64/sys/ia64/include/elf.h#4 (text+ko) ====

@@ -69,16 +69,6 @@
 	} a_un;
 } Elf64_Auxinfo;
 
-/*
- * Types of dynamic symbol hash table bucket and chain elements.
- *
- * This is inconsistent among 64 bit architectures, so a machine dependent
- * typedef is required.
- */
-
-typedef Elf32_Off	Elf32_Hashelt;
-typedef Elf64_Half	Elf64_Hashelt;
-
 /* Values for a_type. */
 #define	AT_NULL		0	/* Terminates the vector. */
 #define	AT_IGNORE	1	/* Ignored entry. */

==== //depot/projects/ia64/sys/kern/link_elf.c#6 (text+ko) ====

@@ -62,8 +62,6 @@
 
 #include "linker_if.h"
 
-__ElfType(Hashelt);
-
 typedef struct elf_file {
     struct linker_file	lf;		/* Common fields */
     int			preloaded;	/* Was file pre-loaded */

==== //depot/projects/ia64/sys/powerpc/include/elf.h#3 (text+ko) ====

@@ -63,15 +63,6 @@
 
 __ElfType(Auxinfo);
 
-/*
- * Types of dynamic symbol hash table bucket and chain elements.
- *
- * This is inconsistent among 64 bit architectures, so a machine dependent
- * typedef is required.
- */
-
-typedef Elf32_Off Elf32_Hashelt;
-
 /* Values for a_type. */
 #define	AT_NULL		0	/* Terminates the vector. */
 #define	AT_IGNORE	1	/* Ignored entry. */

==== //depot/projects/ia64/sys/sparc64/include/elf.h#3 (text+ko) ====

@@ -57,15 +57,6 @@
 
 __ElfType(Auxinfo);
 
-/*
- * Types of dynamic symbol hash table bucket and chain elements.
- *
- * This is inconsistent among 64 bit architectures, so a machine dependent
- * typedef is required.
- */
-
-typedef Elf64_Half Elf64_Hashelt;
-
 /* Values for a_type. */
 #define	AT_NULL		0	/* Terminates the vector. */
 #define	AT_IGNORE	1	/* Ignored entry. */

==== //depot/projects/ia64/sys/sys/elf32.h#2 (text+ko) ====

@@ -41,6 +41,7 @@
 typedef int32_t		Elf32_Sword;
 typedef u_int32_t	Elf32_Word;
 typedef u_int32_t	Elf32_Size;
+typedef Elf32_Off	Elf32_Hashelt;
 
 /*
  * ELF header.

==== //depot/projects/ia64/sys/sys/elf64.h#2 (text+ko) ====

@@ -44,6 +44,19 @@
 typedef u_int16_t	Elf64_Quarter;
 
 /*
+ * Types of dynamic symbol hash table bucket and chain elements.
+ *
+ * This is inconsistent among 64 bit architectures, so a machine dependent
+ * typedef is required.
+ */
+
+#ifdef __alpha__
+typedef Elf64_Off	Elf64_Hashelt;
+#else
+typedef Elf64_Half	Elf64_Hashelt;
+#endif
+
+/*
  * ELF header.
  */
 

==== //depot/projects/ia64/sys/sys/elf_generic.h#3 (text+ko) ====

@@ -61,6 +61,7 @@
 __ElfType(Sword);
 __ElfType(Word);
 __ElfType(Size);
+__ElfType(Hashelt);
 __ElfType(Ehdr);
 __ElfType(Shdr);
 __ElfType(Phdr);

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe p4-projects" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200205261557.g4QFvGf60844>