This is an archive of the discontinued LLVM Phabricator instance.

[asan] Unconditionally enable GC of globals on COFF
ClosedPublic

Authored by eugenis on Apr 25 2017, 5:35 PM.

Details

Summary

This change restores pre-r301225 behavior, where linker GC compatible global
instrumentation was used on COFF targets disregarding -f(no-)data-sections and/or
/Gw flags.

This instrumentation puts each global in a COMDAT with an ASan descriptor for that global.
It effectively enables -fdata-sections, but limits it to ASan-instrumented globals.

Diff Detail

Repository
rL LLVM

Event Timeline

eugenis created this revision.Apr 25 2017, 5:35 PM
eugenis edited the summary of this revision. (Show Details)Apr 25 2017, 5:48 PM
eugenis added a reviewer: pcc.

Apparently the ODR detector in Asan on Windows has issues with full data-sections. This way we can have limited GC for user globals.

eugenis accepted this revision.Apr 26 2017, 1:45 PM
This revision is now accepted and ready to land.Apr 26 2017, 1:45 PM
eugenis closed this revision.Apr 26 2017, 1:45 PM