[all-commits] [llvm/llvm-project] bc588f: [lld/mac] Inline a check

Nico Weber via All-commits all-commits at lists.llvm.org
Mon May 17 17:09:29 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: bc588f9961117d5705e97eb2191e901e92fe9094
      https://github.com/llvm/llvm-project/commit/bc588f9961117d5705e97eb2191e901e92fe9094
  Author: Nico Weber <thakis at chromium.org>
  Date:   2021-05-17 (Mon, 17 May 2021)

  Changed paths:
    M lld/MachO/SyntheticSections.cpp

  Log Message:
  -----------
  [lld/mac] Inline a check

`match()` can only return for non-empty vectors, but at least in
non-LTO builds that isn't clear to the compiler. Help it out.
This is a minor but measurable speedup on my machine (but less
than what we might've lost in https://reviews.llvm.org/D100818#2764272 --
bot note higher N on this measurement here, so higher confidence here):

    % ministat at_main at_branch
    x at_main
    + at_branch
        N           Min           Max        Median           Avg        Stddev
    x  30     3.9243979     4.0395119      3.987375     3.9826236   0.027567796
    +  30     3.8495831     4.0009291      3.931325     3.9347135   0.037832878
    Difference at 95.0% confidence
            -0.0479101 +/- 0.0171102
            -1.20298% +/- 0.429622%
            (Student's t, pooled s = 0.0331007)

No behavior change.

Eventually we should apply these lists at symbol parse time instead of
every time shouldExportSymbol() though :)

Differential Revision: https://reviews.llvm.org/D102655




More information about the All-commits mailing list