[PATCH] nvptx: Fix and use BI mode logic instructions (e.g. and.pred).

2022-01-16 Thread Roger Sayle
This patch adds support for nvptx's BImode and.pred, or.pred and xor.pred instructions. Technically, nvptx.md previously defined andbi3, iorbi3 and xorbi3 instructions, but the assembly language mnemonic output for these was incorrect (e.g. and.b1) and would be rejected by the ptxas assembler. T

Re: [PATCH] Fortran: make IEEE_VALUE produce signaling NaNs

2022-01-16 Thread Mikael Morin
Hello, Le 10/01/2022 à 18:32, FX via Fortran a écrit : Hi, Second part of a three-patch series to fix PR 82207 (https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82207), making gfortran handle signaling NaNs. This part fixes the library code implementing IEEE_VALUE. To do so, I switched that part

amdgcn: Tune default OpenMP/OpenACC GPU utilization

2022-01-16 Thread Thomas Schwinge
Hi! On 2020-07-15T21:49:11+0100, Andrew Stubbs wrote: > This patch tunes the default GPU thread count for OpenMP and OpenACC on > AMD GCN devices. It chooses a sensible default if no attributes are > given at all, increases the number of OpenACC gangs if only one worker > per gang is specified, a

[PATCH 1/6 v2] libstdc++: Directly implement hexfloat std::from_chars for binary32/64

2022-01-16 Thread Patrick Palka via Gcc-patches
Series tested on x86_64, i686, ppc64, ppc64le, aarch64, does it look OK for trunk? libstdc++-v3/ChangeLog: * src/c++17/floating_from_chars.cc: Include . (ascii_to_hexit, starts_with_ci): Define. (__floating_from_chars_hex): Define. (from_chars): Conditionally call

[PATCH 3/6] libstdc++: Apply modifications to our local copy of fast_float

2022-01-16 Thread Patrick Palka via Gcc-patches
This performs the following modifications to our local copy of fast_float in order to make it more readily usable in our std::from_chars implementation: * Remove system #includes * Replace stray call to assert * Use the standard chars_format and from_chars_result types libstdc++-v3/ChangeLo

[PATCH 5/6] libstdc++: Use fast_float in std::from_chars for binary32/64

2022-01-16 Thread Patrick Palka via Gcc-patches
This makes our std::from_chars implementation use fast_float for parsing chars_format::scientific/fixed/general parsing into binary32/64 values. For other floating-point formats we still use the fallback implementation that goes through the strtod family of functions. libstdc++-v3/ChangeLog:

[PATCH 4/6] libstdc++: Adjust fast_float's over/underflow behavior for conformnace

2022-01-16 Thread Patrick Palka via Gcc-patches
This makes fast_float handle the situation where std::from_chars is specified to return result_out_of_range, i.e. when the parsed value is outside the representable range of the floating-point type. This adjusts fast_float's behavior in case of over/underflow: instead of returning errc{} and setti

[PATCH 2/6] libstdc++: Import the fast_float library

2022-01-16 Thread Patrick Palka via Gcc-patches
We're going to use the fast_float library in our (compiled-in) floating-point std::from_chars implementation for faster and more portable parsing of binary32/64 decimal strings. The single file fast_float.h is an amalgamation of the entire library, which can be (re)generated with the command py

[pushed] fortan testsuite: Enrich tests with variants failing on the branch.

2022-01-16 Thread Mikael Morin
Hello, I have just pushed the attached patch after testing the impacted tests individually. MikaelFrom 15630e6e9eb019477d1fc5c0966b43979e18ae18 Mon Sep 17 00:00:00 2001 From: Mikael Morin Date: Sun, 16 Jan 2022 18:33:36 +0100 Subject: [PATCH] testsuite: Enrich tests with variants failing on t

Re: [PATCH] Strengthen memory memory order for atomic::wait/notify

2022-01-16 Thread Jonathan Wakely via Gcc-patches
On Sun, 16 Jan 2022 at 01:48, Thomas Rodgers via Libstdc++ < libstd...@gcc.gnu.org> wrote: > This patch updates the memory order of atomic accesses to the waiter's > count to match libc++'s usage. It should be backported to GCC11. > The commit subject line says "memory memory order", OK for trunk

Re: [PATCH] libstdc++: Add attribute to features deprecated in C++17 [PR91260]

2022-01-16 Thread Jonathan Wakely via Gcc-patches
On Fri, 14 Jan 2022 at 11:32, Jonathan Wakely wrote: > > > On Wed, 12 Jan 2022 at 09:34, Jonathan Wakely via Libstdc++ < > libstd...@gcc.gnu.org> wrote: > >> This passes testing (with -std=gnu++98/11/17/20) but is quite a large >> patch for this late in stage 3. Does anybody object to doing this

