Firm Bugtracker - libFirm
Viewing Issue Advanced Details
183 optimisations minor always 2016-10-26 12:24 2017-05-08 16:15
jeffwagner  
 
normal  
new development  
open  
none    
none  
0000183: Optimization "-fcombo" assertion fails
# Report 20161026121343-4

The ir graph was generated by running

    firmsmith --strid 20161026121343-4 --blocksize 1 --seed 13022258058117969998 --graphsize 86

Cparser vesion:

    cparser 1.22.1(4baa2b268899ed76a99d1758582b8bdc72910dea-dirty) using libFirm 1.22(20c9ab7ed2a19e3de4353263bc4431cd31291b1f)

## Error report

The following cparser runs aborted

    cparser ./bugreports/20161026121343-4.ir -O0 -fcombo

The following cparser runs succeeded:

    cparser ./bugreports/20161026121343-4.ir -O0 -fbool
    cparser ./bugreports/20161026121343-4.ir -O0 -fdeconv
    cparser ./bugreports/20161026121343-4.ir -O0 -fframe
    cparser ./bugreports/20161026121343-4.ir -O0 -fgvn-pre
    cparser ./bugreports/20161026121343-4.ir -O0 -fif-conversion
    cparser ./bugreports/20161026121343-4.ir -O0 -finvert-loops
    cparser ./bugreports/20161026121343-4.ir -O0 -fivopts
    cparser ./bugreports/20161026121343-4.ir -O0 -flower-mux
    cparser ./bugreports/20161026121343-4.ir -O0 -fopt-load-store
    cparser ./bugreports/20161026121343-4.ir -O0 -fmemcombine
    cparser ./bugreports/20161026121343-4.ir -O0 -fopt-tail-rec
    cparser ./bugreports/20161026121343-4.ir -O0 -fparallelize-mem
    cparser ./bugreports/20161026121343-4.ir -O0 -fgcse
    cparser ./bugreports/20161026121343-4.ir -O0 -fplace
    cparser ./bugreports/20161026121343-4.ir -O0 -freassociation
    cparser ./bugreports/20161026121343-4.ir -O0 -fscalar-replace
    cparser ./bugreports/20161026121343-4.ir -O0 -fthread-jumps
    cparser ./bugreports/20161026121343-4.ir -O0 -funroll-loops
    cparser ./bugreports/20161026121343-4.ir -O0 -fvrp
    cparser ./bugreports/20161026121343-4.ir -O0 -frts
    cparser ./bugreports/20161026121343-4.ir -O0 -finline
    cparser ./bugreports/20161026121343-4.ir -O0 -fopt-func-call
    cparser ./bugreports/20161026121343-4.ir -O0 -fopt-proc-clone
    cparser ./bugreports/20161026121343-4.ir -O0 -fremove-unused
    cparser ./bugreports/20161026121343-4.ir -O0 -fopt-cc
    cparser ./bugreports/20161026121343-4.ir -O0 -fcse
    cparser ./bugreports/20161026121343-4.ir -O0 -fconst-fold
    cparser ./bugreports/20161026121343-4.ir -O0 -finline-max-size=5
    cparser ./bugreports/20161026121343-4.ir -O0 -finline-threshold=10
    cparser ./bugreports/20161026121343-4.ir -O0 -fconfirm
    cparser ./bugreports/20161026121343-4.ir -O0 -fopt-mul
    cparser ./bugreports/20161026121343-4.ir -O0 -fopt-div
    cparser ./bugreports/20161026121343-4.ir -O0 -fopt-mod
    cparser ./bugreports/20161026121343-4.ir -O0 -falias
    cparser ./bugreports/20161026121343-4.ir -O0 -fstrict-aliasing
    cparser ./bugreports/20161026121343-4.ir -O0 -fclone-threshold=<value>
    cparser ./bugreports/20161026121343-4.ir -O0 -fverify-off
    cparser ./bugreports/20161026121343-4.ir -O0 -fverify-on
    cparser ./bugreports/20161026121343-4.ir -O0 -fdump-ir
    cparser ./bugreports/20161026121343-4.ir -O0 -fdump-all-types
    cparser ./bugreports/20161026121343-4.ir -O0 -fdump-filter=<string>
    cparser ./bugreports/20161026121343-4.ir -O0 -fexpensive-optimizations

### cparser aborts

#### cparser aborted with exit code -6

