[clang] [clang] Unique the QualType-keyed type pools in a UniquingSet. NFC (PR #221850)

Fangrui Song via cfe-commits cfe-commits at lists.llvm.org
Mon Sep 7 16:50:55 PDT 2026


MaskRay wrote:

Similar to https://github.com/llvm/llvm-project/pull/221620#issuecomment-5567840994

% ct_table.rb 'https://llvm-compile-time-tracker.com/compare.php?from=45930cef5214e430aa7424cacb07e374a07ead12&to=a019abb9c135b3a6255adbd7d93fdd9119c5b3f0&stat=instructions:u'
CTMark geomean `instructions:u`: ๐ŸŸข 6 improved (best -0.08%) ยท 2 within noise.

| Config                | instructions:u |   ฯƒ | max-rss |
| :-------------------- | -------------: | --: | ------: |
| stage1-O3             |  ๐ŸŸข **-0.04%** | 4.1 |  +0.16% |
| stage1-ReleaseThinLTO |  ๐ŸŸข **-0.04%** | 3.7 |  -0.17% |
| stage1-ReleaseLTO-g   |         -0.03% | 2.4 |  +0.04% |
| stage1-O0-g           |  ๐ŸŸข **-0.08%** | 5.1 |  +0.02% |
| stage1-aarch64-O3     |  ๐ŸŸข **-0.03%** | 3.0 |  +0.09% |
| stage1-aarch64-O0-g   |  ๐ŸŸข **-0.07%** | 3.4 |  -0.09% |
| stage2-O3             |         -0.04% | 2.1 |  +0.05% |
| stage2-O0-g           |  ๐ŸŸข **-0.08%** | 3.7 |  +0.09% |

Building clang itself (stage2, ThinLTO):

| Metric             |       Old |       New |             ฮ” |   ฯƒ |
| :----------------- | --------: | --------: | ------------: | --: |
| instructions:u     | 19123148M | 19107846M | ๐ŸŸข **-0.08%** | 3.8 |
| wall-time          |   326.61s |   327.96s |        +0.41% | 0.5 |
| size-file          | 136939KiB | 136935KiB |        -0.00% |   โˆž |
| size-file (stage1) | 155034KiB | 155034KiB |         0.00% | 0.0 |

<details><summary>Per-benchmark <code>instructions:u</code> (bold = beyond noise)</summary>

| Benchmark        |      s1-O3 | s1-ThinLTO |   s1-LTO-g |    s1-O0-g |  s1-a64-O3 | s1-a64-O0-g |      s2-O3 |    s2-O0-g |
| :--------------- | ---------: | ---------: | ---------: | ---------: | ---------: | ----------: | ---------: | ---------: |
| kimwitu++        |     -0.03% |     -0.09% |     -0.09% |     -0.16% |     -0.03% |      -0.07% |     -0.08% |     -0.10% |
| sqlite3          |     -0.03% |     -0.02% |     +0.02% |     -0.03% |     -0.00% |      -0.06% |     +0.00% |     -0.04% |
| consumer-typeset | **-0.04%** |     -0.01% |     -0.02% | **-0.06%** |     -0.03% |      -0.04% |     -0.01% | **-0.05%** |
| Bullet           | **-0.11%** | **-0.11%** | **-0.11%** | **-0.19%** | **-0.13%** |      -0.15% | **-0.12%** | **-0.20%** |
| tramp3d-v4       |     -0.10% |     -0.03% |     -0.01% |     -0.08% |     -0.03% |      -0.15% |     -0.07% |     -0.10% |
| mafft            |     -0.00% |     -0.01% | **-0.12%** | **-0.10%** |     -0.02% |      -0.07% |     -0.02% | **-0.09%** |
| ClamAV           |     -0.01% |     -0.01% |     +0.01% | **-0.05%** |     -0.01% |      -0.02% |     -0.01% | **-0.05%** |
| lencod           |     -0.03% | **-0.04%** |     +0.02% | **-0.05%** |     -0.02% |      -0.05% |     -0.01% | **-0.05%** |
| SPASS            |     -0.03% |     -0.01% |     +0.02% |     -0.04% |     -0.02% |      -0.03% |     -0.03% |     -0.07% |
| 7zip             |     -0.06% |     -0.03% |     -0.03% |     -0.07% |     -0.05% |      -0.04% |     -0.06% |     -0.05% |
| **geomean**      | **-0.04%** | **-0.04%** |     -0.03% | **-0.08%** | **-0.03%** |  **-0.07%** |     -0.04% | **-0.08%** |

</details>

[Compile-time tracker](https://llvm-compile-time-tracker.com/compare.php?from=45930cef5214e430aa7424cacb07e374a07ead12&to=a019abb9c135b3a6255adbd7d93fdd9119c5b3f0&stat=instructions%3Au) ยท [`45930ce` โ†’ `a019abb`](https://github.com/llvm/llvm-project/compare/45930cef5214e430aa7424cacb07e374a07ead12...a019abb9c135b3a6255adbd7d93fdd9119c5b3f0) ยท ๐ŸŸข/๐Ÿ”ด = |ฮ”| โ‰ฅ 3ฯƒ of the tracker's measured run-to-run noise, reported as ฯƒ for `instructions:u`.

https://github.com/llvm/llvm-project/pull/221850


More information about the cfe-commits mailing list