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

--- Comment #4 from Jan Smets <jan.smets at nokia dot com> ---
For the reduced testcase : 

$ mips64-linux-gnuabi64-gcc --version
mips64-linux-gnuabi64-gcc (Ubuntu 6.3.0-12ubuntu2) 6.3.0 20170406

mips64-linux-gnuabi64-gcc -O2 -fno-reorder-blocks -march=mips2 
-fno-inline-small-functions -mabi=32 -c /tmp/test.c -S -dA -dP  -o - 


 # BLOCK 30 freq:1892 seq:27
 # PRED: 36 [100.0%]
$L34:
 #(jump_insn 153 152 198 (set (pc)
 #        (if_then_else (eq (reg:SI 11 $11 [orig:202 prephitmp_65 ] [202])
 #                (const_int 0 [0]))
 #            (label_ref 187)
 #            (pc))) /tmp/test.c:58 472 {*branch_equalitysi}
 #     (int_list:REG_BR_PROB 5000 (nil))
 # -> 187)
    beq $11,$0,$L29  # 153  *branch_equalitysi  [length = 4]
 #(insn 198 153 712 (set (reg/f:SI 16 $16 [282])
 #        (lo_sum:SI (reg/f:SI 16 $16 [283])
 #            (symbol_ref:SI ("badFn") [flags 0x41] <function_decl
0x7f83678858c0 badFn>))) 300 {*lowsi}
 #     (expr_list:REG_EQUAL (symbol_ref:SI ("badFn") [flags 0x41]
<function_decl 0x7f83678858c0 badFn>)
 #        (nil)))
    addiu   $16,$16,%lo(badFn)   # 198  *lowsi  [length = 4]


 # BLOCK 38 freq:945 seq:35
 # PRED: 30 [50.0%]
$L29:
 #(jump_insn 189 188 376 (set (pc)
 #        (if_then_else (ne (reg:SI 9 $9 [orig:203 _67 ] [203])
 #                (const_int 0 [0]))
 #            (label_ref 373)
 #            (pc))) /tmp/test.c:58 472 {*branch_equalitysi}
 #     (int_list:REG_BR_PROB 6446 (nil))
 # -> 373)
    bne $9,$0,$L36   # 189  *branch_equalitysi  [length = 4]
 #(insn/s 376 189 515 (set (reg/f:SI 16 $16 [282])
 #        (lo_sum:SI (reg/f:SI 16 $16 [283])
 #            (symbol_ref:SI ("badFn") [flags 0x41] <function_decl
0x7f83678858c0 badFn>))) 300 {*lowsi}
 #     (expr_list:REG_EQUAL (symbol_ref:SI ("badFn") [flags 0x41]
<function_decl 0x7f83678858c0 badFn>)
 #        (nil)))
    addiu   $16,$16,%lo(badFn)   # 376  *lowsi  [length = 4]


 # BLOCK 71 freq:609 seq:68
 # PRED: 38 [64.5%]
$L36:
$L36:
 #(insn 661 776 377 (set (reg/f:SI 7 $7 [270])
 #        (high:SI (symbol_ref/f:SI ("*$LC0") [flags 0x2] <var_decl
0x7f83678e1bd0 *$LC0>))) /tmp/test.c:58 310 {*movsi_internal}
 #     (expr_list:REG_EQUIV (high:SI (symbol_ref/f:SI ("*$LC0") [flags 0x2]
<var_decl 0x7f83678e1bd0 *$LC0>))
 #        (nil)))
    lui $7,%hi($LC0)     # 661  *movsi_internal/4   [length = 4]
 #(insn 377 661 379 (set (mem:SI (plus:SI (reg/f:SI 29 $sp)
 #                (const_int 16 [0x10])) [0  S4 A32])
 #        (reg/f:SI 16 $16 [282])) /tmp/test.c:58 310 {*movsi_internal}
 #     (nil))
    sw  $16,16($sp)  # 377  *movsi_internal/11  [length = 4]
...

Reply via email to