[PATCH] D43080: Adding Msan support to FreeBSD

David CARLIER via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sat Feb 10 06:56:26 PST 2018


devnexen added inline comments.


================
Comment at: test/msan/tzset.cc:2
 // RUN: %clangxx_msan -O0 %s -o %t && %run %t
+// UNSUPPORTED: freebsd
 
----------------
devnexen wrote:
> krytarowski wrote:
> > devnexen wrote:
> > > krytarowski wrote:
> > > > devnexen wrote:
> > > > > krytarowski wrote:
> > > > > > devnexen wrote:
> > > > > > > krytarowski wrote:
> > > > > > > > devnexen wrote:
> > > > > > > > > krytarowski wrote:
> > > > > > > > > > devnexen wrote:
> > > > > > > > > > > krytarowski wrote:
> > > > > > > > > > > > Why unsupported?
> > > > > > > > > > > Those are not set in FreeBSD thus giving segfaults.
> > > > > > > > > > What does it mean in detail? tzset() under MSan emits SIGSEGV?
> > > > > > > > > > 
> > > > > > > > > > Broken tests should be marked as XFAIL.
> > > > > > > > > Yes indeed the sanitizer emits the message.
> > > > > > > > I have a pending patch for tzset() in D42050.. maybe it helps?
> > > > > > > Seems it does fix it indeed. Either I still put it as UNSUPPORTED/XFAIL or making it as SUPPORTED waiting your patch going through first.
> > > > > > Please help me to upstream it!
> > > > > Done hopefully it will go through quickly.
> > > > Thanks! There are few mores I need help. Would you like to help me with D40714? It fails for some reason on Linux - I don't have this OS handy to investigate.
> > > > 
> > > > D41013 - here we might share a common FreeBSD & NetBSD solution to this test.
> > > About D40714 I ve tried and indeed it fails, maybe the solution is to intercept atexit on everything but Linux (maybe it works ok on Android ?).
> > There is very similar code for TSan and it works.
> The wrappers are identical that s right, I m still pretty new into LLVM but I see the atexit call treatment is different in Tsan than in Msan (in msan it s really called).
In fact locally I transformed the INTERCEPTOR of atexit to a MSAN_MAYBE_INTERCEPT part this is the only way the tests pass.


Repository:
  rCRT Compiler Runtime

https://reviews.llvm.org/D43080





More information about the llvm-commits mailing list