-
Notifications
You must be signed in to change notification settings - Fork 4
146 lines (116 loc) · 2.93 KB
/
verif.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
name: Verification
on: [push, pull_request]
jobs:
rvtests:
name: Run rvtests
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: oss-cad-suite
uses: YosysHQ/setup-oss-cad-suite@v3
with:
version: '2024-02-02'
- name: gcc
uses: ./.github/workflows/setup-riscv-toolchain
- name: RISC-V Tests
run: make report.riscvtests.all TOOLCHAIN_PREFIX=riscv32-unknown-elf-
riscof:
name: Run RISCOF tests
runs-on: ubuntu-latest
needs: rvtests
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
submodules: recursive
- uses: actions/setup-python@v5
with:
python-version: '3.10'
cache: 'pip'
- name: pip packages
run: pip install -r requirements.txt
- name: fusesoc library
run: |
fusesoc library add fazyrv .
fusesoc library add fsoc .
- name: oss-cad-suite
uses: YosysHQ/setup-oss-cad-suite@v3
with:
version: '2024-02-02'
- name: gcc
uses: ./.github/workflows/setup-riscv-toolchain
- name: sail
uses: ./.github/workflows/setup-sail
- name: RISCOF
run: |
make riscof.prepare
make riscof.all
cov_insn:
name: Cover insn checks
runs-on: ubuntu-latest
needs: rvtests
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
submodules: recursive
- name: oss-cad-suite
uses: YosysHQ/setup-oss-cad-suite@v3
with:
version: '2024-02-02'
- name: cov.8
run: make fv.rvformal.cov.insn.8
- name: cov.4
run: make fv.rvformal.cov.insn.4
cov_reg:
name: Cover reg checks
runs-on: ubuntu-latest
needs: rvtests
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
submodules: recursive
- name: oss-cad-suite
uses: YosysHQ/setup-oss-cad-suite@v3
with:
version: '2024-02-02'
- name: cov.8
run: make fv.rvformal.cov.reg.8
- name: cov.4
run: make fv.rvformal.cov.reg.4
bmc_insn:
name: BMC insn checks
runs-on: ubuntu-latest
needs: rvtests
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
submodules: recursive
- name: oss-cad-suite
uses: YosysHQ/setup-oss-cad-suite@v3
with:
version: '2024-02-02'
- name: bmc.8
run: make fv.rvformal.bmc.insn.8
- name: bmc.4
run: make fv.rvformal.bmc.insn.4
bmc_reg:
name: BMC reg checks
runs-on: ubuntu-latest
needs: rvtests
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
submodules: recursive
- name: oss-cad-suite
uses: YosysHQ/setup-oss-cad-suite@v3
with:
version: '2024-02-02'
- name: bmc.8
run: make fv.rvformal.bmc.reg.8
- name: bmc.4
run: make fv.rvformal.bmc.reg.4