From owner-freebsd-arch@FreeBSD.ORG Thu Dec 27 11:10:17 2012 Return-Path: Delivered-To: arch@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id CC1D46F6; Thu, 27 Dec 2012 11:10:17 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from tensor.andric.com (cl-327.ede-01.nl.sixxs.net [IPv6:2001:7b8:2ff:146::2]) by mx1.freebsd.org (Postfix) with ESMTP id 834228FC08; Thu, 27 Dec 2012 11:10:17 +0000 (UTC) Received: from [IPv6:2001:7b8:3a7:0:84c:b2ef:124a:7931] (unknown [IPv6:2001:7b8:3a7:0:84c:b2ef:124a:7931]) (using TLSv1 with cipher DHE-RSA-CAMELLIA256-SHA (256/256 bits)) (No client certificate requested) by tensor.andric.com (Postfix) with ESMTPSA id 01ED65C5A; Thu, 27 Dec 2012 12:10:15 +0100 (CET) Message-ID: <50DC2C9B.4030802@FreeBSD.org> Date: Thu, 27 Dec 2012 12:10:19 +0100 From: Dimitry Andric Organization: The FreeBSD Project User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:18.0) Gecko/20121128 Thunderbird/18.0 MIME-Version: 1.0 To: Peter Wemm Subject: Re: UPDATE Re: making use of userland dtrace on FreeBSD References: <50D49DFF.3060803@ixsystems.com> <50DBC7E2.1070505@mu.org> <50DBD193.7080505@mu.org> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: "arch@freebsd.org" , Adrian Chadd , Alfred Perlstein , Rui Paulo , Alfred Perlstein X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 27 Dec 2012 11:10:17 -0000 On 2012-12-27 06:32, Peter Wemm wrote: > On Wed, Dec 26, 2012 at 8:41 PM, Alfred Perlstein wrote: ... >> Can you clarify some? If it was somewhat easy to re-add >> -fomit-frame-pointer to critical libraries like this, then that would be OK? > > No, you can't add MD flags like this. The way to do it is see things > like PIC, WARNS, etc where you can do overrides of defaults on a > directory basis, and respect the system-wide user overrides. > > Remember, -fno-omit-frame-pointer is the default on i386 (except at > high -O levels with gcc, I dont know where clang, the default > compiler, draws the line). Other platforms don't even have frame > pointers. You can't just scatter that switch around the place. Just for reference: - gcc versions < 4.6 always use -fno-omit-frame-pointer for i386, and enable -fomit-frame-pointer for amd64, when optimization is enabled (-O1 or higher). - gcc versions >= 4.6 enable -fomit-frame-pointer for both i386 and amd64, when optimization is enabled (-O1 or higher). - clang enables -fomit-frame-pointer only when explicity specified. I will submit a patch to upstream to make it mimic the behaviour of our gcc in base, e.g. enable -fomit-frame-pointer only for amd64, when optimization is enabled (-O1 or higher).