This is an archive of the discontinued LLVM Phabricator instance.

[compiler-rt][profile] Compile as C++
AbandonedPublic

Authored by abrachet on Jan 27 2022, 5:13 PM.

Details

Summary

Moving to C++ can in the future allow for less duplicated code across the runtimes, in particular allows using sanitizer_common. This move was discussed on the mailing list https://lists.llvm.org/pipermail/llvm-dev/2021-July/151789.html

Diff Detail

Event Timeline

abrachet created this revision.Jan 27 2022, 5:13 PM
abrachet requested review of this revision.Jan 27 2022, 5:13 PM

Thank you for doing this! While this change looks fairly straightforward, I still think it'd be great to have a check in place to ensure that the ABI of libclang_rt.profile.a doesn't change prior to landing this change.

To do this, we could generate a list of exported symbols and compare it against a golden file that's checked into the repository.

Ideally, we would use llvm-ifs for that purpose, but that tool doesn't yet support static archives. I'm wondering if we could reuse https://github.com/llvm/llvm-project/tree/main/libcxx/utils/libcxx/sym_check in the meantime?

abrachet abandoned this revision.Feb 27 2022, 4:39 PM

Going to abandon while waiting for llvm-ifs to support static archives