vitalybuka added a comment. I simplified this a little bit, but I guess this is effectively the same.
================ Comment at: clang/lib/CodeGen/CodeGenModule.cpp:2767-2781 + if (NoSanitizeL.containsGlobal(LangOpts.Sanitize.Mask, GV->getName(), Category)) return true; - if (NoSanitizeL.containsLocation(EnabledAsanMask, Loc, Category)) + if (NoSanitizeL.containsLocation(LangOpts.Sanitize.Mask, Loc, Category)) return true; // Check global type. if (!Ty.isNull()) { // Drill down the array types: if global variable of a fixed type is ---------------- can this lines be landed separately? ================ Comment at: clang/lib/CodeGen/SanitizerMetadata.cpp:44 + if (CGM.isInNoSanitizeList(GV, Loc, Ty)) + Meta.NoSanitize = true; ---------------- it's incorrect as is isInNoSanitizeList is sanitizer specific we need to add isInNoSanitizeList version which return relevant SanitizerMask ================ Comment at: clang/lib/CodeGen/SanitizerMetadata.cpp:69 + SanitizerKind::KernelAddress)) { + Meta.IsDynInit = IsDynInit && !CGM.isInNoSanitizeList(GV, Loc, Ty, "init"); + } ---------------- Why don't we care about IsExcluded here? Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D126929/new/ https://reviews.llvm.org/D126929 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits