This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c++/13871] New: g++ creates excessive amounts of NOTE_INSN_DELETED insns
- From: "dann at godzilla dot ics dot uci dot edu" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 26 Jan 2004 21:12:11 -0000
- Subject: [Bug c++/13871] New: g++ creates excessive amounts of NOTE_INSN_DELETED insns
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
Using the testcase in PR8361
gcc from CVS HEAD
x86-linux
g++ -O2 -fno-inline generate-3.4.ii -dr
count the total number of insns in the .01.rtl dump:
grep -c "^(" generate-3.4.ii.01.rtl
138865
count the number of NOTE_INSN_DELETED insns:
grep -c "^(note.*DELETED" generate-3.4.ii.01.rtl
36070
So 25% of the total number of insns created are NOTE_INSN_DELETED.
Another data point, compare the RTL generated by gcc and g++ for the same
preprocessed file: combine.i
Total number of insns in the .01.rtl dump:
gcc:33014
g++:42638
Total number of NOTE_INSN_DELETED insns in the .01.rtl dump:
gcc:1966
g++:9799
These NOTE_INSN_DELETED insns are deleted later in the compilation process, but
they create extra garbage to be collected, and affect the spatial locality of
insns.
--
Summary: g++ creates excessive amounts of NOTE_INSN_DELETED insns
Product: gcc
Version: 3.4.0
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: dann at godzilla dot ics dot uci dot edu
CC: gcc-bugs at gcc dot gnu dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=13871