https://gcc.gnu.org/bugzilla/show_bug.cgi?id=122686
--- Comment #15 from Haochen Jiang <haochen.jiang at intel dot com> ---
After the patch, it stuck at here:
;; Generating RTL for gimple basic block 17
Swap operands in stmt:
ivtmp.896_2513 = _2615 + _2616;
Cost left opnd=0, right opnd=1
Registering value_relation (_2546 pe64 _139) (bb10) at _2546 = (unsigned long)
_139;
;; ivtmp.896_2513 = _2616 + _2615;
(insn 411 410 412 (parallel [
(set (reg:DI 1333 [ _2616 ])
(ashift:DI (reg:DI 1224 [ ivtmp.906 ])
(const_int 2 [0x2])))
(clobber (reg:CC 17 flags))
]) -1
(nil))
(insn 412 411 0 (parallel [
(set (reg:DI 1204 [ ivtmp.896 ])
(plus:DI (reg:DI 1333 [ _2616 ])
(reg:DI 1236 [ _2615 ])))
(clobber (reg:CC 17 flags))
]) -1
(nil))
;; _2524 = (int) _2523;
(insn 413 412 0 (parallel [
(set (reg:SI 1207 [ _2524 ])
(plus:SI (reg:SI 115 [ _18
Before the patch:
;; Generating RTL for gimple basic block 17
;;
(code_label 409 407 410 95 (nil) [0 uses])
(note 410 409 0 NOTE_INSN_BASIC_BLOCK)
;; if (_18 < _19)
(insn 411 410 412 (set (reg:CCGC 17 flags)
(compare:CCGC (reg:SI 115 [ _18 ])
(reg:SI 116 [ _19 ]))) "module_polarfft.fppized.f90":388:13 discrim
1 -1
(nil))
(jump_insn 412 411 0 (set (pc)
(if_then_else (ge (reg:CCGC 17 flags)
(const_int 0 [0]))
(label_ref 0)
(pc))) "module_polarfft.fppized.f90":388:13 discrim 1 -1
(int_list:REG_BR_PROB 955630225 (nil)))