[compiler-rt] r300897 - Enable lsan test suite on Darwin x86_64 builds

Ahmed Bougacha via llvm-commits llvm-commits at lists.llvm.org
Tue Apr 25 16:40:14 PDT 2017


On Tue, Apr 25, 2017 at 4:32 PM, Francis Ricci <francisjricci at gmail.com> wrote:
> Yeah, kuba was able to root-cause on 10.11, it'll be a tricky fix, but we're
> working on it.

Great!  I'll let you folks figure it out.

-Ahmed

>
> On Tue, Apr 25, 2017, 4:30 PM Ahmed Bougacha <ahmed.bougacha at gmail.com>
> wrote:
>>
>> On Fri, Apr 21, 2017 at 8:14 AM, Francis Ricci <francisjricci at gmail.com>
>> wrote:
>> > Hi Ahmed - not sure how familiar you are with this buildbot, but it
>> > appears to be running on out-of-date code. Looking at the source
>> > browser here:
>> > http://green.lab.llvm.org/green/job/clang-stage1-configure-RA/ws/compiler-rt.src/lib/lsan/lsan_common_mac.cc,
>> > the file is not up-to-date with llvm master, and does not have all the
>> > required code to pass the tests I enabled. Any idea why this would be
>> > the case?
>>
>> I don't think it's showing the current sources (for boring jenkins
>> reasons the 'workspace' link isn't always accurate, but Mike tells me
>> that's gradually being fixed).
>>
>> But I haven't been able to reproduce locally though.  The bots run on
>> 10.11.6, so I also tried running the test (built on 10.12) there, and
>> it's also succeeding.
>>
>> I filed PR32796, I'll try to find out more.
>>
>> -Ahmed
>>
>> > On Thu, Apr 20, 2017 at 8:22 PM, Francis Ricci <francisjricci at gmail.com>
>> > wrote:
>> >> Thanks - things didn't fail on my local machine, but I'll attempt to
>> >> repro
>> >> with the buildbot config.
>> >>
>> >>
>> >> On Thu, Apr 20, 2017, 8:15 PM Ahmed Bougacha <ahmed.bougacha at gmail.com>
>> >> wrote:
>> >>>
>> >>> Hi Francis,
>> >>>
>> >>> I reverted this in r300929, as most lsan/asan tests are now failing on
>> >>> darwin.
>> >>> See e.g.,
>> >>>
>> >>> http://green.lab.llvm.org/green/job/clang-stage1-configure-RA_check/30443/
>> >>> -Ahmed
>> >>>
>> >>>
>> >>> On Thu, Apr 20, 2017 at 2:27 PM, Francis Ricci via llvm-commits
>> >>> <llvm-commits at lists.llvm.org> wrote:
>> >>> > Author: fjricci
>> >>> > Date: Thu Apr 20 16:27:25 2017
>> >>> > New Revision: 300897
>> >>> >
>> >>> > URL: http://llvm.org/viewvc/llvm-project?rev=300897&view=rev
>> >>> > Log:
>> >>> > Enable lsan test suite on Darwin x86_64 builds
>> >>> >
>> >>> > Reviewers: kubamracek, alekseyshl
>> >>> >
>> >>> > Subscribers: mgorny, llvm-commits
>> >>> >
>> >>> > Differential Revision: https://reviews.llvm.org/D32191
>> >>> >
>> >>> > Modified:
>> >>> >     compiler-rt/trunk/cmake/config-ix.cmake
>> >>> >     compiler-rt/trunk/test/asan/lit.cfg
>> >>> >     compiler-rt/trunk/test/lsan/lit.common.cfg
>> >>> >
>> >>> > Modified: compiler-rt/trunk/cmake/config-ix.cmake
>> >>> > URL:
>> >>> >
>> >>> > http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/cmake/config-ix.cmake?rev=300897&r1=300896&r2=300897&view=diff
>> >>> >
>> >>> >
>> >>> > ==============================================================================
>> >>> > --- compiler-rt/trunk/cmake/config-ix.cmake (original)
>> >>> > +++ compiler-rt/trunk/cmake/config-ix.cmake Thu Apr 20 16:27:25 2017
>> >>> > @@ -476,7 +476,7 @@ else()
>> >>> >  endif()
>> >>> >
>> >>> >  if (COMPILER_RT_HAS_SANITIZER_COMMON AND LSAN_SUPPORTED_ARCH AND
>> >>> > -    OS_NAME MATCHES "Linux|FreeBSD")
>> >>> > +    OS_NAME MATCHES "Darwin|Linux|FreeBSD")
>> >>> >    set(COMPILER_RT_HAS_LSAN TRUE)
>> >>> >  else()
>> >>> >    set(COMPILER_RT_HAS_LSAN FALSE)
>> >>> >
>> >>> > Modified: compiler-rt/trunk/test/asan/lit.cfg
>> >>> > URL:
>> >>> >
>> >>> > http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/test/asan/lit.cfg?rev=300897&r1=300896&r2=300897&view=diff
>> >>> >
>> >>> >
>> >>> > ==============================================================================
>> >>> > --- compiler-rt/trunk/test/asan/lit.cfg (original)
>> >>> > +++ compiler-rt/trunk/test/asan/lit.cfg Thu Apr 20 16:27:25 2017
>> >>> > @@ -38,6 +38,11 @@ if config.host_os == 'Darwin':
>> >>> >    # Also, make sure we do not overwhelm the syslog while testing.
>> >>> >    default_asan_opts = 'abort_on_error=0'
>> >>> >    default_asan_opts += ':log_to_syslog=0'
>> >>> > +
>> >>> > +  # On Darwin, leak checking is not enabled by default. Enable for
>> >>> > x86_64
>> >>> > +  # tests to prevent regressions
>> >>> > +  if config.target_arch == 'x86_64':
>> >>> > +    default_asan_opts += ':detect_leaks=1'
>> >>> >  elif config.android:
>> >>> >    # The same as on Darwin, we default to "abort_on_error=1" which
>> >>> > slows
>> >>> > down
>> >>> >    # testing. Also, all existing tests are using "not" instead of
>> >>> > "not
>> >>> > --crash"
>> >>> > @@ -217,7 +222,9 @@ if re.search('mthumb', config.target_cfl
>> >>> >    config.available_features.add('fast-unwinder-works')
>> >>> >
>> >>> >  # Turn on leak detection on 64-bit Linux.
>> >>> > -if config.host_os == 'Linux' and (config.target_arch == 'x86_64' or
>> >>> > config.target_arch == 'i386'):
>> >>> > +leak_detection_linux = (config.host_os == 'Linux') and
>> >>> > (config.target_arch == 'x86_64' or config.target_arch == 'i386')
>> >>> > +leak_detection_mac = (config.host_os == 'Darwin') and
>> >>> > (config.target_arch == 'x86_64')
>> >>> > +if leak_detection_linux or leak_detection_mac:
>> >>> >    config.available_features.add('leak-detection')
>> >>> >
>> >>> >  # Set LD_LIBRARY_PATH to pick dynamic runtime up properly.
>> >>> >
>> >>> > Modified: compiler-rt/trunk/test/lsan/lit.common.cfg
>> >>> > URL:
>> >>> >
>> >>> > http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/test/lsan/lit.common.cfg?rev=300897&r1=300896&r2=300897&view=diff
>> >>> >
>> >>> >
>> >>> > ==============================================================================
>> >>> > --- compiler-rt/trunk/test/lsan/lit.common.cfg (original)
>> >>> > +++ compiler-rt/trunk/test/lsan/lit.common.cfg Thu Apr 20 16:27:25
>> >>> > 2017
>> >>> > @@ -67,8 +67,10 @@ config.substitutions.append( ("%clangxx
>> >>> >  config.substitutions.append( ("%clang_lsan ",
>> >>> > build_invocation(clang_lsan_cflags)) )
>> >>> >  config.substitutions.append( ("%clangxx_lsan ",
>> >>> > build_invocation(clang_lsan_cxxflags)) )
>> >>> >
>> >>> > -# LeakSanitizer tests are currently supported on x86-64 Linux, arm
>> >>> > Linux and mips64 Linux only.
>> >>> > -if config.host_os not in ['Linux'] or config.host_arch not in
>> >>> > ['x86_64', 'mips64', 'arm', 'armhf', 'armv7l']:
>> >>> > +# LeakSanitizer tests are currently supported on x86-64 Linux, arm
>> >>> > Linux, mips64 Linux, and x86_64 Darwin
>> >>> > +supported_linux = config.host_os in ['Linux'] and config.host_arch
>> >>> > in
>> >>> > ['x86_64', 'mips64', 'arm', 'armhf', 'armv7l']
>> >>> > +supported_darwin = config.host_os is 'Darwin' and
>> >>> > config.target_arch is
>> >>> > 'x86_64'
>> >>> > +if not (supported_linux or supported_darwin):
>> >>> >    config.unsupported = True
>> >>> >
>> >>> >  # Don't support Thumb due to broken fast unwinder
>> >>> >
>> >>> >
>> >>> > _______________________________________________
>> >>> > llvm-commits mailing list
>> >>> > llvm-commits at lists.llvm.org
>> >>> > http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits


More information about the llvm-commits mailing list