------- Comment #4 from ubizjak at gmail dot com  2008-01-14 12:59 -------
(In reply to comment #3)
> This testcase never worked.

It works when -g is added to compile flags.

The problem is, that final pass calls dwarf2out_switch_text_section() for
NOTE_INSN_SWITCH_TEXT_SECTIONS only when debug hooks are actually initialized.
When "-g" is added, everything works as expected, since
dwarf2out_switch_text_section() is now active and we get:

.LSFDE2:
        .long   .LEFDE2-.LASFDE2
.LASFDE2:
        .long   .Lframe0
        .quad   .LFB15
        .quad   .LHOTB1
        .quad   .LHOTE1-.LHOTB1
        .quad   .LCOLDB1
        .quad   .LCOLDE1-.LCOLDB1
        .align 8
.LEFDE2:

instead of:

.LASFDE3:
        .long   .LASFDE3-.Lframe1
        .long   .LFB15
        .long   .LFE15-.LFB15
        .uleb128 0x0
        .align 8
.LEFDE3:

BTW: I also think that -freorder-blocks-and-partition should enable
flag_inhibit_size_directive, since .size is not correct with -fr-b-a-p.

I'm not an expert on this area, so perhaps original authors would like to fix
this issue?


-- 

ubizjak at gmail dot com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |ctice at apple dot com
            Summary|FAIL: gcc.dg/tree-prof/bb-  |[4.3 Regression] FAIL:
                   |reorg.c compilation,  -     |gcc.dg/tree-prof/bb-reorg.c
                   |fprofile-use -D_PROFILE_USE |compilation,  -fprofile-use
                   |                            |-D_PROFILE_USE


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34249

Reply via email to