[clang] Perf/lexer faster slow get char and size (PR #70543)

2023-10-31 Thread via cfe-commits
serge-sans-paille wrote: recommited as 8116b6dce70ef284f9a0895b0f9f45bfa9a3ade7 https://github.com/llvm/llvm-project/pull/70543 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] Perf/lexer faster slow get char and size (PR #70543)

2023-10-29 Thread Nico Weber via cfe-commits
nico wrote: Reverted in 1c876ff5155c4feeb2b2885eb3e6abda17c4b7f4 for now. https://github.com/llvm/llvm-project/pull/70543 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] Perf/lexer faster slow get char and size (PR #70543)

2023-10-29 Thread Nico Weber via cfe-commits
nico wrote: This breaks building: http://45.33.8.238/linux/121901/step_4.txt Please take a look and revert for now if it takes a while to fix. https://github.com/llvm/llvm-project/pull/70543 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http

[clang] Perf/lexer faster slow get char and size (PR #70543)

2023-10-29 Thread Rainer Orth via cfe-commits
rorth wrote: This patch broke builders like [Solaris/amd64](https://lab.llvm.org/staging/#/builders/8/builds/761) that include `clang-tools-extra`. https://github.com/llvm/llvm-project/pull/70543 ___ cfe-commits mailing list cfe-commits@lists.llvm.or

[clang] Perf/lexer faster slow get char and size (PR #70543)

2023-10-29 Thread via cfe-commits
https://github.com/serge-sans-paille closed https://github.com/llvm/llvm-project/pull/70543 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] Perf/lexer faster slow get char and size (PR #70543)

2023-10-29 Thread via cfe-commits
https://github.com/cor3ntin approved this pull request. LGTM, thanks https://github.com/llvm/llvm-project/pull/70543 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] Perf/lexer faster slow get char and size (PR #70543)

2023-10-29 Thread via cfe-commits
@@ -1964,11 +1969,14 @@ bool Lexer::LexIdentifierContinue(Token &Result, const char *CurPtr) { /// isHexaLiteral - Return true if Start points to a hex constant. /// in microsoft mode (where this is supposed to be several different tokens). bool Lexer::isHexaLiteral(const char

[clang] Perf/lexer faster slow get char and size (PR #70543)

2023-10-29 Thread via cfe-commits
https://github.com/serge-sans-paille updated https://github.com/llvm/llvm-project/pull/70543 >From 7bbcabd82edc1736cc22243e109dc0858036c6ac Mon Sep 17 00:00:00 2001 From: serge-sans-paille Date: Fri, 27 Oct 2023 22:48:08 +0200 Subject: [PATCH 1/2] [clang] Change GetCharAndSizeSlow interface to

[clang] Perf/lexer faster slow get char and size (PR #70543)

2023-10-29 Thread via cfe-commits
github-actions[bot] wrote: :warning: C/C++ code formatter, clang-format found issues in your code. :warning: You can test this locally with the following command: ``bash git-clang-format --diff e00d32afb9d33a1eca48e2b041c9688436706c5b a20790e9e87d2ede14605b277184d2b8c5b0979f --

[clang] Perf/lexer faster slow get char and size (PR #70543)

2023-10-28 Thread via cfe-commits
@@ -1964,11 +1969,14 @@ bool Lexer::LexIdentifierContinue(Token &Result, const char *CurPtr) { /// isHexaLiteral - Return true if Start points to a hex constant. /// in microsoft mode (where this is supposed to be several different tokens). bool Lexer::isHexaLiteral(const char

[clang] Perf/lexer faster slow get char and size (PR #70543)

2023-10-28 Thread via cfe-commits
https://github.com/serge-sans-paille updated https://github.com/llvm/llvm-project/pull/70543 >From 7bbcabd82edc1736cc22243e109dc0858036c6ac Mon Sep 17 00:00:00 2001 From: serge-sans-paille Date: Fri, 27 Oct 2023 22:48:08 +0200 Subject: [PATCH 1/2] [clang] Change GetCharAndSizeSlow interface to

[clang] Perf/lexer faster slow get char and size (PR #70543)

2023-10-28 Thread via cfe-commits
@@ -565,10 +565,9 @@ Scanner::cleanStringIfNeeded(const dependency_directives_scan::Token &Tok) { const char *BufPtr = Input.begin() + Tok.Offset; const char *AfterIdent = Input.begin() + Tok.getEnd(); while (BufPtr < AfterIdent) { -unsigned Size; -Spelling[Spell

[clang] Perf/lexer faster slow get char and size (PR #70543)

2023-10-28 Thread via cfe-commits
@@ -2085,8 +2093,9 @@ const char *Lexer::LexUDSuffix(Token &Result, const char *CurPtr, unsigned Consumed = Size; unsigned Chars = 1; while (true) { -unsigned NextSize; -char Next = getCharAndSizeNoWarn(CurPtr + Consumed, NextSize, LangOpts);

[clang] Perf/lexer faster slow get char and size (PR #70543)

2023-10-28 Thread via cfe-commits
@@ -2012,15 +2020,15 @@ bool Lexer::LexNumericConstant(Token &Result, const char *CurPtr) { // If we have a digit separator, continue. if (C == '\'' && (LangOpts.CPlusPlus14 || LangOpts.C23)) { -unsigned NextSize; -char Next = getCharAndSizeNoWarn(CurPtr + Size, N

[clang] Perf/lexer faster slow get char and size (PR #70543)

2023-10-28 Thread via cfe-commits
@@ -1964,11 +1969,14 @@ bool Lexer::LexIdentifierContinue(Token &Result, const char *CurPtr) { /// isHexaLiteral - Return true if Start points to a hex constant. /// in microsoft mode (where this is supposed to be several different tokens). bool Lexer::isHexaLiteral(const char

[clang] Perf/lexer faster slow get char and size (PR #70543)

2023-10-28 Thread via cfe-commits
serge-sans-paille wrote: @cor3ntin yep, looks better with a small struct, updated pushed https://github.com/llvm/llvm-project/pull/70543 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] Perf/lexer faster slow get char and size (PR #70543)

2023-10-28 Thread via cfe-commits
https://github.com/serge-sans-paille updated https://github.com/llvm/llvm-project/pull/70543 >From 7bbcabd82edc1736cc22243e109dc0858036c6ac Mon Sep 17 00:00:00 2001 From: serge-sans-paille Date: Fri, 27 Oct 2023 22:48:08 +0200 Subject: [PATCH] [clang] Change GetCharAndSizeSlow interface to by-v

[clang] Perf/lexer faster slow get char and size (PR #70543)

2023-10-28 Thread Timm Baeder via cfe-commits
tbaederr wrote: > Do you have benchmarks? I wonder if we should use a small struct instead of > pair, it would be slightly easier to maintain I think. Looks good otherwise. See the commit: https://github.com/llvm/llvm-project/pull/70543/commits/c9d34dae319de3eed1a23c23ff7b6d7673a04b79 https:/

[clang] Perf/lexer faster slow get char and size (PR #70543)

2023-10-28 Thread via cfe-commits
cor3ntin wrote: Do you have benchmarks? I wonder if we should use a small struct instead of pair, it would be slightly easier to maintain I think. Looks good otherwise. https://github.com/llvm/llvm-project/pull/70543 ___ cfe-commits mailing list cfe-c

[clang] Perf/lexer faster slow get char and size (PR #70543)

2023-10-28 Thread via cfe-commits
https://github.com/serge-sans-paille updated https://github.com/llvm/llvm-project/pull/70543 >From c9d34dae319de3eed1a23c23ff7b6d7673a04b79 Mon Sep 17 00:00:00 2001 From: serge-sans-paille Date: Fri, 27 Oct 2023 22:48:08 +0200 Subject: [PATCH] [clang] Change GetCharAndSizeSlow interface to by-v

[clang] Perf/lexer faster slow get char and size (PR #70543)

2023-10-28 Thread via cfe-commits
https://github.com/serge-sans-paille created https://github.com/llvm/llvm-project/pull/70543 None >From 3fe63f81fcb999681daa11b2890c82fda3aaeef5 Mon Sep 17 00:00:00 2001 From: serge-sans-paille Date: Thu, 26 Oct 2023 22:31:43 +0200 Subject: [PATCH 1/2] [clang] Change representation of CurLexer