http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45935

           Summary: Many g++.dg/gomp failures with ICE in
                    expand_omp_taskreg
           Product: gcc
           Version: 4.6.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: middle-end
        AssignedTo: unassig...@gcc.gnu.org
        ReportedBy: da...@gcc.gnu.org


Created attachment 21988
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=21988
sample failing testcase

Running /gnu/gcc/gcc-unpatched/gcc/testsuite/g++.dg/gomp/gomp.exp ...
FAIL: g++.dg/gomp/block-0.C (internal compiler error)
FAIL: g++.dg/gomp/block-0.C (test for excess errors)
FAIL: g++.dg/gomp/block-11.C (internal compiler error)
FAIL: g++.dg/gomp/block-11.C (test for excess errors)
FAIL: g++.dg/gomp/for-12.C (internal compiler error)
FAIL: g++.dg/gomp/for-12.C (test for excess errors)
FAIL: g++.dg/gomp/for-13.C (internal compiler error)
FAIL: g++.dg/gomp/for-13.C (test for excess errors)
FAIL: g++.dg/gomp/for-14.C (internal compiler error)
FAIL: g++.dg/gomp/for-14.C (test for excess errors)
FAIL: g++.dg/gomp/for-15.C (internal compiler error)
FAIL: g++.dg/gomp/for-15.C (test for excess errors)
FAIL: g++.dg/gomp/macro-1.C (internal compiler error)
FAIL: g++.dg/gomp/macro-1.C (test for excess errors)
FAIL: g++.dg/gomp/macro-2.C (internal compiler error)
FAIL: g++.dg/gomp/macro-2.C (test for excess errors)
FAIL: g++.dg/gomp/macro-3.C (internal compiler error)
FAIL: g++.dg/gomp/macro-3.C (test for excess errors)
FAIL: g++.dg/gomp/parallel-1.C (internal compiler error)
FAIL: g++.dg/gomp/parallel-1.C (test for excess errors)
FAIL: g++.dg/gomp/parallel-3.C (internal compiler error)
FAIL: g++.dg/gomp/parallel-3.C (test for excess errors)
FAIL: g++.dg/gomp/pr24849.C (internal compiler error)
FAIL: g++.dg/gomp/pr24849.C (test for excess errors)
FAIL: g++.dg/gomp/pr25874.C (internal compiler error)
FAIL: g++.dg/gomp/pr25874.C (test for excess errors)
FAIL: g++.dg/gomp/pr26611-1.C (internal compiler error)
FAIL: g++.dg/gomp/pr26611-1.C (test for excess errors)
FAIL: g++.dg/gomp/pr26611-2.C (internal compiler error)
FAIL: g++.dg/gomp/pr26611-2.C (test for excess errors)
FAIL: g++.dg/gomp/pr26823-1.C (internal compiler error)
FAIL: g++.dg/gomp/pr26823-1.C (test for excess errors)
FAIL: g++.dg/gomp/pr26823-2.C (internal compiler error)
FAIL: g++.dg/gomp/pr26823-2.C (test for excess errors)
FAIL: g++.dg/gomp/pr26913.C (internal compiler error)
FAIL: g++.dg/gomp/pr26913.C (test for excess errors)
FAIL: g++.dg/gomp/pr27310.C (internal compiler error)
FAIL: g++.dg/gomp/pr27310.C (test for excess errors)
FAIL: g++.dg/gomp/pr27325.C (internal compiler error)
FAIL: g++.dg/gomp/pr27325.C (test for excess errors)
FAIL: g++.dg/gomp/pr27337-1.C (internal compiler error)
FAIL: g++.dg/gomp/pr27337-1.C (test for excess errors)
FAIL: g++.dg/gomp/pr27337-2.C (internal compiler error)
FAIL: g++.dg/gomp/pr27337-2.C (test for excess errors)
FAIL: g++.dg/gomp/pr29965-1.C (internal compiler error)
FAIL: g++.dg/gomp/pr29965-1.C (test for excess errors)
FAIL: g++.dg/gomp/pr29965-10.C (internal compiler error)
FAIL: g++.dg/gomp/pr29965-10.C (test for excess errors)
FAIL: g++.dg/gomp/pr29965-2.C (internal compiler error)
FAIL: g++.dg/gomp/pr29965-2.C (test for excess errors)
FAIL: g++.dg/gomp/pr29965-4.C (internal compiler error)
FAIL: g++.dg/gomp/pr29965-4.C (test for excess errors)
FAIL: g++.dg/gomp/pr29965-5.C (internal compiler error)
FAIL: g++.dg/gomp/pr29965-5.C (test for excess errors)
FAIL: g++.dg/gomp/pr29965-6.C (internal compiler error)
FAIL: g++.dg/gomp/pr29965-6.C (test for excess errors)
FAIL: g++.dg/gomp/pr29965-7.C (internal compiler error)
FAIL: g++.dg/gomp/pr29965-7.C (test for excess errors)
FAIL: g++.dg/gomp/pr29965-8.C (internal compiler error)
FAIL: g++.dg/gomp/pr29965-8.C (test for excess errors)
FAIL: g++.dg/gomp/pr30558.C (internal compiler error)
FAIL: g++.dg/gomp/pr30558.C (test for excess errors)
FAIL: g++.dg/gomp/pr30696.C (internal compiler error)
FAIL: g++.dg/gomp/pr30696.C (test for excess errors)
FAIL: g++.dg/gomp/pr31598.C (internal compiler error)
FAIL: g++.dg/gomp/pr31598.C (test for excess errors)
FAIL: g++.dg/gomp/pr31769.C (internal compiler error)
FAIL: g++.dg/gomp/pr31769.C (test for excess errors)
FAIL: g++.dg/gomp/pr32177.C (internal compiler error)
FAIL: g++.dg/gomp/pr32177.C (test for excess errors)
FAIL: g++.dg/gomp/pr33333.C (internal compiler error)
FAIL: g++.dg/gomp/pr33333.C (test for excess errors)
FAIL: g++.dg/gomp/pr33372-2.C (internal compiler error)
FAIL: g++.dg/gomp/pr33372-2.C (test for excess errors)
FAIL: g++.dg/gomp/pr34608.C (internal compiler error)
FAIL: g++.dg/gomp/pr34608.C (test for excess errors)
FAIL: g++.dg/gomp/pr34694.C (internal compiler error)
FAIL: g++.dg/gomp/pr34694.C  (test for warnings, line 12)
FAIL: g++.dg/gomp/pr34694.C  (test for warnings, line 13)
FAIL: g++.dg/gomp/pr34694.C (test for excess errors)
FAIL: g++.dg/gomp/pr35028.C (internal compiler error)
FAIL: g++.dg/gomp/pr35028.C (test for excess errors)
FAIL: g++.dg/gomp/pr35099.C (internal compiler error)
FAIL: g++.dg/gomp/pr35099.C (test for excess errors)
FAIL: g++.dg/gomp/pr35364.C (internal compiler error)
FAIL: g++.dg/gomp/pr35364.C (test for excess errors)
FAIL: g++.dg/gomp/pr36237.C (internal compiler error)
FAIL: g++.dg/gomp/pr36237.C (test for excess errors)
FAIL: g++.dg/gomp/pr36790.C (internal compiler error)
FAIL: g++.dg/gomp/pr36790.C (test for excess errors)
FAIL: g++.dg/gomp/pr37189.C (internal compiler error)
FAIL: g++.dg/gomp/pr37189.C (test for excess errors)
FAIL: g++.dg/gomp/pr38633.C (internal compiler error)
FAIL: g++.dg/gomp/pr38633.C (test for excess errors)
FAIL: g++.dg/gomp/pr41429.C (test for excess errors)
FAIL: g++.dg/gomp/tpl-for-3.C (internal compiler error)
FAIL: g++.dg/gomp/tpl-for-3.C (test for excess errors)
FAIL: g++.dg/gomp/tpl-parallel-1.C (internal compiler error)
FAIL: g++.dg/gomp/tpl-parallel-1.C (test for excess errors)
Running /gnu/gcc/gcc-unpatched/gcc/testsuite/g++.dg/graphite/graphite.exp ...

