diff --git a/.github/workflows/build-spike.yml b/.github/workflows/build-spike.yml index c4410c9bed8..15990eec920 100644 --- a/.github/workflows/build-spike.yml +++ b/.github/workflows/build-spike.yml @@ -6,7 +6,7 @@ on: jobs: verilator: name: Build Spike - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 env: TOOL_NAME: spike TOOL_VERSION: d70ea67d diff --git a/.github/workflows/build-verilator.yml b/.github/workflows/build-verilator.yml index 91397d650a9..dc81bef9c9f 100644 --- a/.github/workflows/build-verilator.yml +++ b/.github/workflows/build-verilator.yml @@ -6,7 +6,7 @@ on: jobs: verilator: name: Build Verilator - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 strategy: matrix: include: diff --git a/.github/workflows/gh-pages-pr-closed.yml b/.github/workflows/gh-pages-pr-closed.yml index a251c5caab6..68274f53209 100644 --- a/.github/workflows/gh-pages-pr-closed.yml +++ b/.github/workflows/gh-pages-pr-closed.yml @@ -10,7 +10,7 @@ jobs: name: PR Remove concurrency: group: gh-pages - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 permissions: contents: write steps: diff --git a/.github/workflows/gh-pages-pr-comment.yml b/.github/workflows/gh-pages-pr-comment.yml index 2f4028c1f6d..ff84a095d34 100644 --- a/.github/workflows/gh-pages-pr-comment.yml +++ b/.github/workflows/gh-pages-pr-comment.yml @@ -12,7 +12,7 @@ env: jobs: comment: name: PR Comment - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 permissions: pull-requests: write if: ${{ github.event.workflow_run.event == 'pull_request' && github.event.workflow_run.conclusion == 'success' }} diff --git a/.github/workflows/gh-pages-pr-deploy.yml b/.github/workflows/gh-pages-pr-deploy.yml index 6c1eb9ff59e..4d9c56713e0 100644 --- a/.github/workflows/gh-pages-pr-deploy.yml +++ b/.github/workflows/gh-pages-pr-deploy.yml @@ -11,7 +11,7 @@ jobs: name: PR Deploy concurrency: group: gh-pages - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 permissions: contents: write if: ${{ github.event.workflow_run.event == 'pull_request' && github.event.workflow_run.conclusion == 'success' }} diff --git a/.github/workflows/gh-pages-pr-remove.yml b/.github/workflows/gh-pages-pr-remove.yml index 104de169e3b..b2ff3a78a6e 100644 --- a/.github/workflows/gh-pages-pr-remove.yml +++ b/.github/workflows/gh-pages-pr-remove.yml @@ -14,7 +14,7 @@ jobs: name: PR Remove Deploy concurrency: group: gh-pages - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 permissions: contents: write steps: diff --git a/.github/workflows/publish-webpage.yml b/.github/workflows/publish-webpage.yml index c00dbf953d8..36d386e3594 100644 --- a/.github/workflows/publish-webpage.yml +++ b/.github/workflows/publish-webpage.yml @@ -8,7 +8,7 @@ jobs: name: Build and Main Deploy concurrency: group: gh-pages - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 permissions: contents: write steps: diff --git a/.github/workflows/report-coverage.yml b/.github/workflows/report-coverage.yml index a3ceded6b00..e4594fc66a8 100644 --- a/.github/workflows/report-coverage.yml +++ b/.github/workflows/report-coverage.yml @@ -7,7 +7,7 @@ jobs: coverage-report: name: Coverage report - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 env: DEBIAN_FRONTEND: "noninteractive" diff --git a/.github/workflows/test-regression.yml b/.github/workflows/test-regression.yml index e84d0352976..ad53f83f615 100644 --- a/.github/workflows/test-regression.yml +++ b/.github/workflows/test-regression.yml @@ -7,7 +7,7 @@ jobs: regression-tests: name: Regression tests - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 strategy: matrix: bus: ["axi", "ahb"] diff --git a/.github/workflows/test-riscof.yml b/.github/workflows/test-riscof.yml index 21eaf9a12b5..c27036df0e8 100644 --- a/.github/workflows/test-riscof.yml +++ b/.github/workflows/test-riscof.yml @@ -7,7 +7,7 @@ jobs: tests: name: Run RISCOF tests - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 strategy: fail-fast: false matrix: diff --git a/.github/workflows/test-riscv-dv.yml b/.github/workflows/test-riscv-dv.yml index 5b46f0fd970..a79826b4b8f 100644 --- a/.github/workflows/test-riscv-dv.yml +++ b/.github/workflows/test-riscv-dv.yml @@ -10,7 +10,7 @@ jobs: #--------------# renode: name: Download Renode - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 env: CCACHE_DIR: "/opt/veer-el2/.cache/" DEBIAN_FRONTEND: "noninteractive" @@ -55,7 +55,7 @@ jobs: #--------------# veer-iss: name: Build VeeR-ISS - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 env: CCACHE_DIR: "/opt/veer-el2/.cache/" DEBIAN_FRONTEND: "noninteractive" @@ -106,7 +106,7 @@ jobs: #--------------# generate-config: name: Generate configs - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 outputs: test-types: ${{ steps.test-types.outputs.tests }} test-include-generate: ${{ steps.test-types.outputs.include-generate }} @@ -192,7 +192,7 @@ jobs: run-tests: name: Run RISC-V DV tests - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 needs: [ veer-iss, renode, generate-config, generate-code ] strategy: fail-fast: false diff --git a/.github/workflows/test-uarch.yml b/.github/workflows/test-uarch.yml index 4d77150f900..7d27cd53e90 100644 --- a/.github/workflows/test-uarch.yml +++ b/.github/workflows/test-uarch.yml @@ -9,7 +9,7 @@ env: jobs: lint: name: Lint microarchitectural tests - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 steps: - name: Setup repository uses: actions/checkout@v3 @@ -34,7 +34,7 @@ jobs: popd tests: name: Microarchitectural tests - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 strategy: matrix: test: diff --git a/.github/workflows/test-uvm.yml b/.github/workflows/test-uvm.yml index a972ae1ec71..61a53a358e4 100644 --- a/.github/workflows/test-uvm.yml +++ b/.github/workflows/test-uvm.yml @@ -6,7 +6,7 @@ on: jobs: tests: name: UVM tests - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 env: CCACHE_DIR: "/opt/uvm/.cache/" VERILATOR_VERSION: uvm diff --git a/.github/workflows/test-verification.yml b/.github/workflows/test-verification.yml index b54a0c22ded..5e59428d3c8 100644 --- a/.github/workflows/test-verification.yml +++ b/.github/workflows/test-verification.yml @@ -9,7 +9,7 @@ env: jobs: tests: name: Verification tests - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 strategy: matrix: test: ["test_pyuvm"] diff --git a/.github/workflows/verible-format.yml b/.github/workflows/verible-format.yml index 466966268bd..56069707809 100644 --- a/.github/workflows/verible-format.yml +++ b/.github/workflows/verible-format.yml @@ -5,7 +5,7 @@ on: jobs: format-review: - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 permissions: checks: write contents: read diff --git a/.github/workflows/verible-lint.yml b/.github/workflows/verible-lint.yml index d023a762eb4..eda4cd8d831 100644 --- a/.github/workflows/verible-lint.yml +++ b/.github/workflows/verible-lint.yml @@ -5,7 +5,7 @@ on: jobs: lint-review: - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 permissions: checks: write contents: read diff --git a/README.md b/README.md index a70fc463431..b8991565aa6 100644 --- a/README.md +++ b/README.md @@ -37,8 +37,8 @@ installed so that it can be used to prepare RISCV binaries to run. ## Quickstart guide 1. Clone the repository, clone submodules with `git submodule update --init --recursive` -1. Setup `RV_ROOT` to point to the path in your local filesystem -1. Determine your configuration (optional) +1. Set `RV_ROOT` to the root path of this repository in your filesystem +1. Apply optional configuration (see _Configurations_ section) 1. Run `make` with `tools/Makefile` ## Release Notes for this version diff --git a/tools/Makefile b/tools/Makefile index 430b6d58414..6fe4066a4a4 100755 --- a/tools/Makefile +++ b/tools/Makefile @@ -121,9 +121,8 @@ defines += ${RV_ROOT}/design/include/el2_def.sv defines += $(BUILD_DIR)/el2_pdef.vh includes = -I${BUILD_DIR} -# CFLAGS for verilator generated Makefiles. Without -std=c++11 it -# complains for `auto` variables -CFLAGS += -std=c++11 +# Verilator supports only C++14 and newer +CFLAGS += -std=c++14 # Optimization for better performance; alternative is nothing for # slower runtime (faster compiles) -O2 for faster runtime (slower diff --git a/tools/picolibc.mk b/tools/picolibc.mk index ddb7e48f94d..9cceaf2fec1 100644 --- a/tools/picolibc.mk +++ b/tools/picolibc.mk @@ -43,7 +43,7 @@ $(INSTALL_PATH)/picolibc.specs: $(BUILD_PATH)/cross.txt | $(BUILD_PATH) cd $(PICOLIBC_PATH) && meson $(BUILD_PATH) \ -Dmultilib=true \ - -Dmultilib-list=rv32imac/ilp32 \ + -Dmultilib-list=rv32imc/ilp32 \ -Dpicocrt=false \ -Datomic-ungetc=false \ -Dthread-local-storage=false \