From 2a571cc0ece4073eb56d5ccfc3e061a09a353e13 Mon Sep 17 00:00:00 2001 From: Richard Miller Date: Mon, 9 Nov 2020 11:33:44 +0000 Subject: Add riscv and riscv64 support to libmach --- utils/include/a.out.h | 4 +++- utils/include/mach.h | 12 ++++++++++++ 2 files changed, 15 insertions(+), 1 deletion(-) (limited to 'utils/include') diff --git a/utils/include/a.out.h b/utils/include/a.out.h index 86c7d061..915cdaae 100644 --- a/utils/include/a.out.h +++ b/utils/include/a.out.h @@ -31,9 +31,11 @@ struct Exec #define S_MAGIC _MAGIC(HDR_MAGIC, 26) /* amd64 */ #define T_MAGIC _MAGIC(HDR_MAGIC, 27) /* powerpc64 */ #define R_MAGIC _MAGIC(HDR_MAGIC, 28) /* arm64 */ +#define Z_MAGIC _MAGIC(0, 29) /* riscv */ +#define Y_MAGIC _MAGIC(0, 30) /* riscv64 */ #define MIN_MAGIC 8 -#define MAX_MAGIC 28 /* <= 90 */ +#define MAX_MAGIC 30 /* <= 90 */ #define DYN_MAGIC 0x80000000 /* dlm */ diff --git a/utils/include/mach.h b/utils/include/mach.h index 1c8d7a83..25e89279 100644 --- a/utils/include/mach.h +++ b/utils/include/mach.h @@ -16,6 +16,8 @@ * powerpc, * powerpc64 * arm64 + * riscv + * riscv64 */ enum { @@ -36,6 +38,8 @@ enum MAMD64, MPOWER64, MARM64, + MRISCV, + MRISCV64, /* types of executables */ FNONE = 0, /* unidentified */ FMIPS, /* v.out */ @@ -67,6 +71,10 @@ enum FPOWER64B, /* 9.out bootable */ FARM64, /* arm64 */ FARM64B, /* arm64 bootable */ + FRISCV, /* riscv */ + FRISCVB, /* riscv bootable */ + FRISCV64, /* riscv64 */ + FRISCV64B, /* riscv64 bootable */ ANONE = 0, /* dissembler types */ AMIPS, @@ -85,6 +93,8 @@ enum AAMD64, APOWER64, AARM64, + ARISCV, + ARISCV64, /* object file types */ Obj68020 = 0, /* .2 */ ObjSparc, /* .k */ @@ -103,6 +113,8 @@ enum ObjSpim, /* .0 */ ObjPower64, /* .9 */ ObjArm64, /* .4? */ + ObjRiscv, /* .i */ + ObjRiscv64, /* .j */ Maxobjtype, CNONE = 0, /* symbol table classes */ -- cgit v1.2.3