PING^3: [PATCH] Add --enable-first-stage-cross configure option

2022-01-16 Thread Serge Belyshev via Gcc-patches
Final ping before stage3 ends: [PATCH] Add --enable-first-stage-cross configure option https://gcc.gnu.org/pipermail/gcc-patches/2021-July/575318.html

[pushed 0/3][gcc11] fortran: Backpoprt KIND arg of intrinsics fix [PR103789]

2022-01-16 Thread Mikael Morin via Gcc-patches
Hello, I noticed a bug while backporting the fix for PR103789 on the 11 branch. It makes the cherry-pick not exactly straightforward. The bug is fixed in the first patch, the backport comes in the second, and additional test coverage (pushed earlier today on master) is added in the third. Tested

[pushed 1/3] Fortran: Fix KIND argument index for LEN_TRIM.

2022-01-16 Thread Mikael Morin via Gcc-patches
The mainline code to check whether an argument has to be included in scalarization uses only the name of a dummy argument object to recognize a specific argument of an intrinsic procedure. On the 11 branch, the dummy argument object is not available and the code uses a mix of check for argument n

[pushed 2/3] Fortran: Ignore KIND argument of a few more intrinsics. [PR103789]

2022-01-16 Thread Mikael Morin via Gcc-patches
After PR97896 for which some code was added to ignore the KIND argument of the INDEX intrinsics, and PR87711 for which that was extended to LEN_TRIM as well, this propagates it further to MASKL, MASKR, SCAN and VERIFY. PR fortran/103789 gcc/fortran/ChangeLog: * trans-array.c (ar

[pushed 3/3] testsuite: Enrich tests with variants failing on the branch.

2022-01-16 Thread Mikael Morin via Gcc-patches
Backporting the fix for pr103789 on the 11 branch revealed a lack of test coverage for the tests provided with that fix. Indeed, the tests use the KIND argument of the respective intrinsics only with keyword arguments. This adds variants with non-keyword arguments. The tests enriched this way fa

Re: [PATCH] Fortran: make IEEE_VALUE produce signaling NaNs

2022-01-16 Thread FX via Gcc-patches
Thanks Mikael, > This looks good to me. Thanks. Thanks. Pushed: https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=90045c5df5b3c8853e7740fb72a11aead1c489bb FX

Re: [pushed 3/3] testsuite: Enrich tests with variants failing on the branch.

2022-01-16 Thread Thomas Koenig via Gcc-patches
Hi Mikael, Backporting the fix for pr103789 on the 11 branch revealed a lack of test coverage for the tests provided with that fix. Indeed, the tests use the KIND argument of the respective intrinsics only with keyword arguments. This adds variants with non-keyword arguments. The tests enric

Re: [PATCH] Fortran: make IEEE_VALUE produce signaling NaNs

2022-01-16 Thread FX via Gcc-patches
Hi Mikael, team, > Thanks. Pushed: > https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=90045c5df5b3c8853e7740fb72a11aead1c489bb Pushed a further commit to XFAIL the testcases on x87: https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=86e3b476d5defaa79c94d40b76cbeec21cd02e5f There the ABI does not allow

[PATCH] Fortran: detect signaling NaNs on targets without issignaling macro in libc

2022-01-16 Thread FX via Gcc-patches
This patch is the third in my “signaling NaN” series. For targets with IEEE support but without the issignaling macro in libc (i.e., everywhere except glibc), this allows us to provide a fallback implementation. In order to keep the code in ieee_helper.c relatively readable, I’ve put that new im

Re: [PATCH 11/11] libstdc++: Fix ODR issues with different -m flags

2022-01-16 Thread Jonathan Wakely via Gcc-patches
On Fri, 14 Jan 2022 at 21:30, Jonathan Wakely wrote: > > > On Mon, 15 Nov 2021 at 08:57, Matthias Kretz wrote: > >> ping. OK to push? >> > > Sorry for the delay - this is OK for trunk. > I see a new failure on powerpc64le-linux (gcc112 in the cfarm) after this commit: FAIL: experimental/simd/s

Re: [PATCH] libstdc++: Implement C++20 atomic and atomic

2022-01-16 Thread Jonathan Wakely via Gcc-patches
On Fri, 14 Jan 2022 at 22:40, Jonathan Wakely wrote: > > > On Sat, 18 Sept 2021 at 05:12, Thomas Rodgers > wrote: > >> From: Thomas Rodgers >> >> Let's try this one instead. >> >> Signed-off-by: Thomas Rodgers >> > > If you're doing DCO "Signed-off-by" commits you don't need FSF copyright > no

[committed] libstdc++: Update C++20 status table

2022-01-16 Thread Jonathan Wakely via Gcc-patches
libstdc++-v3/ChangeLog: * doc/xml/manual/status_cxx2020.xml: Update. * doc/html/manual/status.html: Regenerate. Pushed to trunk. commit a326934886f606b4a4a60254917f58c825d7c94b Author: Jonathan Wakely Date: Thu Jan 13 22:18:13 2022 libstdc++: Update C++20 status tabl

Re: [PATCH v2 RFA] diagnostic: avoid repeating include path

2022-01-16 Thread David Malcolm via Gcc-patches
On Fri, 2022-01-14 at 23:01 -0500, Jason Merrill wrote: > On 1/13/22 17:30, David Malcolm wrote: > > On Thu, 2022-01-13 at 17:08 -0500, Jason Merrill wrote: > > > When a sequence of diagnostic messages bounces back and forth > > > repeatedly > > > between two includes, as with > > > > > >   #inclu

[r12-6615 Regression] FAIL: gfortran.dg/ieee/signaling_2.f90 -Os execution test on Linux/x86_64

2022-01-16 Thread sunil.k.pandey via Gcc-patches
On Linux/x86_64, 90045c5df5b3c8853e7740fb72a11aead1c489bb is the first bad commit commit 90045c5df5b3c8853e7740fb72a11aead1c489bb Author: Francois-Xavier Coudert Date: Mon Jan 10 17:04:34 2022 +0100 Fortran: allow IEEE_VALUE to correctly return signaling NaNs caused FAIL: gfortran.dg/iee

Ping Re: [PATCH] middle-end: move initialization of stack_limit_rtx [PR103163]

2022-01-16 Thread Sandra Loosemore
On 1/8/22 9:24 PM, Sandra Loosemore wrote: This patch fixes the ICE I reported in PR103163.  We were initializing stack_limit_rtx before the register properties it depends on were getting set.  I moved it to the same function where stack_pointer_rtx, frame_pointer_rtx, etc are being initialized

[r12-6616 Regression] FAIL: gfortran.dg/ieee/signaling_3.f90 -Os execution test on Linux/x86_64

2022-01-16 Thread sunil.k.pandey via Gcc-patches
On Linux/x86_64, 86e3b476d5defaa79c94d40b76cbeec21cd02e5f is the first bad commit commit 86e3b476d5defaa79c94d40b76cbeec21cd02e5f Author: Francois-Xavier Coudert Date: Mon Jan 17 00:00:18 2022 +0100 Fortran: xfail signaling NaN testcases on x87 caused FAIL: gfortran.dg/ieee/signaling_3.f

Re: [PATCH] rs6000: Use known constant for GET_MODE_NUNITS and similar

2022-01-16 Thread Kewen.Lin via Gcc-patches
on 2022/1/14 下午9:53, David Edelsohn wrote: > On Fri, Jan 14, 2022 at 5:42 AM Kewen.Lin wrote: >> >> on 2022/1/13 下午11:15, David Edelsohn wrote: >>> On Thu, Jan 13, 2022 at 7:40 AM Kewen.Lin wrote: Hi David, on 2022/1/13 上午11:12, David Edelsohn wrote: > On Wed, Jan 12, 2022

Re: [patch, libgfortran, power-ieee128] Add multiple defaults for GFORTRAN_CONVERT_UNIT

2022-01-16 Thread Thomas Koenig via Gcc-patches
On 13.01.22 22:58, Thomas Koenig via Fortran wrote: with this patch, it is now possible to specify both the endianness and the REAL(KIND=16) format using the environment variable GFORTRAN_CONVERT_UNIT. I have now pushed this to trunk. Best regards Thomas

Re: [PATCH 1/3] tree-ssa-sink: do not sink to in front of setjmp

2022-01-16 Thread Richard Biener via Gcc-patches
On Fri, Jan 14, 2022 at 7:21 PM Alexander Monakov wrote: > > gcc/ChangeLog: > > * tree-ssa-sink.c (select_best_block): Punt if selected block > has incoming abnormal edges. OK. > gcc/testsuite/ChangeLog: > > * gcc.dg/setjmp-7.c: New test. > --- > gcc/testsuite/gcc.dg/set

Re: [arm] MVE: Relax addressing modes for full loads and stores

2022-01-16 Thread Christophe Lyon via Gcc-patches
Hi André, On Fri, Jan 14, 2022 at 6:03 PM Andre Vieira (lists) via Gcc-patches < gcc-patches@gcc.gnu.org> wrote: > Hi Christophe, > > This patch relaxes the addressing modes for the mve full load and stores > (by full loads and stores I mean non-widening or narrowing loads and > stores resp). The