aboutsummaryrefslogtreecommitdiff
path: root/debug/Makefile
AgeCommit message (Collapse)AuthorFilesLines
2023-06-30debug: Don't rely on RISCV envTim Newsome1-3/+0
That made sense when mostly people used riscv-tools, but now they get tools from all sorts of places and most of them are suitable for the debug tests. Also document RISCV_TESTS_DEBUG_GCC and RISCV_TESTS_DEBUG_GDB environment variables in the README. The github workflows that rely on these tests don't use the Makefile, but instead invoke gdbserver.py directly, so they're not affected by this change. Fixes #481
2023-06-27Add a way to exclude tests by specifying an exclusion fileMarek Vrbka1-1/+2
This patch adds a way to specify a yaml file which specifies either for each target individually or for all targets to exclude tests. Example file format is included in excluded.yaml.example.
2021-06-08Tweaks for multispike. (#339)Tim Newsome1-3/+9
1. Don't run all tests in multi-spike. Extra coverage is negligible, and it just takes too long. 2. Increase a few timeouts.
2021-05-07Test daisy chained homogeneous spike instances. (#334)Tim Newsome1-1/+1
* Test debugging multiple spikes in a daisy chain. * Hugely speed up rbb_daisychain. Now 2 dual-hart spikes are less than 4x slower than a single dual-hart spike. * WIP * Test daisy chained homogeneous spike instances. For OpenOCD, this means we're checking that we can talk to multiple TAPs. Next up is heterogeneous testing. * Enable Sv48Test. Didn't mean to disable it with this commit. * Test authentication again. Another change I hadn't meant to push...
2021-01-07Stop testing `-rtos riscv`. (#314)Tim Newsome1-3/+3
As of tomorrow that feature is officially no longer supported in OpenOCD, so stop testing it.
2019-12-10Improve parallellism in debug test Makefile (#223)Tim Newsome1-7/+13
* Improve parallellism in debug test Makefile Now each test is an individual make target, so you can get the most out of however many cores you have. On my 12-core system, `make` went from 2m45s to 42s, and `make all` went from `3m25s` to `2m39s`. If you have few cores, this change may actually slow things down a bit, because ExamineTarget is run for every gdbserver.py invocation. * Remove test target.
2019-03-11Add SmpSimultaneousRunHalt test. (#181)Tim Newsome1-0/+3
This test confirms that in SMP configurations OpenOCD halts the harts near-simulatenously. (It'll also check for resume, but that's not implemented yet so commented out for now.)
2019-02-14Test `-rtos hwthread` (#178)Tim Newsome1-1/+2
* WIP * Use hwthread everywhere. * Test `-rtos hwthread`. Also tweak timeouts a bit so that we don't have ridiculous timeouts for simple operations. * Tweak timeouts so tests pass on a loaded system.
2018-03-01Test debugging with/without a program bufferTim Newsome1-1/+1
2017-12-21Add all-tests target.Tim Newsome1-1/+3
I hope to use this in riscv-tools' regression.sh.
2017-09-29Fix tests to work in multi-gdb mode.Tim Newsome1-1/+1
The Gdb class now can handle connecting to more than one gdb. It enumerates the harts across all connections, and when asked to select a hart, it transparently sends future gdb commands to the correct instance. Multicore tests still have to be aware of some differences. The main one is that when executing 'c' in RTOS mode, all harts resume, while in multi-gdb mode only the current one resumes. Additionally, gdb doesn't set breakpoints until 'c' is issued, so the hart where breakpoints are set needs to be resumed before other harts might see them.
2017-08-28Make the debug tests aware of multicore.Tim Newsome1-2/+2
Targets now contain an array of harts. When running a regular test, one hart is selected to run the test on while the remaining harts are parked in a safe infinite loop. There's currently only one test that tests multicore behavior, but there could be more. The infrastructure should be able to support heterogeneous multicore, but I don't have a target like that to test with.
2017-08-11When make fails to run a test, print out the log.Tim Newsome1-1/+2
2017-08-11Don't use `set pipefail` which is a bashism.Tim Newsome1-7/+5
Instead, just give up on making the log files altogether now. Since gdbserver.py makes its own log files it's not as necessary in any case. This is yet another commit in an attempt to get the riscv-tools build to actually fail if these tests fail.
2017-08-11Don't eat errors in debug Makefile.Tim Newsome1-0/+1
2017-08-10Don't run debug tests as part of build.Tim Newsome1-1/+1
Testing is a separate step. Also fix Issue #64 by adding src_dir to the path to the targets file.
2017-08-10Pylint target files as well.Tim Newsome1-1/+1
This would have prevented some bugs I committed earlier.
2017-07-21Only clean up logfiles that we know we created.Tim Newsome1-1/+1
2017-06-26Move target definition into individual files.Tim Newsome1-1/+1
Instead of defining each target in targets.py, now each target gets its own .py file. This means people can easily keep their own target files around that they may not want to put into the main test source. As part of that, I removed the freedom-u500-sim target since I assume it's only used internally at SiFive. Added a few cleanups as well: * Update README examples, mostly --sim_cmd instead of --cmd. * Allow defining misa in a target, to skip running of ExamineTarget. * Rename target.target() to target.create(), which is less confusing. * Default --sim_cmd to `spike` * Got rid of `use_fpu`, instead looking at F or D in $misa.
2017-05-17Show the debug logs to stdout, to avoid travis timeoutsPalmer Dabbelt1-1/+1
2017-05-15Have the openocd invocation match the spike invocationPalmer Dabbelt1-1/+1
2017-05-15Don't build openocd here, it's in riscv-tools nowPalmer Dabbelt1-1/+5
2017-05-15debug: fix the make target for debug-checkMegan Wachs1-19/+2
2017-04-18bump OpenOCD versionMegan Wachs1-1/+1
2017-04-17debug: Checkpoint restoring Spike functionalityMegan Wachs1-1/+18
2017-03-03Resurrect spike debug supportPalmer Dabbelt1-1/+1
2016-12-27Clean up .pyc files.Tim Newsome1-1/+1
2016-09-15Rewrite debug testing.Tim Newsome1-3/+6
No longer use unittest. Now tests can return not_applicable if eg. a desired execution mode isn't implemented on a target. Also we do a better job killing spike processes when a test fails. Did a lot of code cleanup, partly by using pylint. Fix the Makefile so that if the test fails, 'make' actually fails too.
2016-07-25Display log file during build if testing fails.Tim Newsome1-5/+3
That way somebody doesn't need to spend forever trying to reproduce a travis failure when all they really need is the logfile.
2016-07-19Run debug tests from main Makefile.Tim Newsome1-2/+8
2016-07-19Be verbose, since output is going to a log file.Tim Newsome1-2/+2
2016-07-19Add Makefile.Tim Newsome1-0/+12
Add --isolate argument which enables the 32- and 64-bit spikes to be tested simultaneously.