Am 26.01.21 um 23:39 schrieb Richard Henderson:

On 1/26/21 9:44 AM, Stefan Weil wrote:
I was not talking about the TODO assertions. When I wrote TCI, I only enabled
and included code which was triggered by my testing - that's why I said the
productive code lines have 100 % test coverage. TODO assertions are not
productive code, but debug code which were made to detect new test cases. They
were successful, too, because they were triggered by some tests in `make
check-tcg`.
The TODO assertions are all bugs.

Any *real* dead code detection should have been done in
tcg/tci/tcg-target.c.inc.  What's interpreted in tcg/tci.c should be exactly
what is produced on the other side, and you are producing more than you are
consuming.


Unless the TCG opcodes in tcg/tci/tcg-target.c.inc are used in real-live scenarios, they are dead code, too.

Writing a test case which produces them directly (not for some real architecture) is not a real-live scenario.

And the remaining TODO assertions are a good indicator that the current tests are incomplete for native TCG because they obviously don't cover all TCG opcodes.

Stefan




Reply via email to