Hi! On Thu, 8 Jan 2015 07:02:19 -0800, "H.J. Lu" wrote: > On Thu, Jan 8, 2015 at 6:59 AM, Thomas Schwinge wrote: > > commit c049b358f961f72d0c0cf61a707e9a5855b12b28 > > Author: tschwinge > > Date: Thu Jan 8 14:58:45 2015 +0000 > > > > intelmic-mkoffload: Deal with linker defaulting to 32-bit x86 mode. > > > > ... which explicitly has to be switched into 64-bit x86_64 mode. > > > > gcc/ > > * config/i386/intelmic-mkoffload.c (compile_for_target): Always > > add "-m32" or "-m64" to argv_obstack. > > (generate_host_descr_file): Likewise, when invoking host_compiler. > > (main): Always add "-m elf_i386" or "-m elf_x86_64" when invoking > > ld. > > > > git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219345 138bc75d-0d04-0410-961f-82ee72b054a4 > > --- gcc/config/i386/intelmic-mkoffload.c > > +++ gcc/config/i386/intelmic-mkoffload.c > > @@ -191,6 +191,8 @@ compile_for_target (struct obstack *argv_obstack) > > { > > if (target_ilp32) > > obstack_ptr_grow (argv_obstack, "-m32"); > > + else > > + obstack_ptr_grow (argv_obstack, "-m64"); > > obstack_ptr_grow (argv_obstack, NULL); > > char **argv = XOBFINISH (argv_obstack, char **); > > > > @@ -355,6 +357,8 @@ generate_host_descr_file (const char *host_compiler) > > new_argv[new_argc++] = "-shared"; > > if (target_ilp32) > > new_argv[new_argc++] = "-m32"; > > + else > > + new_argv[new_argc++] = "-m64"; > > new_argv[new_argc++] = src_filename; > > new_argv[new_argc++] = "-o"; > > new_argv[new_argc++] = obj_filename; > > @@ -511,11 +515,11 @@ main (int argc, char **argv) > > unsigned new_argc = 0; > > const char *new_argv[9]; > > new_argv[new_argc++] = "ld"; > > + new_argv[new_argc++] = "-m"; > > if (target_ilp32) > > - { > > - new_argv[new_argc++] = "-m"; > > - new_argv[new_argc++] = "elf_i386"; > > - } > > + new_argv[new_argc++] = "elf_i386"; > > + else > > + new_argv[new_argc++] = "elf_x86_64"; > > new_argv[new_argc++] = "--relocatable"; > > new_argv[new_argc++] = host_descr_filename; > > new_argv[new_argc++] = target_so_filename; > > > > > > Should we also handle x32? Yes, probably, but following the standards you've been setting, , I only made it work for the case I've been interested in. ;-) (Half-smiley, half-serious...) Grüße, Thomas