From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-pj1-x1034.google.com (mail-pj1-x1034.google.com [IPv6:2607:f8b0:4864:20::1034]) by sourceware.org (Postfix) with ESMTPS id 14A6F3888835 for ; Thu, 1 Jul 2021 22:28:14 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 14A6F3888835 Received: by mail-pj1-x1034.google.com with SMTP id g24so5199806pji.4 for ; Thu, 01 Jul 2021 15:28:14 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=Nd2Phnpw81IulBMMmtsuwpYcfN/fXSErL83ujEknycc=; b=emvu6qrJhbSlmZDj9I4IUmUUohroEjT4eVlJgfWSamEmPHhyKKrMrcJR2jqh92YYAx GetEEpWx+L8HSHwkVBsINa7+lqF77ZomQXdDpBeY8Xc0u9jF3YA+0EnPRkXyLcdLV5cE E3K39pxWrfBW0tH2r92RJEZ8Vr7VX/KR4Es6FBc8QrlWTc5bXmBWrjCWGl+YQV+7hce6 V3Pa2/FBGrVgvtF7Q4XJhi51qk4my8u3TqvN7tgmu5KYQ52BuMqZNmRbly6brVQesBAB LOFfvmaAewwElktbokYMzvvGvN+UuCibdgy4Q1D7W45LRvtr/3/FGbw+snrKX03gNwMl wdew== X-Gm-Message-State: AOAM533gMXGJohrj23EMWow06YxvStDzdwtntQLH61YQ5L2jJp4hE/l6 hmjO4+czP6KuvzFiRaAQUhNrkUbGT3BC1/WlfzM= X-Google-Smtp-Source: ABdhPJxejmGNO4hPphsKrwkIsUHAPffbBLT+phAtsgxwjlnqBnkRNkS7dvtp0HdjD9SGJydoAIyVDw+YPUkREcyO4PA= X-Received: by 2002:a17:902:aa4a:b029:10e:f98c:2b83 with SMTP id c10-20020a170902aa4ab029010ef98c2b83mr1786838plr.62.1625178493017; Thu, 01 Jul 2021 15:28:13 -0700 (PDT) MIME-Version: 1.0 References: <20210701210537.51272-1-hjl.tools@gmail.com> In-Reply-To: From: "H.J. Lu" Date: Thu, 1 Jul 2021 15:27:37 -0700 Message-ID: Subject: Re: [PATCH] Add optional _Float16 support To: Joseph Myers Cc: IA32 System V Application Binary Interface , llvm-dev@lists.llvm.org, GNU C Library , GCC Patches Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-3025.3 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, FREEMAIL_FROM, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=unavailable autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 Jul 2021 22:28:15 -0000 On Thu, Jul 1, 2021 at 3:10 PM Joseph Myers wrote: > > On Thu, 1 Jul 2021, H.J. Lu via Gcc-patches wrote: > > > 2. Return _Float16 and _Complex _Float16 values in %xmm0/%xmm1 registers. > > That restricts use of _Float16 to processors with SSE. Is that what we > want in the ABI, or should _Float16 be available with base 32-bit x86 > architecture features only, much like _Float128 and the decimal FP types Yes, _Float16 requires XMM registers. > are? (If it is restricted to SSE, we can of course ensure relevant libgcc > functions are built with SSE enabled, and likewise in glibc if that gains > _Float16 functions, though maybe with some extra complications to get > relevant testcases to run whenever possible.) > _Float16 functions in libgcc should be compiled with SSE enabled. BTW, _Float16 software emulation may require more than just SSE since we need to do _Float16 load and store with XMM registers. There is no 16bit load/store for XMM registers without AVX512FP16. -- H.J.