public inbox for binutils@sourceware.org
 help / color / mirror / Atom feed
From: Andrew Burgess <aburgess@redhat.com>
To: Palmer Dabbelt <palmer@dabbelt.com>
Cc: binutils@sourceware.org, research_trasio@irq.a4lg.com,
	nelson@rivosinc.com, kito.cheng@sifive.com,
	binutils@sourceware.org
Subject: Re: [PATCH v2 0/6] RISC-V: Fix disassembler types and styles
Date: Tue, 04 Oct 2022 09:46:01 +0100	[thread overview]
Message-ID: <8735c4genq.fsf@redhat.com> (raw)
In-Reply-To: <mhng-639730c6-6a67-4076-bd5f-35b0f7fd7899@palmer-ri-x1c9>

Palmer Dabbelt <palmer@dabbelt.com> writes:

> On Mon, 03 Oct 2022 02:59:18 PDT (-0700), aburgess@redhat.com wrote:
>> Tsukasa OI via Binutils <binutils@sourceware.org> writes:
>>
>>> Hello,
>>>
>>> This patchset fixes various typing and styling errors on the RISC-V
>>> disassembler.
>>
>> I can't approve binutils patches.
>>
>> I've taken a look through this series, and other than the minor typo I
>> spotted, this all looks good to me.
>
> My worry with these things is that it's sort of a grey area in terms of 
> what our stable user interface is: there's definitely folks who try and 
> parse the text output of tools like objdump and changing anything risks 
> breaking that.  IMO that's too strict of a stable interface to keep 
> around as it pretty much prevents us from fixing any disassembly 
> weirdness, but I'm not sure if that's what other ports do and I don't 
> want to make a mess by breaking users' expectations here.

I guess we'd want to consider these things on a case-by-case basis.  I'm
struggling to think of a situation where we wouldn't want to fix
something in the disassembler output if it was wrong over leaving it
incorrect because someone, somewhere, might have a script that depends
on the broken output.

But unless I've missed something, I don't think this series makes any
changes to the output other than styling, and I don't think a script
that's trying to parse the disassembler output should be running with
styling switched on....

...or if they are, maybe because they want to figure out which bits of
the text are which, then surely they'd welcome these fixes?

> That said, as far as I can tell the only user-visible change here is to 
> print some bits with the correct syntax coloring in GDB.

And in objdump, which also styles its output by default now when the
output is going to a tty.  Any scripts that capture objdump output
should see no changes with this series.

The styling is pretty new, and I knew when I added it there were going
to be mistakes with things styled incorrectly.  I was basically relying
on getting something in that was not terrible, and then relying on folk
like Tsukasa to come along and fix my mistakes.

IMHO, any script that relies on a fixed styling is a bad script.

I'd probably go further, and say that any script that can't handle minor
changes in the disassembly output at all is a bad script, but without
seeing every case that might be a little harsh.

Anyway, FWIW, I think we should for sure approve this series.

Thanks,
Andrew


