6 Commits

Author SHA1 Message Date
Louis Dionne
7ce6a94c61
[libc++] Add a script to produce benchmarks for LNT (#175594)
This patch adds a script to run a subset of libc++'s benchmarks for
uploading to LNT.

As part of this patch the test-at-commit script is modified to no longer
build the library itself. Indeed, this provides the necessary
flexibility to run the test suite multiple times on the same built
library, and also addresses previous concerns where test-at-commit
couldn't customize how the library is being built.
2026-01-20 09:57:37 -05:00
Louis Dionne
c8afc6a12d [libc++] Fix a few incorrect find-and-replace in the %{temp} change 2025-10-09 21:17:28 -04:00
Aiden Grossman
0c2913afc8
[libcxx] Use %{temp} instead of %T (#162323)
Based on review feedback in #160026.

This makes the substitution a lot more clear now that there is no
documentation around %T.

---------

Co-authored-by: Louis Dionne <ldionne.2@gmail.com>
2025-10-09 16:52:42 -07:00
Louis Dionne
91b05845bc [libc++] Add a tool to produce historical libc++ benchmark results
This is extremely useful for analysis purposes like finding regressions.
The ability to run such historical analysis locally is extremely useful
for doing quick investigations that may involve non-mainstream libc++
configurations.
2025-09-18 17:55:25 -04:00
Louis Dionne
d2f67c3bf7 [libc++] Make sure we forward the git repository from test-at-commit to build-at-commit 2025-09-11 18:13:07 -04:00
Louis Dionne
8cbd8f044b
[libc++] Add scripts to build and test libc++ at a specified commit (#158104)
This is useful to perform historical analyses, bisections or establish a
benchmarking baseline after making some changes on a branch. For
example, one can run benchmarks against `main` and easily compare them
to the results on the current feature branch with:

    libcxx/utils/test-at-commit --commit $(git merge-base main HEAD) \
                                -B build/baseline -- <lit args>
    libcxx/utils/libcxx-lit build/candidate <lit args>
    libcxx/utils/compare-benchmarks \
        <(libcxx/utils/consolidate-benchmarks build/baseline) \
        <(libcxx/utils/consolidate-benchmarks build/candidate)

Doing this without these scripts would require checking out the desired
baseline, setting up the build directory and running the tests manually.
With these scripts, this can automatically be automated without dirtying
the current checkout.
2025-09-11 12:14:41 -04:00