[Top][All Lists]

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

Re: Need help understanding assertion fail.

From: Peter Maydell
Subject: Re: Need help understanding assertion fail.
Date: Tue, 4 Feb 2020 10:19:13 +0000

On Mon, 3 Feb 2020 at 21:32, Wayne Li <address@hidden> wrote:
> I see.  So you're saying that it might be possible that my guest could be 
> generating TCG ops that can't be translated into PPC instructions because the 
> displacement value is to big.  While the same TCG ops can be translated into 
> x86 instructions because x86 allows for a bigger displacement value.  But on 
> the other hand it could be some other problem causing me to have a large 
> displacement value.
> In that case, I think it'd be super helpful if I print out this displacement 
> value in the TCG ops when running on PPC versus x86 because they should be 
> the same right?  What option in QEMU -d allows me to see generated TCG ops?  
> Doing a -d --help shows the following options:

> There doesn't seem to be any option to print out the TCG ops specifically?  
> Maybe I'll have to go into the code to add print statements that print out 
> the TCG ops?

'op' prints out the ops...

Note that in the TCG ops output there won't be a displacement value, because
that is calculated in the TCG backend. At the ops level, the branches are to
labels. But you'll be able to see if you're generating a super-enormous block
really easily, because it'll have lots of ops in it. (See also the advice in
tcg/README about generally preferring to use calls to helper functions
rather than directly generating more than about 20 TCG ops
for any one guest insn, and the overall MAX_OP_PER_INSTR limit).

-- PMM

reply via email to

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