From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 634 invoked by alias); 25 Mar 2015 21:39:29 -0000 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org Received: (qmail 578 invoked by uid 48); 25 Mar 2015 21:39:24 -0000 From: "manu at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug lto/65536] LTO line number information garbled Date: Wed, 25 Mar 2015 22:04:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: lto X-Bugzilla-Version: 5.0 X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: manu at gcc dot gnu.org X-Bugzilla-Status: NEW X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-SW-Source: 2015-03/txt/msg02867.txt.bz2 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D65536 --- Comment #37 from Manuel L=C3=B3pez-Ib=C3=A1=C3=B1ez --- (In reply to Jan Hubicka from comment #36) > Here we seem to sometimes affect ORDINARY_MAP_NUMBER_OF_COLUMN_BITS of an > existing line map. How that can work? We already have locators that do > depends on the previous COLUMN_BITS value. The condition is checking that this map has more than one line || last_line !=3D ORDINARY_MAP_STARTING_LINE_NUMBER (map) or we have assigned a location_t for a column larger than what we can addre= ss if we reduce the column bits of this map || SOURCE_COLUMN (map, highest) >=3D (1U << column_bits)) If none of those are true, we can reduce the column bits without affecting = an already assigned columns, because the location_t value for those columns is simply the location_t value of the line + column. > I would expect the ORDINARY_MPA_NUMBER_OF_COLUMN_BITS set to be part of t= he > conditional and the computation bellow use map's column_bits. > Also I think the conditoinal guarding creation may want to check how far r > will be bumped and force creation when we are running short of locators. I don't understand. Which conditional? Force creating of what? In fact, when we are running short of locators,=20 || (highest > 0x60000000 && (set->max_column_hint || highest > 0x70000000))) you see that add_map=3Dtrue; then later if (max_column_hint > 100000 || highest > 0x60000000) { /* If the column number is ridiculous or we've allocated a huge number of source_locations, give up on column numbers. */ max_column_hint =3D 0; if (highest > 0x70000000) return 0; column_bits =3D 0;=20 which will give up on column numbers and force creating a new map that does= not track columns (since SOURCE_COLUMN (map, highest) >=3D (1U << column_bits) = will be always true), or if we are really short on source_locations, then give up completely and return UNKNOWN_LOCATION. But now that I think about it. If linemap_star_line returns UNKNOWN_LOCATION because set->highest_location > 0x70000000, but then you call linemap_position_for_column and set->highest_location < 0xC0000000, then linemap_line_start will return 0 again, thus linemap_position_for_column wi= ll return 0 + to_column and that would be bad. Can you follow me? Do you also = see a potential bug there? >>From gcc-bugs-return-481724-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Wed Mar 25 21:40:37 2015 Return-Path: Delivered-To: listarch-gcc-bugs@gcc.gnu.org Received: (qmail 1717 invoked by alias); 25 Mar 2015 21:40:36 -0000 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org Delivered-To: mailing list gcc-bugs@gcc.gnu.org Received: (qmail 1694 invoked by uid 48); 25 Mar 2015 21:40:33 -0000 From: "rainer@emrich-ebersheim.de" To: gcc-bugs@gcc.gnu.org Subject: [Bug target/65573] New: 13908.C:20:33: internal compiler error: in cp_build_addr_expr_1, at cp/typeck.c:5527 Date: Wed, 25 Mar 2015 22:50:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: new X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: target X-Bugzilla-Version: 5.0 X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: rainer@emrich-ebersheim.de X-Bugzilla-Status: UNCONFIRMED X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: bug_id short_desc product version bug_status bug_severity priority component assigned_to reporter Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-SW-Source: 2015-03/txt/msg02868.txt.bz2 Content-length: 3280 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65573 Bug ID: 65573 Summary: 13908.C:20:33: internal compiler error: in cp_build_addr_expr_1, at cp/typeck.c:5527 Product: gcc Version: 5.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: target Assignee: unassigned at gcc dot gnu.org Reporter: rainer@emrich-ebersheim.de Running the g++ testsuite I get the following ICE: Executing on host: /opt/devel/SCRATCH/tmp.5jnZ8G4weh/gcc-5.0.0/gcc-5.0.0/gcc/testsuite/g++/../../xg++ -B/opt/devel/SCRATCH/tmp.5jnZ8G4weh/gcc-5.0.0/gcc-5.0.0/gcc/testsuite/g++/../../ -fno-diagnostics-show-caret -fdiagnostics-color=never -nostdinc++ -I/opt/devel/SCRATCH/tmp.5jnZ8G4weh/gcc-5.0.0/gcc-5.0.0/x86_64-w64-mingw32/libstdc++-v3/include/x86_64-w64-mingw32 -I/opt/devel/SCRATCH/tmp.5jnZ8G4weh/gcc-5.0.0/gcc-5.0.0/x86_64-w64-mingw32/libstdc++-v3/include -I/opt/devel/gnu/src/gcc-mingw-w64/gcc-5.0.0/libstdc++-v3/libsupc++ -I/opt/devel/gnu/src/gcc-mingw-w64/gcc-5.0.0/libstdc++-v3/include/backward -I/opt/devel/gnu/src/gcc-mingw-w64/gcc-5.0.0/libstdc++-v3/testsuite/util -fmessage-length=0 -std=c++98 -pedantic-errors -Wno-long-long -c -o 13908.o /opt/devel/gnu/src/gcc-mingw-w64/gcc-5.0.0/gcc/testsuite/g++.old-deja/g++.benjamin/13908.C (timeout = 300) spawn /opt/devel/SCRATCH/tmp.5jnZ8G4weh/gcc-5.0.0/gcc-5.0.0/gcc/testsuite/g++/../../xg++ -B/opt/devel/SCRATCH/tmp.5jnZ8G4weh/gcc-5.0.0/gcc-5.0.0/gcc/testsuite/g++/../../ -fno-diagnostics-show-caret -fdiagnostics-color=never -nostdinc++ -I/opt/devel/SCRATCH/tmp.5jnZ8G4weh/gcc-5.0.0/gcc-5.0.0/x86_64-w64-mingw32/libstdc++-v3/include/x86_64-w64-mingw32 -I/opt/devel/SCRATCH/tmp.5jnZ8G4weh/gcc-5.0.0/gcc-5.0.0/x86_64-w64-mingw32/libstdc++-v3/include -I/opt/devel/gnu/src/gcc-mingw-w64/gcc-5.0.0/libstdc++-v3/libsupc++ -I/opt/devel/gnu/src/gcc-mingw-w64/gcc-5.0.0/libstdc++-v3/include/backward -I/opt/devel/gnu/src/gcc-mingw-w64/gcc-5.0.0/libstdc++-v3/testsuite/util -fmessage-length=0 -std=c++98 -pedantic-errors -Wno-long-long -c -o 13908.o /opt/devel/gnu/src/gcc-mingw-w64/gcc-5.0.0/gcc/testsuite/g++.old-deja/g++.benjamin/13908.C D:/opt/devel/gnu/src/gcc-mingw-w64/gcc-5.0.0/gcc/testsuite/g++.old-deja/g++.benjamin/13908.C: In function 'void bar(chile*, pmf)': D:/opt/devel/gnu/src/gcc-mingw-w64/gcc-5.0.0/gcc/testsuite/g++.old-deja/g++.benjamin/13908.C:20:33: internal compiler error: in cp_build_addr_expr_1, at cp/typeck.c:5527 libbacktrace could not find executable to open Please submit a full bug report, with preprocessed source if appropriate. See for instructions. compiler exited with status 1 output is: D:/opt/devel/gnu/src/gcc-mingw-w64/gcc-5.0.0/gcc/testsuite/g++.old-deja/g++.benjamin/13908.C: In function 'void bar(chile*, pmf)': D:/opt/devel/gnu/src/gcc-mingw-w64/gcc-5.0.0/gcc/testsuite/g++.old-deja/g++.benjamin/13908.C:20:33: internal compiler error: in cp_build_addr_expr_1, at cp/typeck.c:5527 libbacktrace could not find executable to open Please submit a full bug report, with preprocessed source if appropriate. See for instructions. FAIL: g++.old-deja/g++.benjamin/13908.C -std=c++98 (internal compiler error)