generic: groundwork for RISC-V
authorZoltan HERPAI <wigyori@uid0.hu>
Sat, 27 Oct 2018 22:25:30 +0000 (00:25 +0200)
committerZoltan HERPAI <wigyori@uid0.hu>
Sat, 27 Oct 2018 22:25:30 +0000 (00:25 +0200)
Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
include/kernel.mk
include/site/riscv64 [new file with mode: 0644]
include/target.mk
scripts/config.sub
target/Config.in

index 77c5ecf600694e65d0d1e41ac4d770090fd1c163..1883ff3d6a91f1b72bb01373e3f6879a9d1d80c8 100644 (file)
@@ -87,6 +87,8 @@ else ifneq (,$(findstring $(ARCH) , mipsel mips64 mips64el ))
   LINUX_KARCH := mips
 else ifneq (,$(findstring $(ARCH) , powerpc64 ))
   LINUX_KARCH := powerpc
+else ifneq (,$(findstring $(ARCH) , riscv64 ))
+  LINUX_KARCH := riscv
 else ifneq (,$(findstring $(ARCH) , sh2 sh3 sh4 ))
   LINUX_KARCH := sh
 else ifneq (,$(findstring $(ARCH) , i386 x86_64 ))
diff --git a/include/site/riscv64 b/include/site/riscv64
new file mode 100644 (file)
index 0000000..c5aa9c5
--- /dev/null
@@ -0,0 +1,30 @@
+#!/bin/sh
+. $TOPDIR/include/site/linux
+ac_cv_c_littleendian=${ac_cv_c_littleendian=yes}
+ac_cv_c_bigendian=${ac_cv_c_bigendian=no}
+
+ac_cv_sizeof___int64=8
+ac_cv_sizeof_char=1
+ac_cv_sizeof_int=4
+ac_cv_sizeof_int16_t=2
+ac_cv_sizeof_int32_t=4
+ac_cv_sizeof_int64_t=8
+ac_cv_sizeof_long_int=8
+ac_cv_sizeof_long_long=8
+ac_cv_sizeof_long=8
+ac_cv_sizeof_off_t=8
+ac_cv_sizeof_short_int=2
+ac_cv_sizeof_short=2
+ac_cv_sizeof_size_t=8
+ac_cv_sizeof_ssize_t=8
+ac_cv_sizeof_u_int16_t=2
+ac_cv_sizeof_u_int32_t=4
+ac_cv_sizeof_u_int64_t=8
+ac_cv_sizeof_uint16_t=2
+ac_cv_sizeof_uint32_t=4
+ac_cv_sizeof_uint64_t=8
+ac_cv_sizeof_unsigned_int=4
+ac_cv_sizeof_unsigned_long=8
+ac_cv_sizeof_unsigned_long_long=8
+ac_cv_sizeof_unsigned_short=2
+ac_cv_sizeof_void_p=8
index 1d6888fde3040d51e477c1e45a927184c0459eb1..6ec45c2f68b639a78b3367ed682938104d801d0f 100644 (file)
@@ -230,6 +230,10 @@ ifeq ($(DUMP),1)
     CPU_CFLAGS_arc700 = -mcpu=arc700
     CPU_CFLAGS_archs = -mcpu=archs
   endif
+  ifeq ($(ARCH),riscv64)
+    CPU_TYPE ?= riscv64
+    CPU_CFLAGS_riscv64:=-mabi=lp64d -march=rv64imafdc
+  endif
   ifneq ($(CPU_TYPE),)
     ifndef CPU_CFLAGS_$(CPU_TYPE)
       $(warning CPU_TYPE "$(CPU_TYPE)" doesn't correspond to a known type)
index f018151c64b5baeb9e05eff62250b58571891f83..c28af27851f39dab9b04fdaf0eecfd6759ce9cb5 100755 (executable)
@@ -430,7 +430,7 @@ case $basic_machine in
        | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
        | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \
        | pyramid-* \
-       | riscv32-* | riscv64-* \
+       | riscv32-* | riscv64-* | riscv-* \
        | rl78-* | romp-* | rs6000-* | rx-* \
        | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
        | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
index 3cf4231f2aad3e9bdcee9d715e5366d697b3b490..b3d7a5fb68cd853e3b3ac78906b0ed2aba4eb808 100644 (file)
@@ -167,6 +167,10 @@ config powerpc64
        select ARCH_64BIT
        bool
 
+config riscv64
+       select ARCH_64BIT
+       bool
+
 config sh3
        bool
 
@@ -206,6 +210,7 @@ config ARCH
        default "mips64el"  if mips64el
        default "powerpc"   if powerpc
        default "powerpc64" if powerpc64
+       default "riscv64"   if riscv64
        default "sh3"       if sh3
        default "sh3eb"     if sh3eb
        default "sh4"       if sh4