re PR middle-end/56074 (ICE compiling gcc.dg/vect/pr49093.c)

PR middle-end/56074
	* dumpfile.c (dump_loc): Only print loc if LOCATION_LOCUS (loc)
	isn't UNKNOWN_LOCATION nor BUILTINS_LOCATION.
	* tree-vect-loop-manip.c (find_loop_location): Also ignore
	stmt locations where LOCATION_LOCUS of the stmt location is
	UNKNOWN_LOCATION or BUILTINS_LOCATION.

From-SVN: r195382
This commit is contained in:
Jakub Jelinek 2013-01-22 18:03:33 +01:00 committed by Jakub Jelinek
parent 3a984f1011
commit 502498d5b3
3 changed files with 11 additions and 3 deletions

View file

@ -1,5 +1,12 @@
2013-01-22 Jakub Jelinek <jakub@redhat.com>
PR middle-end/56074
* dumpfile.c (dump_loc): Only print loc if LOCATION_LOCUS (loc)
isn't UNKNOWN_LOCATION nor BUILTINS_LOCATION.
* tree-vect-loop-manip.c (find_loop_location): Also ignore
stmt locations where LOCATION_LOCUS of the stmt location is
UNKNOWN_LOCATION or BUILTINS_LOCATION.
PR target/55686
* config/i386/i386.md (UNSPEC_STOS): New.
(strset_singleop, *strsetdi_rex_1, *strsetsi_1, *strsethi_1,

View file

@ -260,7 +260,7 @@ dump_loc (int dump_kind, FILE *dfile, source_location loc)
/* Currently vectorization passes print location information. */
if (dump_kind)
{
if (loc != UNKNOWN_LOCATION)
if (LOCATION_LOCUS (loc) > BUILTINS_LOCATION)
fprintf (dfile, "\n%s:%d: note: ", LOCATION_FILE (loc),
LOCATION_LINE (loc));
else if (current_function_decl)

View file

@ -1357,7 +1357,8 @@ find_loop_location (struct loop *loop)
stmt = get_loop_exit_condition (loop);
if (stmt && gimple_location (stmt) != UNKNOWN_LOC)
if (stmt
&& LOCATION_LOCUS (gimple_location (stmt)) > BUILTINS_LOCATION)
return gimple_location (stmt);
/* If we got here the loop is probably not "well formed",
@ -1371,7 +1372,7 @@ find_loop_location (struct loop *loop)
for (si = gsi_start_bb (bb); !gsi_end_p (si); gsi_next (&si))
{
stmt = gsi_stmt (si);
if (gimple_location (stmt) != UNKNOWN_LOC)
if (LOCATION_LOCUS (gimple_location (stmt)) > BUILTINS_LOCATION)
return gimple_location (stmt);
}