Browse Source

Add riscv64 support for base gn build

Upstream status: In progress
https://chromium-review.googlesource.com/c/chromium/src/+/3855657

Signed-off-by: Rebecca Chang Swee Fun <rebecca.chang@starfivetech.com>
Rebecca Chang Swee Fun 1 year ago
parent
commit
d45365b451
2 changed files with 6 additions and 1 deletions
  1. 2 1
      base/process/launch_posix.cc
  2. 4 0
      components/update_client/update_query_params.cc

+ 2 - 1
base/process/launch_posix.cc

@@ -710,7 +710,8 @@ CloneAndLongjmpInChild(int flags, pid_t* ptid, pid_t* ctid, jmp_buf* env) {
   alignas(16) char stack_buf[PTHREAD_STACK_MIN];
 #if defined(ARCH_CPU_X86_FAMILY) || defined(ARCH_CPU_ARM_FAMILY) ||   \
     defined(ARCH_CPU_MIPS_FAMILY) || defined(ARCH_CPU_S390_FAMILY) || \
-    defined(ARCH_CPU_PPC64_FAMILY) || defined(ARCH_CPU_LOONG_FAMILY)
+    defined(ARCH_CPU_PPC64_FAMILY) || defined(ARCH_CPU_LOONG_FAMILY) || \
+    defined(ARCH_CPU_RISCV_FAMILY)
   // The stack grows downward.
   void* stack = stack_buf + sizeof(stack_buf);
 #else

+ 4 - 0
components/update_client/update_query_params.cc

@@ -63,6 +63,8 @@ const char kArch[] =
     "loong32";
 #elif defined(__loongarch64)
     "loong64";
+#elif defined(__riscv) && (__riscv_xlen == 64)
+    "riscv64";
 #else
 #error "unknown arch"
 #endif
@@ -136,6 +138,8 @@ const char* UpdateQueryParams::GetNaclArch() {
   return "loong32";
 #elif defined(ARCH_CPU_LOONG64)
   return "loong64";
+#elif defined(ARCH_CPU_RISCV64)
+  return "riscv64";
 #else
 // NOTE: when adding new values here, please remember to update the
 // comment in the .h file about possible return values from this function.