>                                                           Seems pretty
> straight-forward to say anything users can't rely on parsing syntax 
> highlighting colors being a stable interface, so maybe we can just punt 
> on the grey area for now ;)
>
>> Thanks for doing this.
>
> Yep.  These LGTM, but I'm still kind of buried thanks to the 
> a few weeks of conference->COVID.  They're probably fine, but hopefully 
> Nelson has the time to chime in -- if not I'll leave them in the queue.
>
> Thanks!
>
>>
>> Andrew
>>
>>
>>
>>>
>>> Previous Patchsets:
>>> <https://sourceware.org/pipermail/binutils/2022-July/121790.html> (2022-07-13)
>>> <https://sourceware.org/pipermail/binutils/2022-August/122172.html> (2022-08-03)
>>> Tracker on GitHub:
>>> <https://github.com/a4lg/binutils-gdb/wiki/riscv_dis_printf_styles_and_types_1>
>>>
>>>
>>> [Changes: v1 -> v2]
>>>
>>> -   Added PATCH 5-6/6 after T-Head extensions are merged.
>>> -   Slightly improved the commit messages?
>>>
>>>
>>> [Styling]
>>> -   Print real immediates with the `immediate' style         (PATCH 1/6)
>>> -   Print comma and tabs with the `text' style               (PATCH 4/6)
>>> -   Print T-Head literal operand with `immediate' style      (PATCH 6/6)
>>> [Typing on printf]
>>> -   Fix wrong type for "%x" format specifier                 (PATCH 2/6)
>>> -   Fix minor but various typing issues on T-Head immediates (PATCH 5/6)
>>> [Small Optimization]
>>> -   Use smallest portable types possible to print            (PATCH 3/6)
>>>
>>> Thanks,
>>> Tsukasa
>>>
>>>
>>>
>>>
>>> Tsukasa OI (6):
>>>   RISC-V: Fix immediates to have "immediate" style
>>>   RISC-V: Fix printf argument types corresponding %x
>>>   RISC-V: Optimize riscv_disassemble_data printf
>>>   RISC-V: Print comma and tabs as the "text" style
>>>   RISC-V: Fix T-Head immediate types on printing
>>>   RISC-V: Print XTheadMemPair literal as "immediate"
>>>
>>>  opcodes/riscv-dis.c | 71 +++++++++++++++++++++++++--------------------
>>>  1 file changed, 39 insertions(+), 32 deletions(-)
>>>
>>>
>>> base-commit: c21736aed1d4877e090df60362413669dbdc391d
>>> --
>>> 2.34.1


  parent reply	other threads:[~2022-10-04  8:46 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-07-13 13:40 [PATCH] RISC-V: fix printf types on riscv-dis.c Tsukasa OI
2022-08-03  4:27 ` [PATCH 0/4] RISC-V: Fix disassembler types and styles Tsukasa OI
2022-08-03  4:27   ` [PATCH 1/4] RISC-V: Fix immediates to have `immediate' style Tsukasa OI
2022-08-10 11:16     ` Andrew Burgess
2022-08-10 13:48       ` Tsukasa OI
2022-08-03  4:27   ` [PATCH 2/4] RISC-V: Fix printf argument types corresponding %x Tsukasa OI
2022-08-03  4:27   ` [PATCH 3/4] RISC-V: Optimize riscv_disassemble_data printf Tsukasa OI
2022-08-03  4:27   ` [PATCH 4/4] RISC-V: Print comma and tabs as the `text' style Tsukasa OI
2022-08-10 11:20     ` Andrew Burgess
2022-08-10 13:54       ` Tsukasa OI
2022-09-26 12:26   ` [PATCH v2 0/6] RISC-V: Fix disassembler types and styles Tsukasa OI
2022-09-26 12:26     ` [PATCH v2 1/6] RISC-V: Fix immediates to have "immediate" style Tsukasa OI
2022-09-26 12:26     ` [PATCH v2 2/6] RISC-V: Fix printf argument types corresponding %x Tsukasa OI
2022-09-26 12:26     ` [PATCH v2 3/6] RISC-V: Optimize riscv_disassemble_data printf Tsukasa OI
2022-09-26 12:26     ` [PATCH v2 4/6] RISC-V: Print comma and tabs as the "text" style Tsukasa OI
2022-09-26 12:26     ` [PATCH v2 5/6] RISC-V: Fix T-Head immediate types on printing Tsukasa OI
2022-10-03  9:57       ` Andrew Burgess
2022-10-03 11:06       ` Christoph Müllner
2022-09-26 12:26     ` [PATCH v2 6/6] RISC-V: Print XTheadMemPair literal as "immediate" Tsukasa OI
2022-10-03 11:06       ` Christoph Müllner
2022-10-03  9:59     ` [PATCH v2 0/6] RISC-V: Fix disassembler types and styles Andrew Burgess
2022-10-03 17:40       ` Palmer Dabbelt
2022-10-04  1:34         ` Tsukasa OI
2022-10-04  1:41         ` Nelson Chu
2022-10-04  8:46         ` Andrew Burgess [this message]
2022-10-05 22:37           ` Palmer Dabbelt
2022-10-05 21:52         ` Jeff Law
2022-10-03 10:43     ` [PATCH v3 " Tsukasa OI
2022-10-03 10:43       ` [PATCH v3 1/6] RISC-V: Fix immediates to have "immediate" style Tsukasa OI
2022-10-03 10:44       ` [PATCH v3 2/6] RISC-V: Fix printf argument types corresponding %x Tsukasa OI
2022-10-03 10:44       ` [PATCH v3 3/6] RISC-V: Optimize riscv_disassemble_data printf Tsukasa OI
2022-10-03 10:44       ` [PATCH v3 4/6] RISC-V: Print comma and tabs as the "text" style Tsukasa OI
2022-10-03 10:44       ` [PATCH v3 5/6] RISC-V: Fix T-Head immediate types on printing Tsukasa OI
2022-10-03 10:44       ` [PATCH v3 6/6] RISC-V: Print XTheadMemPair literal as "immediate" Tsukasa OI

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=8735c4genq.fsf@redhat.com \
    --to=aburgess@redhat.com \
    --cc=binutils@sourceware.org \
    --cc=kito.cheng@sifive.com \
    --cc=nelson@rivosinc.com \
    --cc=palmer@dabbelt.com \
    --cc=research_trasio@irq.a4lg.com \
    /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 read-only IMAP folder(s) and NNTP newsgroup(s).