Skip to content

RV32G monthly rebase HOWTO

qjivy edited this page Apr 12, 2022 · 1 revision

In order to keep the development of RV32G update with the upstream code base, we plan to do rebase every month. Because we want to keep RV64G a stable and correct counterpart for porting, we should always rebase the RV32G to a commit-id that is OK for RISCV64 backend. We can do this by pick a "green" commit from our daily CI (https://ci.rvperf.org/view/V8/job/v8-upstream-master/).

The process should be as following steps:

  1. At the first week of a new month, go to https://ci.rvperf.org/view/V8/job/v8-upstream-master/ to find the latest green CI number from the left side bar and click to enter it.
  2. click the "" then get the raw output of the CI from https://ci.rvperf.org/view/V8/job/v8-upstream-master/1956/consoleText
  3. try to find the commit-id using the key word of "commit"
  4. rebase the current RV32G branch to the commit id using git rebase
  5. try to find commit history from last rebase commit-id to the new rebase commit-id, find out the CLs that are related to RISCV64, port them to RV32G branch. You can use command like:
git log -p ./test/unittests/compiler/riscv64/*  \
./src/regexp/riscv64/*  \
./src/wasm/baseline/riscv64/*  \
./src/baseline/riscv64/*  \
./src/deoptimizer/riscv64/*  \
./src/builtins/riscv64/*  \
./src/codegen/riscv64/*  \
./src/heap/base/asm/riscv64/*  \
./src/execution/riscv64/*  \
./src/diagnostics/riscv64/*  \
./src/compiler/backend/riscv64/* 
  1. make PR for all these changes.