qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
To: Richard Henderson <richard.henderson@linaro.org>,
	Aleksandar Markovic <aleksandar.m.mail@gmail.com>
Cc: Howard Spoelstra <hsp.cat7@gmail.com>,
	QEMU Developers <qemu-devel@nongnu.org>,
	David Gibson <david@gibson.dropbear.id.au>
Subject: Re: [Qemu-devel] [PATCH v4 0/7] tcg/ppc: Add vector opcodes
Date: Tue, 25 Jun 2019 16:37:40 +0100	[thread overview]
Message-ID: <b8aab3f4-e3eb-a137-62b4-ba5ac1a2ad8f@ilande.co.uk> (raw)
In-Reply-To: <ffae3651-5daf-e008-6562-2de09d82ace9@linaro.org>

On 25/06/2019 07:56, Richard Henderson wrote:

>>> One more hint: if I try a build of d8dcbb57e9 along with my tcg_can_emit_vec_op()
>>> hack and pass --enable-debug-tcg to configure then I get an assert on startup:
>>>
>>> qemu-system-ppc: /home/mca/src/qemu/tcg/tcg.c:2207: process_op_defs: Assertion `tdefs
>>> != ((void *)0)' failed.
>>> Aborted
>>>
>>
>> Mark, Richard, Howard, David,
>>
>> I just sent v5 of the series, that is (in the sense of net-result of
>> code changes) equivalent to v4, but the patch 1/7 from v4 is now split
>> into ten smaller patches. This was done mainly to enable Mark to
>> perhaps try v5 and bisect, in order to at least somewhat narrow down
>> the culprit. Most likely it will be patch 5 from v5, that is still
>> sizeable, but even if this is the case, we can eliminate other smaller
>> things from consideration.
> 
> Thanks for the help on that.
> 
> I don't believe your split is actually bisectable -- there's a minimum amount
> that is required to enable vector opcodes at all.  Patch 5 is the first that
> enables tcg_out_{mov,ld,st}, so while patches beforehand may compile, they
> certainly will not run.
> 
> I can retain your split, but for real bisectability we need to move the enable
> of TCG_TARGET_HAS_v128 from patch 2 to patch 5.
> 
> Given that all this works for me on a Power9 host, I expect that there's a
> simple fix for Mark's G5 host.  Given the above assertion, a missing opcode
> definition, perhaps for -m32 vs -m64?

Right, I'm starting to dig into this a bit more now. First of all, I've figured out
what is triggering the above assertion:

"qemu-system-ppc: /home/mca/src/qemu/tcg/tcg.c:2207: process_op_defs: Assertion
`tdefs != ((void *)0)' failed."

The problem is that in tcg/tcg-op.h we define "DEF(dup2_vec, 1, 2, 0, IMPLVEC |
IMPL(TCG_TARGET_REG_BITS == 32))" and in the last patchset dup2_vec isn't introduced
until towards the end. Unfortunately it's not a simple as bringing the patch forward
within the series to maintain bisectability because the current implementation
depends on VMRG which only appears in the patch just before it...

Next to try and figure out what exactly is causing the fault. Just a quick question
out of curiosity: is your Power9 system BE or LE?


ATB,

Mark.


  reply	other threads:[~2019-06-25 16:07 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-05-19  4:15 [Qemu-devel] [PATCH v4 0/7] tcg/ppc: Add vector opcodes Richard Henderson
2019-05-19  4:15 ` [Qemu-devel] [PATCH v4 1/7] tcg/ppc: Initial backend support for Altivec Richard Henderson
2019-05-19  4:15 ` [Qemu-devel] [PATCH v4 2/7] tcg/ppc: Support vector shift by immediate Richard Henderson
2019-05-19  4:15 ` [Qemu-devel] [PATCH v4 3/7] tcg/ppc: Support vector multiply Richard Henderson
2019-05-19  5:05   ` Aleksandar Markovic
2019-05-19 14:45     ` Richard Henderson
2019-05-19  4:15 ` [Qemu-devel] [PATCH v4 4/7] tcg/ppc: Support vector dup2 Richard Henderson
2019-05-19  4:15 ` [Qemu-devel] [PATCH v4 5/7] tcg/ppc: Update vector support to v2.06 Richard Henderson
2019-05-19  4:15 ` [Qemu-devel] [PATCH v4 6/7] tcg/ppc: Update vector support to v2.07 Richard Henderson
2019-05-19  4:15 ` [Qemu-devel] [PATCH v4 7/7] tcg/ppc: Update vector support to v3.00 Richard Henderson
2019-06-18  5:00 ` [Qemu-devel] [PATCH v4 0/7] tcg/ppc: Add vector opcodes Richard Henderson
2019-06-19  5:07   ` Mark Cave-Ayland
2019-06-20 11:51     ` Howard Spoelstra
2019-06-22 14:20     ` Mark Cave-Ayland
2019-06-22 15:01       ` Mark Cave-Ayland
2019-06-23 17:10         ` Aleksandar Markovic
2019-06-25  6:56           ` Richard Henderson
2019-06-25 15:37             ` Mark Cave-Ayland [this message]
2019-06-25 15:56               ` Richard Henderson
2019-06-25 17:55                 ` Mark Cave-Ayland
2019-06-26  7:45                   ` Richard Henderson
2019-06-26 17:00                     ` Mark Cave-Ayland
2019-06-26 18:18                       ` BALATON Zoltan
2019-06-26 18:42                       ` Richard Henderson
2019-06-26 19:38                         ` Mark Cave-Ayland
2019-06-26 20:21                           ` BALATON Zoltan
2019-06-27 17:24                           ` Mark Cave-Ayland
2019-06-27 17:51                             ` Richard Henderson
2019-06-27 17:54                               ` Richard Henderson
2019-06-27 18:21                                 ` Mark Cave-Ayland
2019-06-26  8:33                 ` David Gibson
2019-06-26 15:25                   ` Richard Henderson
2019-06-25 18:01               ` Aleksandar Markovic
2019-06-19  8:11   ` David Gibson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=b8aab3f4-e3eb-a137-62b4-ba5ac1a2ad8f@ilande.co.uk \
    --to=mark.cave-ayland@ilande.co.uk \
    --cc=aleksandar.m.mail@gmail.com \
    --cc=david@gibson.dropbear.id.au \
    --cc=hsp.cat7@gmail.com \
    --cc=qemu-devel@nongnu.org \
    --cc=richard.henderson@linaro.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).