This is the mail archive of the gcc-patches@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]

Re: [patch] Update loops in cfg manipulation functions



I think your patch may have introduced several regressions in mainline. With revision @118934, I'm getting many instances of:

FAIL: gcc.c-torture/execute/20031204-1.c compilation, -O3 -fomit-frame-pointer -funroll-loops (internal compiler error)

All the failures trigger the CFG verifier in:

121               error ("verify_flow_info: Block %i has loop_father, but there are no loops",
(gdb) list 121
116           edge e;
117           edge_iterator ei;
118
119           if (bb->loop_father != NULL && current_loops == NULL)
120             {
121               error ("verify_flow_info: Block %i has loop_father, but there are no loops",
122                      bb->index);
123               err = 1;
124             }
125           if (bb->loop_father == NULL && current_loops != NULL)
(gdb) ptbb bb
;; basic block 2, loop depth 0, count 0
;; prev block 0, next block 1
;; pred:       ENTRY [100.0%]  (fallthru)
;; succ:
;; Registers live at start:  (nil)
(note 10 8 12 2 [bb 2] NOTE_INSN_BASIC_BLOCK)
(insn 12 10 13 2 (set (reg:SI 5 di)
       (const_int 0 [0x0])) 40 {*movsi_1} (nil)
   (nil))
(call_insn 13 12 14 2 (call (mem:QI (symbol_ref:DI ("exit") [flags 0x41] <function_decl 0x2aaaaab73000 exit>) [0 S1 A8])
       (const_int 0 [0x0])) 553 {*call_0} (nil)
   (expr_list:REG_NORETURN (const_int 0 [0x0])
       (expr_list:REG_EH_REGION (const_int 0 [0x0])
           (nil)))
   (expr_list:REG_DEP_TRUE (use (reg:SI 5 di))
       (nil)))
;; Registers live at end:  (nil)



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