You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
# # Fetch all history so that we can run git diff on the base branch
33
-
# fetch-depth: 0
34
-
35
-
# - name: Setup environment variables
36
-
# run: |
37
-
# # Filter out empty lines or comments
38
-
# grep -v '^\(#\|$\)' ci/vars.env >> $GITHUB_ENV
39
-
40
-
# - name: Install build dependencies
41
-
# run: |
42
-
# ci/install-build-deps.sh
43
-
44
-
# - name: Display environment
45
-
# run: |
46
-
# echo $PATH
47
-
# python3 --version
48
-
# echo -n "fusesoc "
49
-
# fusesoc --version
50
-
# verilator --version
51
-
# riscv32-unknown-elf-gcc --version
52
-
# verible-verilog-lint --version
53
-
54
-
# # Verible format is experimental so only run on default config for now,
55
-
# # will eventually become part of the per-config CI
56
-
# - name: Format all source code with Verible format (experimental)
57
-
# run: |
58
-
# set +e
59
-
# fusesoc --cores-root . run --no-export --target=format --tool=veribleformat lowrisc:ibex:ibex_top_tracing
60
-
# if [ $? != 0 ]; then
61
-
# echo -n "::error::"
62
-
# echo "Verilog format with Verible failed. Run 'fusesoc --cores-root . run --no-export --target=format --tool=veribleformat lowrisc:ibex:ibex_top_tracing' to check and fix all errors."
63
-
# echo "This flow is currently experimental and failures can be ignored."
64
-
# fi
65
-
# # Show diff of what verilog_format would have changed, and then revert.
66
-
# git diff --no-pager
67
-
# git reset --hard HEAD
68
-
# continue-on-error: true
69
-
70
-
# - name: Use clang-format to check C/C++ coding style
71
-
# # This check is not idempotent, but checks changes to a base branch.
# # Build CoreMark without performance counter dump for co-simulation testing
101
-
# make -C ./examples/sw/benchmarks/coremark SUPPRESS_PCOUNT_DUMP=1
102
-
# make -C ./examples/sw/simple_system/pmp_smoke_test
103
-
# make -C ./examples/sw/simple_system/dit_test
104
-
# make -C ./examples/sw/simple_system/dummy_instr_test
105
-
106
-
# # Run Ibex RTL CI per supported configuration
107
-
# - name: Run Ibex RTL CI for small configuration
108
-
# uses: ./.github/actions/ibex-rtl-ci-steps
109
-
# with:
110
-
# ibex_config: small
111
-
# - name: Run Ibex RTL CI for opentitan configuration
112
-
# uses: ./.github/actions/ibex-rtl-ci-steps
113
-
# with:
114
-
# ibex_config: opentitan
115
-
# - name: Run Ibex RTL CI for maxperf configuration
116
-
# uses: ./.github/actions/ibex-rtl-ci-steps
117
-
# with:
118
-
# ibex_config: maxperf
119
-
# - name: Run Ibex RTL CI for maxperf-pmp-bmbalanced configuration
120
-
# uses: ./.github/actions/ibex-rtl-ci-steps
121
-
# with:
122
-
# ibex_config: maxperf-pmp-bmbalanced
123
-
# - name: Run Ibex RTL CI for maxperf-pmp-bmfull configuration
124
-
# uses: ./.github/actions/ibex-rtl-ci-steps
125
-
# with:
126
-
# ibex_config: maxperf-pmp-bmfull
127
-
# - name: Run Ibex RTL CI for experimental-branch-predictor configuration
128
-
# uses: ./.github/actions/ibex-rtl-ci-steps
129
-
# with:
130
-
# ibex_config: experimental-branch-predictor
131
-
132
-
# # Run lint on simple system
133
-
# - name: Run Verilator lint on simple system
134
-
# run: |
135
-
# set +e
136
-
# fusesoc --cores-root . run --target=lint --tool=verilator lowrisc:ibex:ibex_simple_system
137
-
# if [ $? != 0 ]; then
138
-
# echo -n "::error::"
139
-
# echo "Verilog lint with Verilator failed. Run 'fusesoc --cores-root . run --target=lint --tool=verilator lowrisc:ibex:ibex_simple_system' to check and fix all errors."
140
-
# exit 1
141
-
# fi
142
-
143
-
# - name: Run Verible lint on simple system
144
-
# run: |
145
-
# set +e
146
-
# fusesoc --cores-root . run --target=lint --tool=veriblelint lowrisc:ibex:ibex_simple_system
147
-
# if [ $? != 0 ]; then
148
-
# echo -n "::error::"
149
-
# echo "Verilog lint with Verible failed. Run 'fusesoc --cores-root . run --target=lint --tool=veriblelint lowrisc:ibex:ibex_simple_system' to check and fix all errors."
150
-
# exit 1
151
-
# fi
152
-
153
-
fv:
154
-
name: Run the Open-Source FV flow
155
-
runs-on: nixos-25.05
26
+
lint_dv:
27
+
name: Run quality checks (Lint and DV)
28
+
runs-on: ubuntu-22.04
156
29
steps:
157
30
- uses: actions/checkout@v4
31
+
with:
32
+
# Fetch all history so that we can run git diff on the base branch
33
+
fetch-depth: 0
34
+
35
+
- name: Setup environment variables
36
+
run: |
37
+
# Filter out empty lines or comments
38
+
grep -v '^\(#\|$\)' ci/vars.env >> $GITHUB_ENV
39
+
40
+
- name: Install build dependencies
41
+
run: |
42
+
ci/install-build-deps.sh
43
+
44
+
- name: Display environment
45
+
run: |
46
+
echo $PATH
47
+
python3 --version
48
+
echo -n "fusesoc "
49
+
fusesoc --version
50
+
verilator --version
51
+
riscv32-unknown-elf-gcc --version
52
+
verible-verilog-lint --version
53
+
54
+
# Verible format is experimental so only run on default config for now,
55
+
# will eventually become part of the per-config CI
56
+
- name: Format all source code with Verible format (experimental)
57
+
run: |
58
+
set +e
59
+
fusesoc --cores-root . run --no-export --target=format --tool=veribleformat lowrisc:ibex:ibex_top_tracing
60
+
if [ $? != 0 ]; then
61
+
echo -n "::error::"
62
+
echo "Verilog format with Verible failed. Run 'fusesoc --cores-root . run --no-export --target=format --tool=veribleformat lowrisc:ibex:ibex_top_tracing' to check and fix all errors."
63
+
echo "This flow is currently experimental and failures can be ignored."
64
+
fi
65
+
# Show diff of what verilog_format would have changed, and then revert.
66
+
git diff --no-pager
67
+
git reset --hard HEAD
68
+
continue-on-error: true
69
+
70
+
- name: Use clang-format to check C/C++ coding style
71
+
# This check is not idempotent, but checks changes to a base branch.
- name: Run Ibex RTL CI for maxperf-pmp-bmbalanced configuration
120
+
uses: ./.github/actions/ibex-rtl-ci-steps
121
+
with:
122
+
ibex_config: maxperf-pmp-bmbalanced
123
+
- name: Run Ibex RTL CI for maxperf-pmp-bmfull configuration
124
+
uses: ./.github/actions/ibex-rtl-ci-steps
125
+
with:
126
+
ibex_config: maxperf-pmp-bmfull
127
+
- name: Run Ibex RTL CI for experimental-branch-predictor configuration
128
+
uses: ./.github/actions/ibex-rtl-ci-steps
129
+
with:
130
+
ibex_config: experimental-branch-predictor
169
131
170
-
- name: Run OSS Env
132
+
# Run lint on simple system
133
+
- name: Run Verilator lint on simple system
134
+
run: |
135
+
set +e
136
+
fusesoc --cores-root . run --target=lint --tool=verilator lowrisc:ibex:ibex_simple_system
137
+
if [ $? != 0 ]; then
138
+
echo -n "::error::"
139
+
echo "Verilog lint with Verilator failed. Run 'fusesoc --cores-root . run --target=lint --tool=verilator lowrisc:ibex:ibex_simple_system' to check and fix all errors."
140
+
exit 1
141
+
fi
142
+
143
+
- name: Run Verible lint on simple system
171
144
run: |
172
-
source <(nix print-dev-env .#oss-dev)
173
-
cd dv/formal
174
-
make build/aig-manip
175
-
make build/all.aig SHELL=bash
176
-
python3 conductor.py prove
145
+
set +e
146
+
fusesoc --cores-root . run --target=lint --tool=veriblelint lowrisc:ibex:ibex_simple_system
147
+
if [ $? != 0 ]; then
148
+
echo -n "::error::"
149
+
echo "Verilog lint with Verible failed. Run 'fusesoc --cores-root . run --target=lint --tool=veriblelint lowrisc:ibex:ibex_simple_system' to check and fix all errors."
0 commit comments