From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 18782 invoked by alias); 16 Dec 2002 22:13:47 -0000 Mailing-List: contact gcc-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-owner@gcc.gnu.org Received: (qmail 18763 invoked from network); 16 Dec 2002 22:13:44 -0000 Received: from unknown (HELO igw3.watson.ibm.com) (129.34.20.18) by sources.redhat.com with SMTP; 16 Dec 2002 22:13:44 -0000 Received: from sp1n293en1.watson.ibm.com (sp1n293en1.watson.ibm.com [9.2.112.57]) by igw3.watson.ibm.com (8.11.4/8.11.4) with ESMTP id gBGMCvc25816; Mon, 16 Dec 2002 17:12:57 -0500 Received: from makai.watson.ibm.com (makai.watson.ibm.com [9.2.216.144]) by sp1n293en1.watson.ibm.com (8.11.4/8.11.4) with ESMTP id gBGMCvT22720; Mon, 16 Dec 2002 17:12:57 -0500 Received: from watson.ibm.com (localhost [127.0.0.1]) by makai.watson.ibm.com (AIX4.3/8.9.3/8.9.3/09-18-2002) with ESMTP id RAA27306; Mon, 16 Dec 2002 17:12:57 -0500 Message-Id: <200212162212.RAA27306@makai.watson.ibm.com> To: Zack Weinberg , Jan Hubicka cc: gcc@gcc.gnu.org, libstdc++@gcc.gnu.org Subject: Re: basic-improvements merge status In-Reply-To: Message from Zack Weinberg of "Mon, 16 Dec 2002 13:47:58 PST." <87bs3l3ab5.fsf@egil.codesourcery.com> Date: Mon, 16 Dec 2002 14:23:00 -0000 From: David Edelsohn X-SW-Source: 2002-12/txt/msg00941.txt.bz2 >>>>> Zack Weinberg writes: Zack> David Edelsohn writes: >> Any idea what change in GCC 3.4BIB is causing GCC to "optimize" >> >> (float) sin(x) >> >> as >> >> sinf(x)? Zack> I remember such an optimization being implemented but I can't find the Zack> change log entry for it. My recollection is that it was Jan Hubicka Zack> who coded it. Jan? Yes, it appears to be due to the builtins.def changes by Jan which assumes that all of those functions natively are available on every target. One cannot make that assumption. Testing for the existence of those functions on the target is not easy. In most cases, the transformation will result in a linker error on systems which do not provide the function, but libstdc++-v3 graciously provides the symbols, creating a recursion in those definitions. David