[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-arm] [RISU PATCH v3 20/22] risu_reginfo_aarch64: add SVE suppo
From: |
Richard Henderson |
Subject: |
Re: [Qemu-arm] [RISU PATCH v3 20/22] risu_reginfo_aarch64: add SVE support to reginfo_dump_mismatch |
Date: |
Thu, 14 Jun 2018 10:42:46 -1000 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.8.0 |
On 06/13/2018 02:55 AM, Alex Bennée wrote:
> +static void sve_dump_preg_diff(FILE *f, int vq,
> + uint16_t const (*p1)[SVE_VQ_MAX],
> + uint16_t const (*p2)[SVE_VQ_MAX])
> +{
> + int q;
> +
> + for (q = 0; q < vq; q++) {
> + fprintf(f, "%#04x", *p1[q]);
> + }
> + fprintf(f, " vs ");
> + for (q = 0; q < vq; q++) {
> + fprintf(f, "%#04x", *p2[q]);
%# adds 0x into every 16-bit unit, so for vq=2 we get
0xffff0xffff
Emit the 0x separately to start?
> + for (i = 0; i < SVE_NUM_ZREGS; i++) {
> + if (!sve_zreg_is_eq(m, a, i)) {
> + int q;
> + char *pad="";
> + fprintf(f, " Z%2d : ", i);
%-2d? %02d?
> + for (q = 0; q < sve_vq_from_vl(ms->vl); q++) {
> + if (ms->zregs[i][q] != as->zregs[i][q]) {
> + fprintf(f, "%sq%02d: %016" PRIx64 "%016" PRIx64
> + " vs %016" PRIx64 "%016" PRIx64"\n", pad, q,
Actually, another thing that has annoyed me in the past,
but apparently not quite enough to actually fix, is the
fact that reginfo_dump and reginfo_dump_mismatch have a
slightly different format for Zregs.
It's probably worth splitting those bits out to helper
functions so that they must match.
r~
- [Qemu-arm] [RISU PATCH v3 18/22] risu_reginfo_aarch64: left justify regnums and drop masks, (continued)
- [Qemu-arm] [RISU PATCH v3 18/22] risu_reginfo_aarch64: left justify regnums and drop masks, Alex Bennée, 2018/06/13
- [Qemu-arm] [RISU PATCH v3 19/22] risu_reginfo_aarch64: add support for copying SVE register state, Alex Bennée, 2018/06/13
- [Qemu-arm] [RISU PATCH v3 16/22] risu_reginfo_aarch64: unionify VFP regs, Alex Bennée, 2018/06/13
- [Qemu-arm] [RISU PATCH v3 21/22] risu_reginfo_aarch64: limit SVE_VQ_MAX to current architecture, Alex Bennée, 2018/06/13
- [Qemu-arm] [RISU PATCH v3 13/22] risu: move optional args to each architecture, Alex Bennée, 2018/06/13
- [Qemu-arm] [RISU PATCH v3 20/22] risu_reginfo_aarch64: add SVE support to reginfo_dump_mismatch, Alex Bennée, 2018/06/13
- Re: [Qemu-arm] [RISU PATCH v3 20/22] risu_reginfo_aarch64: add SVE support to reginfo_dump_mismatch,
Richard Henderson <=
- [Qemu-arm] [RISU PATCH v3 14/22] risu: add process_arch_opt, Alex Bennée, 2018/06/13
- [Qemu-arm] [RISU PATCH v3 12/22] contrib/generate_all.sh: allow passing of arguments to risugen, Alex Bennée, 2018/06/13
- [Qemu-arm] [RISU PATCH v3 22/22] risu_reginfo_aarch64: handle variable VQ, Alex Bennée, 2018/06/13