[Bug c/106981] [OpenACC][OpenMP] ICE in decompose, at wide-int.h:984 with '#pragma omp/acc atomic capture'

burnus at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Tue Sep 20 16:46:33 GMT 2022


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106981

Tobias Burnus <burnus at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jakub at gcc dot gnu.org
            Summary|[OpenACC] ICE in decompose, |[OpenACC][OpenMP] ICE in
                   |at wide-int.h:984 with      |decompose, at
                   |'#pragma acc atomic         |wide-int.h:984 with
                   |capture'                    |'#pragma omp/acc atomic
                   |                            |capture'
           Keywords|                            |openmp

--- Comment #1 from Tobias Burnus <burnus at gcc dot gnu.org> ---
It actually fails in the same way with "-fopenmp" and 'acc' replaced by 'omp':

long long n = 100;
void test1(int x, double *a, double *b, double *c, double *totals)
{
#pragma omp atomic capture
      c[x] = totals[x%((int)(n/10 + 1))] = (a[x] + b[x]) + totals[x%((int) n/10
+ 1)];
}


I also missed to include the invoking part of the of stacktrace:

...
0x9848a2 c_tree_equal(tree_node*, tree_node*)
        ../../repos/gcc/gcc/c/c-typeck.cc:16197
0x9b3fd9 c_parser_binary_expression
        ../../repos/gcc/gcc/c/c-parser.cc:8085
0x9b40de c_parser_conditional_expression
        ../../repos/gcc/gcc/c/c-parser.cc:7653
0x9b49f6 c_parser_expr_no_commas
        ../../repos/gcc/gcc/c/c-parser.cc:7567
0x9c4189 c_parser_omp_atomic
        ../../repos/gcc/gcc/c/c-parser.cc:18992
0x9d7bcf c_parser_omp_construct
        ../../repos/gcc/gcc/c/c-parser.cc:23309
0x9acb3c c_parser_pragma
        ../../repos/gcc/gcc/c/c-parser.cc:12700
0x9cddff c_parser_compound_statement_nostart
        ../../repos/gcc/gcc/c/c-parser.cc:5800


More information about the Gcc-bugs mailing list