From owner-freebsd-hackers@FreeBSD.ORG Sun Mar 20 15:24:23 2011 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 2D45F106566C; Sun, 20 Mar 2011 15:24:23 +0000 (UTC) (envelope-from forandom@gmail.com) Received: from mail-qw0-f54.google.com (mail-qw0-f54.google.com [209.85.216.54]) by mx1.freebsd.org (Postfix) with ESMTP id C827B8FC12; Sun, 20 Mar 2011 15:24:22 +0000 (UTC) Received: by qwc9 with SMTP id 9so4055707qwc.13 for ; Sun, 20 Mar 2011 08:24:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type; bh=o145XuKVJbU7vKNTYU+CiVShk8UM9LgEUyzz2fDy0R4=; b=ZZ3OHDUw8C2qBvl4W+J3f9DUBPwLSat3WRPFD3qXz4zvNzUUuMZqrmvr+JjAvrBcy7 fCTmFu1yBYLYpyt3KfFqAkyqOfIo2ooQZeE8TgD2kifM5tfcxxZGRWIPLlhnOrL3F8UH DZnDIXC1+ol7Nmsbz0ErFV4sV2uUQVQ0rxYts= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type; b=xcO3c8/lBxJMAbOdQbW4gPvKltKo56JG+xO3F9u6ZFtUURD+0sHFhzIEBC3wF7Wk0k Uu+GWTtV4KRqykNvpJ9vSAfuKHYKAwB9mKEXWQPVoHGkW5TO2irIKvh0FzYgnlbFCCzL 0ZyNs17M5cnSz4W8EZWEK+DNoIR0wJ67GBfFU= MIME-Version: 1.0 Received: by 10.229.142.139 with SMTP id q11mr2424085qcu.163.1300634661905; Sun, 20 Mar 2011 08:24:21 -0700 (PDT) Sender: forandom@gmail.com Received: by 10.229.222.148 with HTTP; Sun, 20 Mar 2011 08:24:21 -0700 (PDT) In-Reply-To: <20110320071847.GA10579@dchagin.static.corbina.ru> References: <20110319174115.GA33282@dchagin.static.corbina.ru> <20110320071847.GA10579@dchagin.static.corbina.ru> Date: Sun, 20 Mar 2011 23:24:21 +0800 X-Google-Sender-Auth: hlAnYwXCmYYSd0-P0UoQL72oGtg Message-ID: From: Xingxing Pan To: Chagin Dmitry Content-Type: text/plain; charset=ISO-8859-1 Cc: freebsd-hackers@freebsd.org Subject: Re: GSoC'11: DWARF2 call frame information X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Mar 2011 15:24:23 -0000 2011/3/20 Chagin Dmitry : > On Sun, Mar 20, 2011 at 11:08:10AM +0800, Xingxing Pan wrote: >> 2011/3/20 Chagin Dmitry : >> > On Sun, Mar 20, 2011 at 12:36:39AM +0800, Xingxing Pan wrote: >> >> Hi, everyone. >> >> >> >> I'm a student interested in the project "DWARF2 call frame >> >> information" for Summer of Code 2011. >> >> I'd like to know which compiler I will work on to add DWARF2 support. >> >> This project is not tagged by "suggested". Will it be ok to choose it >> >> as the target? >> >> >> > >> > hi Xingxing, >> > >> > You should carefully reread the proposed idea. Especially in the >> > "A debug kernel is not able to show stack traces with cross >> > exceptions anymore. This is because we do not emit any dwarf2 >> > call frame information for any assembler code, since gdb switched >> > to the dwarf2 format" part. >> > >> > And, of course, this work is very important for the community. So, IMO, >> > it will be ok as the target :) >> > Thank you. >> > >> > -- >> > Have fun! >> > chd >> > >> >> Hi chd, >> >> Thank you for your reply. I thought the dwarf2 call frame information >> was generated by the toolchain. > > mostly yes. but not in the assembler code written by hand. > >> That's why I care about the states of the compiler. >> I'm not quite understand the proposed idea. Could you show me more >> details of the project? >> I really appreciate your support. >> > > hm, you should add the .cfi directive in each .S file by hand: > http://www.logix.cz/michal/devel/gas-cfi/ > > -- > Have fun! > chd > Thanks for your reply. I think I have got the idea. For the object files generated by the toolchain, there's no need to worry about DWARF call frame information if the DWARF is supported by the toolchain.But the assembly written by hand is an exception. Different architecture has different assembly. That means I have to add DWARF for all these architectures currently supported by FreeBSD. Maybe I need a powerfull script. Xingxing Pan