qemu-riscv
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Question about TCG backend correctness


From: Richard Henderson
Subject: Re: Question about TCG backend correctness
Date: Wed, 19 Oct 2022 09:03:09 +1000
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.2.2

On 10/18/22 19:22, Alex Bennée wrote:
I'm not wedded to the idea - but it could be a super simple processor
with a lot less extra baggage than a full ISA - purely for throwing TCG
ops at rather than decoding any machine code.

I'd be surprised if you don't wind up with a similar amount of code as for a full ISA, and a lot more baggage on the side besides. But feel free to prove me wrong...

OTOH, if we really did split out a libtcg, disconnected from any target and parameterized, that would make the sort of non-ISA unit testing you're thinking about vastly easier, because you'd be able to write a driver program that isn't "qemu", without all of the target baggage that would currently make this infeasible.

And, very most likely, such a parameterized libtcg will be required for full heterogeneous emulation...

Can we detect optimisation failures with guest tests?

No, and that's where some sort of specific harness might be helpful.

Is it worth doing anything to lower the barrier of entry for these small
micro tests or is the current check-tcg framework enough?

I think the current check-tcg framework probably sufficient.
Generally I think

int main()
{
   asm("test");
   assert(result);
   return 0;
}

is what these micro tests should be aiming for.


r~



reply via email to

[Prev in Thread] Current Thread [Next in Thread]