This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH][RFC][Offloading] Fix PR68463


On Sat, Feb 20, 2016 at 01:54:20PM +0300, Ilya Verbin wrote:
> gcc/
> 	PR driver/68463
> 	* config/gnu-user.h (GNU_USER_TARGET_STARTFILE_SPEC): Add
> 	crtoffloadbegin.o for -fopenacc/-fopenmp if it exists.
> 	(GNU_USER_TARGET_ENDFILE_SPEC): Add crtoffloadend.o for
> 	-fopenacc/-fopenmp if it exists.
> 	* lto-wrapper.c (offloadbegin, offloadend): Remove static vars.
> 	(offload_objects_file_name): New static var.
> 	(tool_cleanup): Remove offload_objects_file_name file.
> 	(find_offloadbeginend): Replace with ...
> 	(find_crtoffloadtable): ... this.
> 	(run_gcc): Remove offload_argc and offload_argv.
> 	Get offload_objects_file_name from -foffload-objects=... option.
> 	Read names of object files with offload from this file, pass them to
> 	compile_images_for_offload_targets.  Don't call find_offloadbeginend and
> 	don't pass offloadbegin and offloadend to the linker.  Don't pass
> 	offload non-LTO files to the linker, because now they're not claimed.
> libgcc/
> 	PR driver/68463
> 	* Makefile.in (crtoffloadtable$(objext)): New rule.
> 	* configure.ac (extra_parts): Add crtoffloadtable$(objext) if
> 	enable_offload_targets is not empty.
> 	* configure: Regenerate.
> 	* offloadstuff.c: Move __OFFLOAD_TABLE__ from crtoffloadend to
> 	crtoffloadtable.
> lto-plugin/
> 	PR driver/68463
> 	* lto-plugin.c (struct plugin_offload_file): New.
> 	(offload_files): Change type.
> 	(offload_files_last, offload_files_last_obj): New.
> 	(offload_files_last_lto): New.
> 	(free_2): Adjust accordingly.
> 	(all_symbols_read_handler): Don't add offload files to lto_arg_ptr.
> 	Don't call free_1 for offload_files.  Write names of object files with
> 	offloading to the temporary file.  Add new option to lto_arg_ptr.
> 	(claim_file_handler): Don't claim file if it contains offload sections
> 	without LTO sections.  If it contains offload sections, add to the list.

LGTM.

	Jakub


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]