diff options
author | Tom de Vries <tdevries@suse.de> | 2019-01-12 10:27:12 +0000 |
---|---|---|
committer | Tom de Vries <vries@gcc.gnu.org> | 2019-01-12 10:27:12 +0000 |
commit | 980af7cd8fb385f9bb818e29d08fe4af73cd2788 (patch) | |
tree | 68afdb459fee5d022c8ae35662e2aa2409f293d1 /gcc/fortran/trans-array.h | |
parent | 46dedae6a8ea4a034761910b38f3f510dfa547b9 (diff) | |
download | gcc-980af7cd8fb385f9bb818e29d08fe4af73cd2788.zip gcc-980af7cd8fb385f9bb818e29d08fe4af73cd2788.tar.gz gcc-980af7cd8fb385f9bb818e29d08fe4af73cd2788.tar.bz2 |
[nvptx] Verify dimension limits after applying defaults
There's a problem in oacc_validate_dims that when f.i. the worker dimension
is set using -fopenacc-dim=:32, and the vector_length is set using a
"vector_length (128)" clause, the compiler combines, accepts and emits the
values, while the combination of the two is invalid.
The reason for this is that while oacc_validate_dims validates the dimensions
using targetm.goacc.validate_dims before applying default or minimum values,
it does not do so afterwards.
Work around this in the nvptx port by applying the defaults from
oacc_default_dims at the end of nvptx_goacc_validate_dims_1, as
oacc_validate_dims would do it, and then apply the dimensions limits.
2019-01-12 Tom de Vries <tdevries@suse.de>
PR middle-end/88703
* config/nvptx/nvptx.c (nvptx_goacc_validate_dims_1): Apply defaults
from oacc_default_dims, as oacc_validate_dims would do it, and apply
dimensions limits.
From-SVN: r267877
Diffstat (limited to 'gcc/fortran/trans-array.h')
0 files changed, 0 insertions, 0 deletions