profile-directed block ordering

bmetzger@onebox.com bmetzger@onebox.com
Thu Mar 6 22:42:00 GMT 2003


I am having some problems getting profile-directed block ordering to work. After compiling ( a portion of ) my application with -fprofile-arcs and producing the data files, when I attempt to then compile the application with -fbranch-probabilities, I see the following warning printed for each file:

warning: .da file contents not exhausted

The message is attributed either to the file being processed, or to an stl file that that file uses.

After some number of files are processed, one of them fails with the following:

Filter.cc:450: internal error--unrecognizable insn:
(jump_insn 13 12 15 (set (pc)
        (if_then_else (ne (cc0)
                (const_int 10000))
            (label_ref 22)
            (pc))) -1 (nil)
    (expr_list:REG_BR_PROB (const_int 10000)
        (nil)))
./../gcc/toplev.c:1367: Internal compiler error in function fatal_insn
make: *** [Filter.o] Error 1

The compilation line is as follows:

g++  -c  -O2 -fbranch-probabilities -felide-constructors
-fnonnull-objects -mpentiumpro   -Woverloaded-virtual -Wpointer-arith
-Wbad-function-cast -Wcast-align -Wwrite-strings -Wnested-externs
 -Wconversion -fguiding-decls -fno-rtti -fno-exceptions -DOS_LINUX2 
-DHAVE_GMTOFF -DHAVE_FLOCK -DHAVE_DEVRANDOM -DHAVE_STRSEP
Filter.cc

I looked at the archives for this list and found a reference to the first problem, but no indication of a solution. Any help would be greatly appreciated.

Thanks,

-- 
Brian Metzger
bmetzger@onebox.com - email
(408)-265-0249



More information about the Gcc-help mailing list