From owner-p4-projects@FreeBSD.ORG Thu Oct 18 02:13:53 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id EC27516A468; Thu, 18 Oct 2007 02:13:52 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 99EB316A41B for ; Thu, 18 Oct 2007 02:13:52 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 7E17F13C474 for ; Thu, 18 Oct 2007 02:13:52 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id l9I2Dq4T084692 for ; Thu, 18 Oct 2007 02:13:52 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id l9I2DqkV084689 for perforce@freebsd.org; Thu, 18 Oct 2007 02:13:52 GMT (envelope-from jb@freebsd.org) Date: Thu, 18 Oct 2007 02:13:52 GMT Message-Id: <200710180213.l9I2DqkV084689@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 127646 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 18 Oct 2007 02:13:53 -0000 http://perforce.freebsd.org/chv.cgi?CH=127646 Change 127646 by jb@jb_freebsd1 on 2007/10/18 02:13:15 The start of a BSD licensed libdwarf. The API differs from the GNU libdwarf (from SGI) which differs from the GNU libdwarf (from Red Hat). The functionality here so far is adequate for DTrace's CTF tools. The client does not need to keep track of allocated memory like the GNU versions do. This code assumes the use of FreeBSD's libelf. In particular it assumes that it is OK to open an ELF file read-only, call elf_getdata() and then modify the in-memory data buffer. This is important because any optimisation level in gcc causes the generation of debug sections with RELA sections. Affected files ... .. //depot/projects/dtrace/src/lib/libdwarf/Makefile#1 add .. //depot/projects/dtrace/src/lib/libdwarf/_libdwarf.h#1 add .. //depot/projects/dtrace/src/lib/libdwarf/dwarf.h#1 add .. //depot/projects/dtrace/src/lib/libdwarf/dwarf_abbrev.c#1 add .. //depot/projects/dtrace/src/lib/libdwarf/dwarf_attr.c#1 add .. //depot/projects/dtrace/src/lib/libdwarf/dwarf_attrval.c#1 add .. //depot/projects/dtrace/src/lib/libdwarf/dwarf_cu.c#1 add .. //depot/projects/dtrace/src/lib/libdwarf/dwarf_dealloc.c#1 add .. //depot/projects/dtrace/src/lib/libdwarf/dwarf_die.c#1 add .. //depot/projects/dtrace/src/lib/libdwarf/dwarf_dump.c#1 add .. //depot/projects/dtrace/src/lib/libdwarf/dwarf_errmsg.c#1 add .. //depot/projects/dtrace/src/lib/libdwarf/dwarf_errno.c#1 add .. //depot/projects/dtrace/src/lib/libdwarf/dwarf_finish.c#1 add .. //depot/projects/dtrace/src/lib/libdwarf/dwarf_form.c#1 add .. //depot/projects/dtrace/src/lib/libdwarf/dwarf_init.c#1 add .. //depot/projects/dtrace/src/lib/libdwarf/dwarf_loc.c#1 add .. //depot/projects/dtrace/src/lib/libdwarf/libdwarf.h#1 add Differences ...