Commit c2e1580c by Tom de Vries Committed by Tom de Vries

[lto] Add "could not find mkoffload" error message to lto-wrapper

2018-05-02  Tom de Vries  <tom@codesourcery.com>

	PR lto/85451
	* lto-wrapper.c (compile_offload_image): Add "could not find mkoffload"
	error message.

From-SVN: r259821
parent 01f30ce6
2018-05-02 Tom de Vries <tom@codesourcery.com>
PR lto/85451
* lto-wrapper.c (compile_offload_image): Add "could not find mkoffload"
error message.
2018-05-01 Marc Glisse <marc.glisse@inria.fr> 2018-05-01 Marc Glisse <marc.glisse@inria.fr>
PR tree-optimization/85143 PR tree-optimization/85143
......
...@@ -749,42 +749,44 @@ compile_offload_image (const char *target, const char *compiler_path, ...@@ -749,42 +749,44 @@ compile_offload_image (const char *target, const char *compiler_path,
break; break;
} }
if (compiler) if (!compiler)
{ fatal_error (input_location,
/* Generate temporary output file name. */ "could not find %s in %s (consider using '-B')\n", suffix + 1,
filename = make_temp_file (".target.o"); compiler_path);
struct obstack argv_obstack;
obstack_init (&argv_obstack);
obstack_ptr_grow (&argv_obstack, compiler);
if (save_temps)
obstack_ptr_grow (&argv_obstack, "-save-temps");
if (verbose)
obstack_ptr_grow (&argv_obstack, "-v");
obstack_ptr_grow (&argv_obstack, "-o");
obstack_ptr_grow (&argv_obstack, filename);
/* Append names of input object files. */ /* Generate temporary output file name. */
for (unsigned i = 0; i < in_argc; i++) filename = make_temp_file (".target.o");
obstack_ptr_grow (&argv_obstack, in_argv[i]);
/* Append options from offload_lto sections. */ struct obstack argv_obstack;
append_compiler_options (&argv_obstack, compiler_opts, obstack_init (&argv_obstack);
compiler_opt_count); obstack_ptr_grow (&argv_obstack, compiler);
append_diag_options (&argv_obstack, linker_opts, linker_opt_count); if (save_temps)
obstack_ptr_grow (&argv_obstack, "-save-temps");
if (verbose)
obstack_ptr_grow (&argv_obstack, "-v");
obstack_ptr_grow (&argv_obstack, "-o");
obstack_ptr_grow (&argv_obstack, filename);
/* Append options specified by -foffload last. In case of conflicting /* Append names of input object files. */
options we expect offload compiler to choose the latest. */ for (unsigned i = 0; i < in_argc; i++)
append_offload_options (&argv_obstack, target, compiler_opts, obstack_ptr_grow (&argv_obstack, in_argv[i]);
compiler_opt_count);
append_offload_options (&argv_obstack, target, linker_opts,
linker_opt_count);
obstack_ptr_grow (&argv_obstack, NULL); /* Append options from offload_lto sections. */
argv = XOBFINISH (&argv_obstack, char **); append_compiler_options (&argv_obstack, compiler_opts,
fork_execute (argv[0], argv, true); compiler_opt_count);
obstack_free (&argv_obstack, NULL); append_diag_options (&argv_obstack, linker_opts, linker_opt_count);
}
/* Append options specified by -foffload last. In case of conflicting
options we expect offload compiler to choose the latest. */
append_offload_options (&argv_obstack, target, compiler_opts,
compiler_opt_count);
append_offload_options (&argv_obstack, target, linker_opts,
linker_opt_count);
obstack_ptr_grow (&argv_obstack, NULL);
argv = XOBFINISH (&argv_obstack, char **);
fork_execute (argv[0], argv, true);
obstack_free (&argv_obstack, NULL);
free_array_of_ptrs ((void **) paths, n_paths); free_array_of_ptrs ((void **) paths, n_paths);
return filename; return filename;
......
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