public inbox for binutils@sourceware.org
 help / color / mirror / Atom feed
From: Jan Beulich <jbeulich@suse.com>
To: "H.J. Lu" <hjl.tools@gmail.com>
Cc: Binutils <binutils@sourceware.org>
Subject: Re: [PATCH 5/7] x86: re-work insn/suffix recognition
Date: Fri, 26 Aug 2022 11:26:43 +0200	[thread overview]
Message-ID: <162c053b-7c68-67b8-1443-926f2ebb321d@suse.com> (raw)
In-Reply-To: <CAMe9rOpMgL68dUJ5FfNLjKRPEOtMaG=CJQYX43Z8pZQMJYw=5Q@mail.gmail.com>

On 23.08.2022 04:00, H.J. Lu wrote:
> On Fri, Aug 19, 2022 at 1:28 AM Jan Beulich <jbeulich@suse.com> wrote:
>>
>> On 18.08.2022 17:14, H.J. Lu wrote:
>>> On Wed, Aug 17, 2022 at 11:24 PM Jan Beulich <jbeulich@suse.com> wrote:
>>>>
>>>> On 17.08.2022 22:29, H.J. Lu wrote:
>>>>> On Tue, Aug 16, 2022 at 12:32 AM Jan Beulich <jbeulich@suse.com> wrote:
>>>>>>
>>>>>> x86: re-work insn/suffix recognition
>>>>>>
>>>>>> Having templates with a suffix explicitly present has always been
>>>>>> quirky. Introduce a 2nd matching pass in case the 1st one couldn't find
>>>>>
>>>>> I don't like the second pass.   What problem does it solve?
>>>>
>>>> It addresses the reasons we have various pretty odd (and confusing by
>>>> their mere presence) insn templates which better would never have been
>>>> there. If you have a better suggestion to eliminate those, I'm all ears.
>>>>
>>>> You can also easily see the issues this solves by looking at the
>>>> testsuite changes. Among other things this once again is a matter of
>>>> providing consistent and hence predictable behavior.
>>>
>>> Did you mean the error reporting behavior?  I don't think we should add
>>> a second pass just for it.
>>
>> No. Certain insns simply were not accepted previously (this is actually
>> what finally made me think of a solution here; prior observations
>> weren't severe enough to try to get past your possible opposition which
>> was to be expected based on past discussions). And certain other ones
>> were wrongly accepted.
> 
> Please open bug reports for these cases.

PR gas/29524
PR gas/29525
PR gas/29526

But really - what's the point of making me waste time on creating bug
reports when fixes are already available?

In any event, I'll be shortly submitting v2 of the series addressing
these.

>>>> Further this sets the stage for the subsequent two changes, which I
>>>> don't think are easily possible without this 2nd pass.
>>>
>>> Does it indicate that the second pass is used quite often?
>>
>> No, what I did say ...
>>
>>>> And finally you've likely spotted that this is actually a reduction in
>>>> code size, first and foremost because the odd maybe_adjust_templates()
>>>> can now go away. Plus I think you realize that the 2nd pass wouldn't
>>>> be engaged in many cases - it requires a template match failure in the
>>>> 1st pass, after all, which isn't going to happen very often.
> 
> There is a fixed cost to prepare for the second pass.

A very limited one (I suppose there are enough other things which are
more of an overhead). Plus part of the preparation happens only when
the first pass didn't find any match.

Jan

  reply	other threads:[~2022-08-26  9:26 UTC|newest]

Thread overview: 45+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-08-16  7:27 [PATCH 0/7] x86: suffix handling changes Jan Beulich
2022-08-16  7:30 ` [PATCH 1/7] x86/Intel: restrict suffix derivation Jan Beulich
2022-08-17 19:19   ` H.J. Lu
2022-08-18  6:07     ` Jan Beulich
2022-08-18 14:46       ` H.J. Lu
2022-08-19  8:19         ` Jan Beulich
2022-08-19 14:23           ` H.J. Lu
2022-08-19 14:49             ` Jan Beulich
2022-08-19 17:00               ` H.J. Lu
2022-08-22  9:34                 ` Jan Beulich
2022-08-22 14:38                   ` H.J. Lu
2022-08-16  7:30 ` [PATCH 2/7] x86: insert "no error" enumerator in i386_error enumeration Jan Beulich
2022-08-17 19:19   ` H.J. Lu
2022-08-16  7:31 ` [PATCH 3/7] x86: move / quiesce pre-386 non-16-bit warning Jan Beulich
2022-08-17 19:21   ` H.J. Lu
2022-08-18  7:21     ` Jan Beulich
2022-08-18 15:30       ` H.J. Lu
2022-08-19  6:13         ` Jan Beulich
2022-08-19 14:18           ` H.J. Lu
2022-08-16  7:32 ` [PATCH 4/7] x86: improve match_template()'s diagnostics Jan Beulich
2022-08-17 20:24   ` H.J. Lu
2022-08-18  6:14     ` Jan Beulich
2022-08-18 14:51       ` H.J. Lu
2022-08-16  7:32 ` [PATCH 5/7] x86: re-work insn/suffix recognition Jan Beulich
2022-08-17 20:29   ` H.J. Lu
2022-08-18  6:24     ` Jan Beulich
2022-08-18 15:14       ` H.J. Lu
2022-08-19  8:28         ` Jan Beulich
2022-08-23  2:00           ` H.J. Lu
2022-08-26  9:26             ` Jan Beulich [this message]
2022-08-26 18:46               ` H.J. Lu
2022-09-06  6:40                 ` Jan Beulich
2022-09-06 21:53                   ` H.J. Lu
2022-09-07  7:17                     ` Jan Beulich
2022-09-26 23:52                       ` H.J. Lu
2022-09-28 12:49                         ` Jan Beulich
2022-09-28 19:33                           ` H.J. Lu
2022-09-29  8:08                             ` Jan Beulich
2022-09-29 16:00                               ` H.J. Lu
2022-09-29 16:06                                 ` Jan Beulich
2022-09-29 16:20                                   ` H.J. Lu
2022-08-16  7:33 ` [PATCH 6/7] x86-64: further re-work insn/suffix recognition to also cover MOVSL Jan Beulich
2022-08-16  7:34 ` [PATCH 7/7] ix86: don't recognize/derive Q suffix in the common case Jan Beulich
2022-08-17 20:36   ` H.J. Lu
2022-08-18  6:29     ` Jan Beulich

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=162c053b-7c68-67b8-1443-926f2ebb321d@suse.com \
    --to=jbeulich@suse.com \
    --cc=binutils@sourceware.org \
    --cc=hjl.tools@gmail.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).