From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on starla X-Spam-Level: X-Spam-Status: No, score=-0.8 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.6 Received: from server2.sourceware.org (server2.sourceware.org [8.43.85.97]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by dcvr.yhbt.net (Postfix) with ESMTPS id 8EB9C1F44D for ; Fri, 22 Mar 2024 17:47:21 +0000 (UTC) Authentication-Results: dcvr.yhbt.net; dkim=pass (2048-bit key; unprotected) header.d=linaro.org header.i=@linaro.org header.a=rsa-sha256 header.s=google header.b=tlAW1l+S; dkim-atps=neutral Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 9D7493858418 for ; Fri, 22 Mar 2024 17:47:20 +0000 (GMT) Received: from mail-oa1-x2f.google.com (mail-oa1-x2f.google.com [IPv6:2001:4860:4864:20::2f]) by sourceware.org (Postfix) with ESMTPS id 3618B3858D28 for ; Fri, 22 Mar 2024 17:46:58 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 3618B3858D28 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=linaro.org ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 3618B3858D28 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2001:4860:4864:20::2f ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1711129620; cv=none; b=kilGgnzWW/PbNJjpu9U/Anr1wobZDdvk7TsxDXEAJLWmy8SV04wG2AaSLCJSibuy6FZhDdZZUb/6jHEYasUjTmq74TzK7pku9JpxdWk3+fdfAN/f8+Q2iGMq2Ok0UXLO6U5znVnO2UfKKtjxua67DKKsjKG6Pof4T4Hs0ZyCE9I= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1711129620; c=relaxed/simple; bh=nQZZpX9qJ7uI+kBPOIclLuszhpCTjZxFPp7siXMlH0g=; h=DKIM-Signature:Message-ID:Date:MIME-Version:Subject:To:From; b=PSp2D/uoqzIdXKvOXofokZjWzC4aG758nQOYvvy+PnqB+Fu13z9c66xt1CCqO/fJkyCdY2OHGChGLJVafRCxFpT2dGlcRvPGckaRV8TazPSCXJ8tlmeL1AIRYjVtWzvb+95dubCwW0qGZ7YGAzQSVM6vfdzH3t3d2p9IW1wVPH8= ARC-Authentication-Results: i=1; server2.sourceware.org Received: by mail-oa1-x2f.google.com with SMTP id 586e51a60fabf-2228c4c5ac3so1483807fac.0 for ; Fri, 22 Mar 2024 10:46:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1711129617; x=1711734417; darn=sourceware.org; h=content-transfer-encoding:in-reply-to:organization:from:references :cc:to:content-language:subject:user-agent:mime-version:date :message-id:from:to:cc:subject:date:message-id:reply-to; bh=YueO12aruZ9bo9CfTWhFSufR/I5d2M03OfMK+3K9zZw=; b=tlAW1l+SOSOmXGlPpg9xu1edNJFL0g60edWhMfBzo0bn2FHz9OGwDfVy4rD2YMPYew 2VSGsKvvXwz8zJmvUADydfzvQ5Jq4S/b55BGK5PfMNOdIgU87DCiTgaLp75k/PQNA8VG QDWXAn3vpU6sFGWG2iqiJSc8baZLZLgtz2EzAyBnW2nFGeO8ICMjlUkKOb+sI4dfdQCi FXIuJE4z7N9MD2agpsDYdNQiExyMn6vnS62nAWUgGRIDWzKyWItsz2khbHtkkdFVsfqE tVwIjW9dXLkjdQWaJ+Th8BOg9ZVr7iHdZXquqoPnC9usuxcQfRK8oAT18vlYmyLCxu7V oIoA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1711129617; x=1711734417; h=content-transfer-encoding:in-reply-to:organization:from:references :cc:to:content-language:subject:user-agent:mime-version:date :message-id:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=YueO12aruZ9bo9CfTWhFSufR/I5d2M03OfMK+3K9zZw=; b=NrNsyDrk2AY5rvzMoOiBHJkpasp5P78AXa3mJLow908QIKWI583BPjmtvuhsPjFvKS PCWEAgnHaiEVwNwOjm7flPToIKbhIObeXsxaJPi5ReYuY4Ey0MOHY9PhvEPGjfE8OEcj FDIoWKguaPyTaV+xW/KwwQXRQXZPJ/jHkCEMlX5Q6ERFUGyn+IwfddpomssVIyWfToK1 v3ZgOc3T3ylCXz6LGojO8dPut70Q/NC+aED4LvZ9pLOVNeUPqymFssLvO/ARXCI3Duyv enuRUtz10tI6aW3Zqj0Tzt250Ml+twuE5SWI/wQ7nhr2U3S9VZ6m/E7p4FarpB1LswUm aZvg== X-Forwarded-Encrypted: i=1; AJvYcCXSv7tHVvncVd7jrBU6J8TldbAMMAInowQRal6tzJVSY0S22UoXhBemBygx94c6tiLyX91BuZD7sNORYw+krfzUUandmv3DVm4D X-Gm-Message-State: AOJu0YzpEiUGmv836ro1ke1nwZxFlo6pMX5eT+HZK64wlBrw86PXSFZE 52SXY+LIbxBJmhy8liCgMrFQdRax7tudnvd9tAM3uZGzoWOfQhwYxXdngPbbFcE= X-Google-Smtp-Source: AGHT+IHYFmDE7bHrGAzHNoUpYMnXV19S3h6Ka3cdVEfhoS0kLbV8WlYr5HVQlmmf2kgAC3cHvnhbwg== X-Received: by 2002:a05:6870:3923:b0:222:6406:4ce6 with SMTP id b35-20020a056870392300b0022264064ce6mr535123oap.25.1711129617241; Fri, 22 Mar 2024 10:46:57 -0700 (PDT) Received: from ?IPV6:2804:1b3:a7c3:1d04:bc5d:8d21:f0bf:b624? ([2804:1b3:a7c3:1d04:bc5d:8d21:f0bf:b624]) by smtp.gmail.com with ESMTPSA id o26-20020a63921a000000b005dc89957e06sm1886359pgd.71.2024.03.22.10.46.55 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 22 Mar 2024 10:46:56 -0700 (PDT) Message-ID: Date: Fri, 22 Mar 2024 14:46:53 -0300 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v2 1/6] math: Add support for auto static math tests Content-Language: en-US To: Florian Weimer Cc: Joseph Myers , libc-alpha@sourceware.org, "H . J . Lu" References: <20240321164325.539976-1-adhemerval.zanella@linaro.org> <20240321164325.539976-2-adhemerval.zanella@linaro.org> <23abf336-5490-d62d-c664-98724630bad0@redhat.com> <87v85edar3.fsf@oldenburg.str.redhat.com> <152e5240-b315-401a-8bdd-03b4be0fe35f@linaro.org> <8734sii7s3.fsf@oldenburg.str.redhat.com> From: Adhemerval Zanella Netto Organization: Linaro In-Reply-To: <8734sii7s3.fsf@oldenburg.str.redhat.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-BeenThere: libc-alpha@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libc-alpha-bounces+e=80x24.org@sourceware.org On 22/03/24 12:51, Florian Weimer wrote: > * Adhemerval Zanella Netto: > >> On 22/03/24 03:46, Florian Weimer wrote: >>> * Joseph Myers: >>> >>>> On Thu, 21 Mar 2024, Adhemerval Zanella wrote: >>>> >>>>> It basically copy the already in place rules for dynamic tests >>>>> for auto-generated math tests for all support types. To avoid >>>>> the need to duplicate .inc files, a .SECONDEXPANSION rules is >>>>> adeed for the gen-libm-test.py generation. >>>> >>>> Running the autogenerated tests seems overly complicated when the goal is >>>> simply to verify that linking a call succeeds. >>> >>> Right. And I would prefer if we could mark compat/otherwise non-static >>> symbols in the ABI lists and use those for testing static linking. >>> >> >> That was my first approach, but then as an experiment I enabled static >> build for most of math tests and unexpectedly it has shows some failures >> on x86_64: >> >> FAIL: math/test-float64x-acos >> FAIL: math/test-float64x-log10 >> FAIL: math/test-float64x-log2 >> FAIL: math/test-float64x-y0 >> FAIL: math/test-float64x-y1 >> FAIL: math/test-ldouble-acos >> FAIL: math/test-ldouble-log10 >> FAIL: math/test-ldouble-log2 >> FAIL: math/test-ldouble-y0 >> FAIL: math/test-ldouble-y1 >> >> $ cat math/test-float64x-acos.out >> testing _Float64x (without inline functions) >> Failure: acos (max_value): Exception "Overflow" set >> Failure: acos (-max_value): Exception "Overflow" set >> Failure: acos_downward (max_value): Exception "Overflow" set >> Failure: acos_downward (-max_value): Exception "Overflow" set >> Failure: acos_towardzero (max_value): Exception "Overflow" set >> Failure: acos_towardzero (-max_value): Exception "Overflow" set >> Failure: acos_upward (max_value): Exception "Overflow" set >> Failure: acos_upward (-max_value): Exception "Overflow" set >> >> My plan was to eventually track down what might be happening here, and >> the currently autogenerated tests gave me a nice scaffolding to add coverage >> tests. > > Interesting. On the other hand, getting --disable-shared to work and > just run the *entire* test suite could provide value, too. The last > time we discussed this we weren't sure if we had static-specific > failures, but your example shows that we do. > The main problem imho is --disable-shared is essentially a maintainer option. Although some installed programs will be static linked, it is really useful on checking if static linking is really working as expected. And it also requires *another* build and check iteration, which duplicates the work required in most cases (since static libraries are still built on default for --enable-shared). I tried to help a coworker on support the --disable-shared and I recall another potential issues was the resulting disk usage (and thus build requirements) was quite high due glibc poor organization on static build requirements. There also another complication where we will need to constantly add $(build-shared) and duplicate the CI work to ensure both configure builds are ok. So I really think we should phase-out --disable-shared and work towards on add more static build tests.