[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 3/4] default-configs: Support o32 ABI with 64-bit MIPS CPUs
From: |
Philippe Mathieu-Daudé |
Subject: |
[PATCH 3/4] default-configs: Support o32 ABI with 64-bit MIPS CPUs |
Date: |
Thu, 19 Nov 2020 17:17:09 +0100 |
MIPS o32 ABI on 64-bit CPUs looks like a ILP32-on-64bit data
model, allowing 64-bit arithmetic and data movement instructions.
This is the default ABI used by the "Sony Linux Toolkit for
Playstation 2".
As we don't know big-endian uses, we only introduce the
little-endian variant.
Inspired-by: Richard Henderson <rth@twiddle.net>
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
Cc: Fredrik Noring <noring@nocrew.org>
Cc: Maciej W. Rozycki <macro@linux-mips.org>
Cc: Jürgen Urban <JuergenUrban@gmx.de>
Cc from https://lists.debian.org/debian-mips/2015/05/msg00014.html:
Cc: Mathieu Malaterre <malat@debian.org>
Cc: James Cowgill <james410@cowgill.org.uk>
Cc: YunQiang Su <wzssyqa@gmail.com>
Cc: David Daney <ddaney.cavm@gmail.com>
---
docs/user/main.rst | 3 +++
default-configs/targets/mips64o32el-linux-user.mak | 7 +++++++
2 files changed, 10 insertions(+)
create mode 100644 default-configs/targets/mips64o32el-linux-user.mak
diff --git a/docs/user/main.rst b/docs/user/main.rst
index 8dfe232a3af..2cef1320ff3 100644
--- a/docs/user/main.rst
+++ b/docs/user/main.rst
@@ -211,6 +211,9 @@ Other binaries
* ``qemu-mipsel`` executes 32-bit little endian MIPS binaries (MIPS O32
ABI).
+ * ``qemu-mips64o32el`` executes 64-bit little endian MIPS binaries (MIPS O32
+ ABI).
+
* ``qemu-mips64`` executes 64-bit big endian MIPS binaries (MIPS N64 ABI).
* ``qemu-mips64el`` executes 64-bit little endian MIPS binaries (MIPS N64
diff --git a/default-configs/targets/mips64o32el-linux-user.mak
b/default-configs/targets/mips64o32el-linux-user.mak
new file mode 100644
index 00000000000..ecd57ff949f
--- /dev/null
+++ b/default-configs/targets/mips64o32el-linux-user.mak
@@ -0,0 +1,7 @@
+TARGET_ARCH=mips64
+TARGET_BASE_ARCH=mips
+TARGET_ABI_MIPSO32=y
+TARGET_ABI32=y
+TARGET_SYSTBL_ABI=o32
+TARGET_SYSTBL=../mips/syscall_o32.tbl
+TARGET_ALIGNED_ONLY=y
--
2.26.2