[libcxx-commits] [PATCH] D148753: [libcxx] move abi symbol checker logic to generic location

Michael Francis via Phabricator via libcxx-commits libcxx-commits at lists.llvm.org
Tue May 2 15:08:21 PDT 2023


francii added a comment.

> I don't think we want to use the top-level `utils/` directory for this, this is closely related to the runtimes. Maybe we could put it under `runtimes/utils?`

Sounds good! I'll update the patch

> I actually don't understand why we even need to filter stdlib symbols. We should be running this on libc++.dylib and observing all the symbols regardless, I think?

I believe so. But currently, `generate_abi_list.py` always removes any non-stdlib symbols for any library that is passed to it (on line 34).

  symbols, _ = libcxx.sym_check.util.filter_stdlib_symbols(symbols)

I need to remove (or at least guard) this line so that we can generate the symbols for the other runtimes as well. I added an argument because as to not break expectations of what this file can do, but I'm also okay with just removing the filter entirely.

> We'll also need to pass the ABI list path to the test somehow

I've noticed that even the name of the ABI list file is dependent on variables defined in CMake during the build/testing phase. My plan is to export the ABI list path to the appropriate lit configs (i.e. `libcxx/test/configs/cmake-bridge.cfg.in` for libc++) so that they can be used as variables for the lit tests.

Thank you for looking at this! I have a (rough) prototype for everything up to the libc++ lit test, so I will include all those changes now and we can go through what works and what doesn't :)


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D148753/new/

https://reviews.llvm.org/D148753



More information about the libcxx-commits mailing list