Commit 5e5a425e by Richard Guenther Committed by Richard Biener

re PR lto/48467 ([LTO] Anomalous behavior of -save-temps)

2011-04-08  Richard Guenther  <rguenther@suse.de>

	PR lto/48467
	* toplev.c (lang_dependent_init): Do not open asm_out_file
	in WPA mode, nor perform debug machinery initialization.
	(finalize): Do not unlink asm_out_file in WPA mode.

From-SVN: r172181
parent 9bfc434b
2011-04-08 Richard Guenther <rguenther@suse.de> 2011-04-08 Richard Guenther <rguenther@suse.de>
PR lto/48467
* toplev.c (lang_dependent_init): Do not open asm_out_file
in WPA mode, nor perform debug machinery initialization.
(finalize): Do not unlink asm_out_file in WPA mode.
2011-04-08 Richard Guenther <rguenther@suse.de>
* gimple.h (gimple_call_fntype): New function. * gimple.h (gimple_call_fntype): New function.
(gimple_call_return_type): Use it. (gimple_call_return_type): Use it.
* expr.c (expand_expr_real_1): Use gimple_call_fntype. * expr.c (expand_expr_real_1): Use gimple_call_fntype.
......
...@@ -1743,11 +1743,14 @@ lang_dependent_init (const char *name) ...@@ -1743,11 +1743,14 @@ lang_dependent_init (const char *name)
return 0; return 0;
input_location = save_loc; input_location = save_loc;
init_asm_output (name); if (!flag_wpa)
{
init_asm_output (name);
/* If stack usage information is desired, open the output file. */ /* If stack usage information is desired, open the output file. */
if (flag_stack_usage) if (flag_stack_usage)
stack_usage_file = open_auxiliary_file ("su"); stack_usage_file = open_auxiliary_file ("su");
}
/* This creates various _DECL nodes, so needs to be called after the /* This creates various _DECL nodes, so needs to be called after the
front end is initialized. */ front end is initialized. */
...@@ -1756,20 +1759,23 @@ lang_dependent_init (const char *name) ...@@ -1756,20 +1759,23 @@ lang_dependent_init (const char *name)
/* Do the target-specific parts of the initialization. */ /* Do the target-specific parts of the initialization. */
lang_dependent_init_target (); lang_dependent_init_target ();
/* If dbx symbol table desired, initialize writing it and output the if (!flag_wpa)
predefined types. */ {
timevar_push (TV_SYMOUT); /* If dbx symbol table desired, initialize writing it and output the
predefined types. */
timevar_push (TV_SYMOUT);
#if defined DWARF2_DEBUGGING_INFO || defined DWARF2_UNWIND_INFO #if defined DWARF2_DEBUGGING_INFO || defined DWARF2_UNWIND_INFO
if (dwarf2out_do_frame ()) if (dwarf2out_do_frame ())
dwarf2out_frame_init (); dwarf2out_frame_init ();
#endif #endif
/* Now we have the correct original filename, we can initialize /* Now we have the correct original filename, we can initialize
debug output. */ debug output. */
(*debug_hooks->init) (name); (*debug_hooks->init) (name);
timevar_pop (TV_SYMOUT); timevar_pop (TV_SYMOUT);
}
return 1; return 1;
} }
...@@ -1848,8 +1854,6 @@ finalize (bool no_backend) ...@@ -1848,8 +1854,6 @@ finalize (bool no_backend)
fatal_error ("error writing to %s: %m", asm_file_name); fatal_error ("error writing to %s: %m", asm_file_name);
if (fclose (asm_out_file) != 0) if (fclose (asm_out_file) != 0)
fatal_error ("error closing %s: %m", asm_file_name); fatal_error ("error closing %s: %m", asm_file_name);
if (flag_wpa)
unlink_if_ordinary (asm_file_name);
} }
if (stack_usage_file) if (stack_usage_file)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment