Am 25.01.21 um 23:35 schrieb Richard Henderson:
On 1/25/21 11:02 AM, Stefan Weil wrote:
Am 25.01.21 um 20:02 schrieb Richard Henderson:
On 1/25/21 8:58 AM, Stefan Weil wrote:
I have no evidence that TCI is less reliable than TCG, so I would not write
that.
It can't pass make check-tcg.
Where does it fail? Maybe an expected timeout problem which can be solved by
increasing the timeouts for TCI?
I have just run a local test of `make check-tcg` with native TCG and with TCI
and did not see a difference. But I noticed that in both cases many tests show
"skipped".
You need to enable docker or podman for your development, so that you get all
of the cross-compilers.
Then:
TEST fcvt on arm
TODO ../qemu/tcg/tci.c:614: tcg_qemu_tb_exec()
../qemu/tcg/tci.c:614: tcg fatal error
qemu: uncaught target signal 11 (Segmentation fault) - core dumped
TEST float_convs on m68k
TODO ../qemu/tcg/tci.c:614: tcg_qemu_tb_exec()
../qemu/tcg/tci.c:614: tcg fatal error
qemu: uncaught target signal 11 (Segmentation fault) - core dumped
which is of course one of the TODO assertions.
It's positively criminal those still exist in the code.
I installed podman and repeated `make check-tcg`. The log file still
shows 87 lines with "SKIPPED". There is also a gdb core dump, several
warnings, but nothing related to TCI. Both tests cited above seem to
work without a problem.
The complete log file is available from
https://qemu.weilnetz.de/test/check-tcg.txt.
Daniel, regarding your comment: TCI has 100 % test coverage for the
productive code lines. All code lines which were never tested raise an
assertion, so can easily be identified (and fixed as soon as there is a
test case which triggers such an assertion). The known deficits are
speed, missing TCG opcodes, unimplemented TCG opcodes because of missing
test cases and missing support for some host architectures.
Stefan