[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] Re: [patch 1/5] add libelf: an ELF binary parser library.
Hi Gerd, I have to say I'm not a big fan of sticking a 32bit and 64bit version of each structure in a union and then checking at all levels of the function call stack which one to reference (via elf_xval() for example). Wouldn't it be cleaner to just have 2 different version of each elf data structure and function? elf32_xxx and elf64_xxx . And go down one path or the other at the start of your function call stack? I'm not usually a fan of multiple compilation, but due to the layout of 32 and 64bit elf structures, this is one case where it makes sense to me. Also, do we actually have a need to look at elf files with a different ELFDATA (byte ordering) ? On Jan 23, 2007, at 15:53, Gerd Hoffmann wrote: This patch adds a library with a small collection of helper functions to parse and load elf binaries. The library handles endianess and elfsize at runtime. The patch also shuffles around the include files a bit. Now there is *one* include file holding all the elf structures (xen/include/public/elfstructs.h) which is included by everyone who needs them. It's dead code with this patch only, putting the code into use happens in followup patches. Signed-off-by: Gerd Hoffmann <kraxel@xxxxxxx> ---tools/libxc/xc_elf.h | 525 -----------------------------------xen/arch/x86/boot/mkelf32.c | 2 xen/common/Makefile | 2 xen/common/libelf/Makefile | 4 xen/common/libelf/README | 1xen/common/libelf/libelf-dominfo.c | 420 ++++++++++++++++++++++++++++xen/common/libelf/libelf-loader.c | 156 ++++++++++ xen/common/libelf/libelf-private.h | 51 +++ xen/common/libelf/libelf-relocate.c | 345 +++++++++++++++++++++++ xen/common/libelf/libelf-tools.c | 225 +++++++++++++++xen/include/public/elfstructs.h | 527 ++++++++++++++++++++++++++++++++++++xen/include/public/libelf.h | 238 ++++++++++++++++xen/include/xen/elf.h | 490 ---------------------------------13 files changed, 1972 insertions(+), 1014 deletions(-) _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |