Hi! On various targets, %s in fprintf can't handle NULL arguments, and even when edge->call_stmt is non-NULL, it still might have UNKNOWN_LOCATION or BUILTINS_LOCATION, which have NULL filename. In this particular case it is a fnsplit created call.
Fixed thusly, bootstrapped/regtested on x86_64-linux and i686-linux, ok for trunk? 2015-01-26 Jakub Jelinek <ja...@redhat.com> PR ipa/64730 * ipa-inline.c (inline_small_functions): Print "unknown" even if edge->call_stmt is non-NULL, but has builtins or unknown location. --- gcc/ipa-inline.c.jj 2015-01-22 21:45:18.000000000 +0100 +++ gcc/ipa-inline.c 2015-01-26 15:41:57.193640527 +0100 @@ -1822,6 +1822,9 @@ inline_small_functions (void) " Estimated badness is %f, frequency %.2f.\n", edge->caller->name (), edge->caller->order, edge->call_stmt + && (LOCATION_LOCUS (gimple_location ((const_gimple) + edge->call_stmt)) + > BUILTINS_LOCATION) ? gimple_filename ((const_gimple) edge->call_stmt) : "unknown", edge->call_stmt Jakub