cparser produced the following data on stderr

    warning: the amd64 backend is highly experimental and unfinished (consider the ia32 backend) [-Wexperimental]
    Assertion failed: (*used < n_blocks), function init_tmp_dom_info, file ir/ana/irdom.c, line 387.

cparser was run with the following options:

    cparser ./bugreports/20161026121343-4.ir -O0 -fcombo

Stacktrace after running for 0.03 seconds

    frame #0: 0x007fff88bad866 `__pthread_kill + 10
    frame 0000001: 0x007fff8ed1b35c `pthread_kill + 92
    frame 0000002: 0x007fff872e0b2e `abort + 125
    frame 0000003: 0x007fff872aa9d3 `__assert_rtn + 321
    frame 0000004: 0x000001000a2920 `init_tmp_dom_info at irdom.c:387 ((ir_node *)block=0x0000000100842910 [node_nr=120, node_opname="Block"], (tmp_dom_info *)parent=0x0000000101000110, (tmp_dom_info *)tdi_list=0x0000000101000110, (int *)used=0x00007fff5fbffa24, (int)n_blocks=1)
    frame 0000005: 0x000001000a2a13 `init_tmp_dom_info at irdom.c:407 ((ir_node *)block=0x000000010083c560 [node_nr=89, node_opname="Block"], (tmp_dom_info *)parent=0x0000000000000000, (tmp_dom_info *)tdi_list=0x0000000101000110, (int *)used=0x00007fff5fbffa24, (int)n_blocks=1)
    frame 0000006: 0x000001000a21e2 `compute_doms at irdom.c:521 ((ir_graph *)irg=0x000000010070f130)
    frame 0000007: 0x00000100149be9 `assure_irg_properties at irgraph.c:588 ((ir_graph *)irg=0x000000010070f130, (ir_graph_properties_t)props=IR_GRAPH_PROPERTY_CONSISTENT_DOMINANCE)
    frame 0000008: 0x000001001b0ec9 `combo at combo.c:3258 ((ir_graph *)irg=0x000000010070f130)
    frame 0000009: 0x0000010003b24a `do_irg_opt at firm_opt.c:441 ((ir_graph *)irg=0x000000010070f130, (const char *)name=0x000000010034b393)
    frame 0000010: 0x00000100039e2e `do_firm_optimizations at firm_opt.c:548 ()
    frame #11: 0x00000100039c2a `optimize_lower_ir_prog at firm_opt.c:765 ()
    frame 0000012: 0x0000010003a715 `generate_code at firm_opt.c:780 ((FILE *)out=0x00007fff76443338, (const char *)input_filename=0x00007fff5fbfff65)
    frame #13: 0x00000100018e18 `do_generate_code at c_driver.c:818 ((FILE *)asm_out=0x00007fff76443338, (compilation_unit_t *)unit=0x0000000100802210)
    frame 0000014: 0x00000100018ec2 `generate_code_intermediate at c_driver.c:846 ((compilation_env_t *)env=0x00007fff5fbffdf8, (compilation_unit_t *)unit=0x0000000100802210)
    frame 0000015: 0x0000010001e142 `process_unit at driver.c:224 ((compilation_env_t *)env=0x00007fff5fbffdf8, (compilation_unit_t *)unit=0x0000000100802210)
    frame 0000016: 0x0000010001e281 `process_all_units at driver.c:250 ((compilation_env_t *)env=0x00007fff5fbffdf8)
    frame 0000017: 0x00000100000de6 `action_compile at main.c:286 ((const char *)argv0=0x00007fff5fbfff20)
    frame 0000018: 0x000001000014e1 `main at main.c:364 ((int)argc=4, (char **)argv=0x00007fff5fbffe80)
    frame 0000019: 0x007fff8ecad5fd `start + 1

zip file icon 20161026121343-4.zip [^] (26,372 bytes) 2016-10-26 12:24
Issue History
2016-10-26 12:24 jeffwagner New Issue
2016-10-26 12:24 jeffwagner File Added: 20161026121343-4.zip
2016-10-26 12:46 zwinkau Note Added: 0000275
2017-05-08 16:15 waldgrasgeniesser Note Added: 0000296

Notes
(0000275)
zwinkau   
2016-10-26 12:46   
I can reproduce it. Thanks! :)

(Note this uses the current libfirm master, not the cparser-submodule revision)
(0000296)
waldgrasgeniesser   
2017-05-08 16:15   
I don't care that you broke your elbow.