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
test/orfs: drop stale eqy/LEC sections from READMEs
The eqy_test/sby_test macros and gcd_eqy_*/MockArray_*_eqy_* targets
were removed in #10307. Remove the README sections that documented
those now-deleted targets:
- test/orfs/README.md: "eqy tests", "Running eqy tests standalone
outside bazel", "using sv-bugpoint to whittle down test-cases"
(the sv-bugpoint example uses eqy_synth_test).
- test/orfs/gcd/README.md: "LEC tests" (lists deleted gcd_eqy_*
targets).
- test/orfs/mock-array/README.md: eqy/FILLER bullet in the
"what mock-array has exposed" list, and the eqy_tests example
in the test-running block.
Split out of #10237 to keep that PR focused on the docker removal.
Signed-off-by: Øyvind Harboe <oyvind.harboe@zylin.com>
Copy file name to clipboardExpand all lines: test/orfs/README.md
-121Lines changed: 0 additions & 121 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -109,127 +109,6 @@ To hunt down missing `tags = ["manual"]` run a query like:
109
109
110
110
Note that OpenROAD *does* want `bazelisk test ...` to run all tests, so test targets should be marked `tags = ["orfs"]` instead, so that `.bazelrc` can skip builds of those targets with the `build --build_tag_filters=-orfs` line.
111
111
112
-
## eqy tests
113
-
114
-
`eqy_test` is used to run equivalence checks before and after an ORFS stage, such as before and after floorplan for mock-array. To run the test and keep all the files from the test and see interactive output, run:
115
-
116
-
bazelisk test //test/orfs/mock-array:MockArray_4x4_eqy_test --test_output=streamed --sandbox_debug
117
-
118
-
If this fails, then it will output the line below. `eqy` uses a very, very large number of files and copying out these files to the bazel-testlogs folder for inspection takes some time:
119
-
120
-
Copying 114462 files to bazel-testlogs/test/orfs/mock-array/MockArray_4x4_eqy_test/test.outputs for inspection.
121
-
122
-
If you just want the files needed to run a locally installed `eqy`, build all the files used in the run above by:
-`~/oss-cad-suite/` should be familiar with anyone versed in eqy as it refers to the [official binary release binaries](https://github.com/YosysHQ/oss-cad-suite-build)
144
-
- Reproduction cases should be minimal in terms of size and context. The above recipe contains some unnecessary files, unnecessary directory structure, etc. Prune the test case further manually to get to the core of the matter.
Copy all files needed to run the tests into a working folder `foo`:
158
-
159
-
rsync -aL "$(bazelisk info bazel-bin)/test/orfs/gcd/gcd_eqy_synth_test.run.sh.runfiles/" foo/
160
-
161
-
Change cwd for running the tests:
162
-
163
-
cd foo/_main
164
-
165
-
Bazel sets up both binaries and data files to run the tests, to create a reportable standalone test. A report should include only the data files and not the actual binaries used locally to run the test:
Bazel generated `bazel-bin/test/orfs/gcd/gcd_eqy_synth_test.run.sh` to runs the tests. Examine this script to look at that for clues as to how to run the tests standalone:
183
-
184
-
$ head -n 5 test/orfs/gcd/gcd_eqy_synth_test.run.sh
[sv-bugpoint](https://github.com/antmicro/sv-bugpoint) can be used to whittle down test-cases to a minimum example.
214
-
215
-
Let's say that `bazelisk test test/orfs/gcd:eqy_synth_test` fails, first create a script that looks for the error string in the output, in this case a false positive `Failed to prove equivalence of partition gcd.req_rdy`.
216
-
217
-
After compiling sv-bugpoint, we create a check.sh script:
218
-
219
-
```bash
220
-
#!/usr/bin/env bash
221
-
set -euo pipefail
222
-
cp $1 test/orfs/gcd/
223
-
(bazelisk test test/orfs/gcd:eqy_synth_test --test_timeout=30 --test_output=streamed || error=$?) | tee /dev/tty | grep "Failed to prove equivalence of partition gcd.req_rdy"
224
-
```
225
-
226
-
-`--test_timeout=30` is a suitable timeout for this test and machine, adjust. Note that the timeout must be handled by Bazel and not a generic `timeout` utility as it would not work correctly with the bazel server.
227
-
228
-
229
-
Next, run sv-bugpoint to whittle `test/orfs/gcd/gcd.v` down to a minimal test case:
Copy file name to clipboardExpand all lines: test/orfs/gcd/README.md
-25Lines changed: 0 additions & 25 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -11,31 +11,6 @@ This design has about 250 cells.
11
11
12
12
Re-used code derived from http://opencelerity.org/ project.
13
13
14
-
## LEC tests
15
-
16
-
LEC tests exist for each of the ORFS stages as well as a self-test for the original source.
17
-
18
-
In terms of expectations for LEC tests, this is experimental and contributions are highly appreciated. As of writing, even for such a small test case as gcd, the running time is considerable and eqy has false positives reported to the eqy project.
19
-
20
-
```bash
21
-
$ cd test/orfs/gcd
22
-
$ bazelisk query :*| grep eqy | grep _test
23
-
Loading: 0 packages loaded
24
-
//test/orfs/gcd:gcd_eqy_cts_test
25
-
//test/orfs/gcd:gcd_eqy_final_test
26
-
//test/orfs/gcd:gcd_eqy_floorplan_test
27
-
//test/orfs/gcd:gcd_eqy_grt_test
28
-
//test/orfs/gcd:gcd_eqy_place_test
29
-
//test/orfs/gcd:gcd_eqy_route_test
30
-
//test/orfs/gcd:gcd_eqy_source_test
31
-
//test/orfs/gcd:gcd_eqy_synth_test
32
-
//test/orfs/gcd:gcd_eqy_tests
33
-
```
34
-
35
-
To run all the tests:
36
-
37
-
bazelisk test //test/orfs/gcd:gcd_eqy_tests --keep_going
38
-
39
14
## Whittle test
40
15
41
16
The `gcd_whittle_test` is an integration test for `etc/whittle.py`, the
0 commit comments