Age | Commit message (Collapse) | Author | Files | Lines |
|
Spike simulator is very demanding to CPU resources. This causes debug
tests to sporadically fail on slower machines. Increasing of gdb's
`remotetimeout` should get rid of such failures, unless we run the
testsuite on a potato.
The only downside is that if OpenOCD is broken, tests can run longer.
However, I think this is the sacrifice we can make, since execution time
is not affected if everything works as expected.
|
|
|
|
I'm running a newer version of pylint, and thus there are new warnings
to be fixed. All very minor.
|
|
It's not an argument to spike anymore.
Also switch testing the vector unit from multi-gdb to `-rtos hwthread`.
This exposes a bug in OpenOCD (which is already fixed).
|
|
|
|
|
|
* WIP
* Add vector register smoketest.
Also redo the gdb value parsing code to accommodate the more complicated
way that vector registers look.
* Test vector access a little more thoroughly.
* Revert unnecessary changes.
|
|
`make` now takes 31s, `make all` takes 1m53s.
The new CheckMisa test ensures that the misa value specified in the
configuration is correct.
|
|
* Let the debugger enable mstatus.F if necessary.
* Ignore (some) gdb debug output.
* Increase timeout.
* Make newer version of pylint happy.
|
|
|
|
Passes on spike and Arty. Won't merge until
https://github.com/riscv/riscv-openocd/pull/364 merges.
|
|
|
|
Only works against spike, where I've implemented some custom debug
registers to test against.
|
|
Cover all combinations of 32,64 bit XLEN with F and FD extensions.
Finishes Issue https://github.com/riscv/riscv-openocd/issues/110
|
|
I need this for CompareSections to pass when I instrument spike to be
really slow.
|
|
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.
|
|
|
|
On overloaded systems, when executing compare-sections, otherwise gdb
might hit a timeout and the compare-sections code doesn't deal with it.
(You get an error message complaining that 130 is not a valid hex
digit.)
|
|
|
|
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.
|