• R/O
  • HTTP
  • SSH
  • HTTPS

コミット

タグ
未設定

よく使われているワード(クリックで追加)

javac++androidlinuxc#windowsobjective-ccocoa誰得qtpythonphprubygameguibathyscaphec計画中(planning stage)翻訳omegatframeworktwitterdomtestvb.netdirectxゲームエンジンbtronarduinopreviewer

Bintuils with patches for Dreamcast


コミットメタ情報

リビジョン99f1341ee342d8c8dc2bff53ff2cc9ba03bcccda (tree)
日時2021-09-30 03:31:09
作者alaskanemily <emily@alas...>
コミッターalaskanemily

ログメッセージ

Add Dreamcast target as sh*-dc

This target will only build the little-endian ELF targets.

変更サマリ

差分

--- a/bfd/config.bfd
+++ b/bfd/config.bfd
@@ -1237,6 +1237,11 @@ case "${targ}" in
12371237 targ_selvecs="sh_elf32_nbsd_le_vec sh_coff_vec sh_coff_le_vec"
12381238 ;;
12391239
1240+ sh*-*-dc*)
1241+ targ_defvec=sh_elf32_le_vec
1242+ targ_underscore=yes
1243+ ;;
1244+
12401245 shl*-*-elf* | sh[1234]l*-*-elf* | sh3el*-*-elf* | shl*-*-kaos*)
12411246 targ_defvec=sh_elf32_le_vec
12421247 targ_selvecs="sh_elf32_vec sh_coff_le_vec sh_coff_vec sh_coff_small_le_vec sh_coff_small_vec"
--- a/config.sub
+++ b/config.sub
@@ -1726,7 +1726,7 @@ case $os in
17261726 | os2* | vos* | palmos* | uclinux* | nucleus* | morphos* \
17271727 | scout* | superux* | sysv* | rtmk* | tpf* | windiss* \
17281728 | powermax* | dnix* | nx6 | nx7 | sei* | dragonfly* \
1729- | skyos* | haiku* | rdos* | toppers* | drops* | es* \
1729+ | skyos* | haiku* | rdos* | toppers* | drops* | es* | dc* \
17301730 | onefs* | tirtos* | phoenix* | fuchsia* | redox* | bme* \
17311731 | midnightbsd* | amdhsa* | unleashed* | emscripten* | wasi* \
17321732 | nsk* | powerunix* | genode* | zvmoe* | qnx* | emx*)
--- /dev/null
+++ b/gas/config/te-dc.h
@@ -0,0 +1,30 @@
1+/*
2+ * Binutils config for Dreamcast.
3+ *
4+ * This software is provided 'as-is', without any express or implied
5+ * warranty. In no event will the authors be held liable for any damages
6+ * arising from the use of this software.
7+ *
8+ * Permission is granted to anyone to use this software for any purpose,
9+ * including commercial applications, and to alter it and redistribute it
10+ * freely, subject to the following restrictions:
11+ *
12+ * 1. The origin of this software must not be misrepresented; you must not
13+ * claim that you wrote the original software. If you use this software
14+ * in a product, an acknowledgment in the product documentation would be
15+ * appreciated but is not required.
16+ * 2. Altered source versions must be plainly marked as such, and must not be
17+ * misrepresented as being the original software.
18+ * 3. This notice may not be removed or altered from any source distribution.
19+ */
20+
21+#define TE_DC
22+
23+#define LOCAL_LABELS_DOLLAR 1
24+
25+#ifdef OBJ_HEADER
26+#include OBJ_HEADER
27+#else
28+#include "obj-format.h"
29+#endif
30+
--- a/gas/configure.tgt
+++ b/gas/configure.tgt
@@ -379,6 +379,7 @@ case ${generic_target} in
379379 sh*l*) endian=little ;;
380380 *) endian=big ;;
381381 esac ;;
382+ sh*-*-dc*) fmt=elf endian=little em=dc ;;
382383 sh-*-elf*) fmt=elf ;;
383384 sh-*-uclinux* | sh[12]-*-uclinux*) fmt=elf em=uclinux ;;
384385 sh-*-coff*) fmt=coff ;;
--- a/ld/configure.tgt
+++ b/ld/configure.tgt
@@ -802,6 +802,10 @@ s390-*-linux*) targ_emul=elf_s390
802802 score-*-elf) targ_emul=score7_elf
803803 targ_extra_emuls=score3_elf
804804 ;;
805+sh*-*-dc*)
806+ targ_emul=shlelf
807+ targ_extra_emuls="shl"
808+ ;;
805809 sh-*-linux*) targ_emul=shlelf_linux
806810 targ_extra_emuls="shelf_linux shlelf_fd shelf_fd"
807811 targ_extra_libpath=shelf_linux