I see that HJ's regression tester has also noticed these:
http://gcc.gnu.org/ml/gcc-testresults/2010-10/msg00550.html

(gdb) r

Starting program: /gnu/gcc/obj2/gcc/cc1plus.exe -fpreprocessed block-0.ii
-quiet
 -dumpbase block-0.C -mtune=generic -march=i686 -auxbase-strip block-0.s
-versio
n -fmessage-length=0 -fopenmp -fdump-tree-omplower -o block-0.s
[New thread 920.0x7f4]
[New thread 920.0xaa4]
GNU C++ (GCC) version 4.6.0 20101007 (experimental) (i686-pc-cygwin)
        compiled by GNU C version 4.6.0 20101007 (experimental), GMP version
4.3
.1, MPFR version 2.4.1-p5, MPC version 0.8
GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096
GNU C++ (GCC) version 4.6.0 20101007 (experimental) (i686-pc-cygwin)
        compiled by GNU C version 4.6.0 20101007 (experimental), GMP version
4.3
.1, MPFR version 2.4.1-p5, MPC version 0.8
GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096
Compiler executable checksum: 4cc6845e124b50cb6c6990d595433c0e

Breakpoint 5, 0x006f83b0 in expand_omp_taskreg (region=0x4de2020)
    at /gnu/gcc/gcc-unpatched/gcc/omp-low.c:2070
2070      return n ? (omp_context *) n->value : NULL;
(gdb) bt
#0  0x006f83b0 in expand_omp_taskreg (region=0x4de2020)
    at /gnu/gcc/gcc-unpatched/gcc/omp-low.c:2070
#1  0x006fa6b1 in expand_omp (region=0x4de2020)
    at /gnu/gcc/gcc-unpatched/gcc/omp-low.c:2070
#2  0x7fdb0e10 in ?? ()
#3  0x7fdb07e0 in ?? ()
#4  0x04ddb770 in ?? ()
#5  0x008b572c in next_dom_son (dir=CDI_DOMINATORS, bb=0x7fdb0798)
    at /gnu/gcc/gcc-unpatched/gcc/dominance.c:600
#6  0x006fe68b in build_omp_regions_1 (bb=<value optimized out>, parent=0x1,
    single_tree=<value optimized out>)
    at /gnu/gcc/gcc-unpatched/gcc/omp-low.c:2070
#7  0x00000001 in ?? ()
#8  0x00000000 in ?? ()
(gdb) print *region
$4 = {outer = 0x0, inner = 0x4de2050, next = 0x4de1fc0, entry = 0x7fdb0e10,
  exit = 0x7fdb1098, cont = 0x0, ws_args = 0x7ff53c00,
  type = GIMPLE_OMP_PARALLEL, sched_kind = OMP_CLAUSE_SCHEDULE_STATIC,
  is_combined_parallel = 1 '\001'}
(gdb)

(The apparent bad frames in the stack trace and the incorrect line number
information are just artifacts, I'll need to respin a build with less
optimisation and more debug info to get a better look.)

Reply via email to