This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug tree-optimization/70043] New: [6 Regression] The compiler hangs in a fortran test-case with -Ofast -g -march=haswell


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

            Bug ID: 70043
           Summary: [6 Regression] The compiler hangs in a fortran
                    test-case with -Ofast -g -march=haswell
           Product: gcc
           Version: 6.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: tree-optimization
          Assignee: unassigned at gcc dot gnu.org
          Reporter: marxin at gcc dot gnu.org
  Target Milestone: ---

Following test-case does not finish w/ following options:

$ cat s.f90 
subroutine fn1(a, b)
  real(8), intent(in) ::  b(100)
  real(8), intent(inout) :: a(100)
  real(8) c
  do i=0,100
     if( a(i) < 0.0 ) then
        c =  a(i) * b(i)
        a(i) = a(i) - c / b(i)
     endif
  enddo
end subroutine fn1

$ ./gcc/xgcc -Bgcc s.f90 -c -Ofast -march=haswell -g

It hangs in:
0  optimize_mask_stores (loop=0x7ffff6a4a620) at
../../gcc/tree-vect-loop.c:7079
#1  0x0000000001059005 in vectorize_loops () at ../../gcc/tree-vectorizer.c:618
#2  0x0000000000f426de in (anonymous namespace)::pass_vectorize::execute
(this=0x23fbe50, fun=0x7ffff6a4bdc8) at ../../gcc/tree-ssa-loop.c:414
#3  0x0000000000cb4a6a in execute_one_pass (pass=0x23fbe50) at
../../gcc/passes.c:2336
#4  0x0000000000cb4d72 in execute_pass_list_1 (pass=0x23fbe50) at
../../gcc/passes.c:2410
#5  0x0000000000cb4da3 in execute_pass_list_1 (pass=0x23fb6c0) at
../../gcc/passes.c:2411
#6  0x0000000000cb4da3 in execute_pass_list_1 (pass=0x23fa520) at
../../gcc/passes.c:2411
#7  0x0000000000cb4dfb in execute_pass_list (fn=0x7ffff6a4bdc8, pass=0x23fa3a0)
at ../../gcc/passes.c:2421
#8  0x000000000092c842 in cgraph_node::expand (this=0x7ffff68bb450) at
../../gcc/cgraphunit.c:1980
#9  0x000000000092ce78 in expand_all_functions () at
../../gcc/cgraphunit.c:2116
#10 0x000000000092d991 in symbol_table::compile (this=0x7ffff688a0a8) at
../../gcc/cgraphunit.c:2472
#11 0x000000000092dbc2 in symbol_table::finalize_compilation_unit
(this=0x7ffff688a0a8) at ../../gcc/cgraphunit.c:2562
#12 0x0000000000d79ea1 in compile_file () at ../../gcc/toplev.c:490
#13 0x0000000000d7c3c1 in do_compile () at ../../gcc/toplev.c:1988
#14 0x0000000000d7c646 in toplev::main (this=0x7fffffffdae0, argc=14,
argv=0x7fffffffdbe8) at ../../gcc/toplev.c:2096
#15 0x000000000072fc57 in main (argc=14, argv=0x7fffffffdbe8) at
../../gcc/main.c:39

I've already prepared a patch (pre-approved by Richi) that I've been testing.

Martin

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]