[llvm] Add XCOFF object file support in sanitizer coverage tool (PR #179884)
Honey Goyal via llvm-commits
llvm-commits at lists.llvm.org
Wed Feb 18 11:59:43 PST 2026
================
@@ -713,7 +714,23 @@ findSanitizerCovFunctions(const object::ObjectFile &O) {
if (const auto *MO = dyn_cast<object::MachOObjectFile>(&O)) {
findMachOIndirectCovFunctions(*MO, &Result);
}
-
+ if (const auto *XO = dyn_cast<object::XCOFFObjectFile>(&O)) {
+ for (const object::SymbolRef &Symbol : XO->symbols()) {
+ Expected<uint64_t> AddressOrErr = Symbol.getAddress();
+ failIfError(AddressOrErr);
+ uint64_t Address = AddressOrErr.get();
+
+ Expected<StringRef> NameOrErr = Symbol.getName();
+ failIfError(NameOrErr);
+ StringRef Name = NameOrErr.get();
+
+ if (isCoveragePointSymbol(Name) ||
+ (Name.starts_with(".") &&
+ isCoveragePointSymbol(Name.drop_front(1)))) {
+ Result.insert(Address);
+ }
+ }
+ }
----------------
honeygoyal wrote:
Raised NFC PR - [182111](https://github.com/llvm/llvm-project/pull/182111/changes)
https://github.com/llvm/llvm-project/pull/179884
More information about the llvm-commits
mailing list