+2002-10-09 Richard Shann <richard.shann@superh.com>
+ Stephen Clarke <stephen.clarke@superh.com>
+
+ * config/tc-sh64.c (sh64_target_format): Add support for sh64
+ Linux environment.
+
2002-10-03 Kaz Kojima <kkojima@rr.iij4u.or.jp>
* contig/tc-sh.c (sh_local_pcrel): New.
const char *
sh64_target_format ()
{
-#ifdef TE_LINUX
- return "FIXME: No linux target yet";
-#endif
-
#ifdef TE_NetBSD
/* For NetBSD, if the ISA is unspecified, always use SHmedia. */
if (sh64_isa_mode == sh64_isa_unspecified)
}
#endif
+#ifdef TE_LINUX
+ if (sh64_isa_mode == sh64_isa_unspecified)
+ sh64_isa_mode = sh64_isa_shmedia;
+
+ if (sh64_abi == sh64_abi_unspecified)
+ sh64_abi = sh64_abi_32;
+#endif
+
if (sh64_abi == sh64_abi_64 && sh64_isa_mode == sh64_isa_unspecified)
sh64_isa_mode = sh64_isa_shmedia;
return (target_big_endian ? "elf64-sh64-nbsd" : "elf64-sh64l-nbsd");
else
return (target_big_endian ? "elf32-sh64-nbsd" : "elf32-sh64l-nbsd");
+#elif defined (TE_LINUX)
+ if (sh64_abi == sh64_abi_64)
+ return (target_big_endian ? "elf64-sh64big-linux" : "elf64-sh64-linux");
+ else
+ return (target_big_endian ? "elf32-sh64big-linux" : "elf32-sh64-linux");
#else
/* When the ISA is not one of SHmedia or SHcompact, use the old SH
object format. */