diff options
author | Tom de Vries <tdevries@suse.de> | 2022-03-07 14:23:03 +0100 |
---|---|---|
committer | Tom de Vries <tdevries@suse.de> | 2022-03-10 12:19:47 +0100 |
commit | 3ebcc053a4bd32973762b671b444730baf558805 (patch) | |
tree | 1705486c2f180351e33c058f0e8f7730fc24decd /gcc/fortran/trans-openmp.cc | |
parent | 248bbcb2c3212bcb9f2a485b591dd37371133402 (diff) | |
download | gcc-3ebcc053a4bd32973762b671b444730baf558805.zip gcc-3ebcc053a4bd32973762b671b444730baf558805.tar.gz gcc-3ebcc053a4bd32973762b671b444730baf558805.tar.bz2 |
[nvptx] Use bit-bucket operand for atom insns
For an atomic fetch operation that doesn't use the result:
...
__atomic_fetch_add (p64, v64, MEMMODEL_RELAXED);
...
we currently emit:
...
atom.add.u64 %r26, [%r25], %r27;
...
Detect the REG_UNUSED reg-note for %r26, and emit instead:
...
atom.add.u64 _, [%r25], %r27;
...
Likewise for all atom insns.
Tested on nvptx.
gcc/ChangeLog:
2022-03-07 Tom de Vries <tdevries@suse.de>
PR target/104815
* config/nvptx/nvptx.cc (nvptx_print_operand): Handle 'x' operand
modifier.
* config/nvptx/nvptx.md: Use %x0 destination operand in atom insns.
gcc/testsuite/ChangeLog:
2022-03-07 Tom de Vries <tdevries@suse.de>
PR target/104815
* gcc.target/nvptx/atomic-bit-bucket-dest.c: New test.
Diffstat (limited to 'gcc/fortran/trans-openmp.cc')
0 files changed, 0 insertions, 0 deletions