ping?
On Thu, Apr 5, 2012 at 5:17 PM, Kostya Serebryany <[email protected]> wrote: > > > On Thu, Apr 5, 2012 at 1:56 PM, Chris Lattner <[email protected]> wrote: > >> >> On Apr 5, 2012, at 10:50 AM, Kostya Serebryany wrote: >> >> >> >> On Thu, Apr 5, 2012 at 10:37 AM, Chris Lattner <[email protected]>wrote: >> >>> >>> On Apr 5, 2012, at 9:43 AM, Kostya Serebryany wrote: >>> >>> > Hello, >>> > >>> > Please review the following patch: >>> > ThreadSanitizer instrumentation relies on TBAA for correctness, so we >>> need to generate TBAA at "-O0 -fthread-sanitizer". >>> >>> This is close, but not the right solution. TBAA can cause a semantic >>> change when enabled (though I admit it is unlikely given that nearly all of >>> the optimizers are disabled at -O0). >>> >>> The right fix is for TSAN to generate *vtable* TBAA info, but not other >>> TBAA info. >>> >> >> Ok... >> Do you mean that we need to check "CodeGenOpts.OptimizationLevel > 0" >> inside CodeGenTBAA methods? >> Or pass a flag to CodeGenTBAA::CodeGenTBAA saying that we need >> only vtable TBAA? >> >> >> The former is probably the right way. >> > > New patch attached, please take a look. > > Alternatively we may create a CodeGenTBAA object unconditionally and check > all the flags > (CodeGenOpts.RelaxedAliasing, CodeGenOpts.OptimizationLevel, > LangOpts.ThreadSanitizer) > inside CodeGenTBAA methods. > > --kcc > > >> >> -Chris >> >> >
tbaa-O0.patch
Description: Binary data
_______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
