[llvm-dev] Suggestion for TableGen ranges

Nicolai Hähnle via llvm-dev llvm-dev at lists.llvm.org
Tue Aug 4 14:13:35 PDT 2020

On Tue, Aug 4, 2020 at 11:03 PM Paul C. Anagnostopoulos
<paul at windfall.com> wrote:
> What is the protocol for deciding when a suggestion should actually be implemented?

Presumably the first three links from here:
https://llvm.org/docs/GettingInvolved.html :)

In this particular case, I'd say chances are high that nobody will
have any major objections, so it's mostly a matter of making the
change, putting it up for review, and pinging people to actually take
a look (which can be frustrating -- sorry, I'm not particularly great
at following reviews, either).


> At 8/4/2020 04:56 PM, Nicolai Hähnle wrote:
> >On Thu, Jul 30, 2020 at 7:04 PM Paul C. Anagnostopoulos via llvm-dev
> ><llvm-dev at lists.llvm.org> wrote:
> >> The is a syntax quirk in TableGen. A leading plus or minus sign on a decimal integer is considered part of the integer token. Coupled with this, the hyphen (-) is used to indicate integer ranges, as in '1-5'. But the compiler lexes '1-5' as '1' followed by '-5', so a special rule is required to treat that as a range. It is documented as follows:
> >>
> >> "The peculiar last form of RangePiece is due to the fact that the "-" is included in the TokInteger, hence 1-5 gets lexed as two consecutive TokInteger’s, with values 1 and -5, instead of "1", "-", and "5"."
> >>
> >> I propose that we add '..' as a new punctuation token and use it to indicate ranges: 1..5, -10..-5. Then we can deprecate the hyphen range construct.
> >
> >I like this proposal. Feel free to ping me if you need a review.
> >
> >Cheers,
> >Nicolai

Lerne, wie die Welt wirklich ist,
aber vergiss niemals, wie sie sein sollte.

More information about the llvm-dev mailing list