[9.0.0 Release] Release Candidate 4 is here

Hello again,

9.0.0-rc4 was just tagged from the release_90 branch at r371490. In
the Git monorepo, it's tagged as llvmorg-9.0.0-rc4.

Source code and docs are available at
https://prereleases.llvm.org/9.0.0/#rc4 Binaries will be added as they
become available.

There are not a lot of changes from rc3 to rc4, and there are again no
open release blockers, so I'm hoping this will be the last release
candidate and that we can tag the final release soon.

Please file bug reports for any issues you find, marking them blocking
of https://llvm.org/PR42474

Release testers, please run the test script, share your results, and
upload binaries.

Thanks,
Hans

Windows is ready:

$ sha256sum *9.0.0-rc4*.exe
3fbe759ff5fd0a6391ee2d02311b4a88dc025106a9477fa7f6d75c3f462a64b8
LLVM-9.0.0-rc4-win32.exe
d3ce788ce0a006b129b86723a97d1608214ab0fc61df901f202017efca0d4c79
LLVM-9.0.0-rc4-win64.exe

They were built with the attached batch file.

build_llvm_900-rc4.bat|attachment (5.58 KB)

Just ran

./test-release.sh
-release 9.0.0
-rc 4
-test-asserts
-no-compare-files
-triple x86_64-pc-linux-gnu
-configure-flags "-DLLVM_ENABLE_LIBPFM=OFF -DRUN_HAVE_GNU_POSIX_REGEX=0 -DRUN_HAVE_THREAD_SAFETY_ATTRIBUTES=0

obtained

Validating llvm SVN URL

Validating cfe SVN URL

Validating clang-tools-extra SVN URL

Validating compiler-rt SVN URL

Validating libcxx SVN URL

Validating libcxxabi SVN URL

Validating libunwind SVN URL

Validating test-suite SVN URL

test-suite does not have a tags/RELEASE_900/rc4 branch/tag!

Regards, Neil Nelson

Hi Hans,

Unfortunately, I have discovered a regression from an earlier release
candidate: https://bugs.llvm.org/show_bug.cgi?id=43268

I found this when trying to build glibc 2.30 from source with clang,
albeit not with the official glibc build script.

Regards,
Andrew

Just ran

./test-release.sh \
     -release 9.0.0 \
     -rc 4 \
     -test-asserts \
     -no-compare-files \
     -triple x86_64-pc-linux-gnu \
     -configure-flags "-DLLVM_ENABLE_LIBPFM=OFF -DRUN_HAVE_GNU_POSIX_REGEX=0 -DRUN_HAVE_THREAD_SAFETY_ATTRIBUTES=0

obtained

# Validating llvm SVN URL
# Validating cfe SVN URL
# Validating clang-tools-extra SVN URL
# Validating compiler-rt SVN URL
# Validating libcxx SVN URL
# Validating libcxxabi SVN URL
# Validating libunwind SVN URL
# Validating test-suite SVN URL
test-suite does not have a tags/RELEASE_900/rc4 branch/tag!

Very strange. I see the tag here:

http://llvm.org/viewvc/llvm-project?view=revision&revision=371500

And I didn't get any error when creating the source tarballs. Maybe
the server dropped the connection or something?

I obtained the error twice and after about 15 minutes, after notifying the
list it was corrected. At the time I was thinking how conscientiously the LLVM
staff monitored the list but as you note it could have been from loose
connections somewhere.

Regards, Neil Nelson

So I've done a bit more testing this time, that included: Gentoo/amd64,
32-bit multilib on Gentoo/amd64 (only LLVM, Clang and runtimes)
and NetBSD/amd64 (LLVM, Clang with tests, everything else build-only).

There are no regressions since previous RC. However, I've found one new
regression from 8.* (sorry!). To summarize:

1. Stand-alone clang builds are broken when clang-tools-extra is not
built: bug [1], patch [2]. If you don't want to include it at this
point, I'm just going to carry it downstream.

2. The apparent license incompatibility problem in LLVM is still not
resolved [3].

3. LLDB fails many tests on Gentoo, as usual.

[1] https://bugs.llvm.org/show_bug.cgi?id=43281
[2] https://reviews.llvm.org/D67452
[3] https://reviews.llvm.org/D66390

Uploaded SLES11 and Ubuntu 16 binaries:

1c7895122974828c678f7059e0427d0228ab41e5 clang+llvm-9.0.0-rc4-x86_64-linux-sles11.3.tar.xz
d23219bc416afdf2a7eff11490dfb497001dc3a4 clang+llvm-9.0.0-rc4-x86_64-linux-gnu-ubuntu-16.04.tar.xz

Hi,

Uploaded
86efbad6d8677c64d057d92e1dd144988dee68f7a0faa84e5d12f1b59ded0e4f
clang+llvm-9.0.0-rc4-armv7a-linux-gnueabihf.tar.xz
eb37ced0868066fdf21a1539c61081b1b6e87f2fc6da58aa282230728329f80a
clang+llvm-9.0.0-rc4-aarch64-linux-gnu.tar.xz

Both seem fine.

Cheers,
Diana

Xubuntu/Ubuntu 19.04, uploaded

sha256sum clang+llvm-9.0.0-rc4-x86_64-pc-linux-gnu.tar.xz
47a204e1f6d32b443001acb97e65b603de8eec9b493ca5b1f66c88a367d605dc

grep fail in logs
deferred_errors.log:[Release+Asserts Phase3] check-all failed
testing.9.0.0-rc4.log:-- Performing Test HAVE_THREAD_SAFETY_ATTRIBUTES – failed to compile
testing.9.0.0-rc4.log:-- Performing Test HAVE_GNU_POSIX_REGEX – failed to compile
testing.9.0.0-rc4.log:[Release+Asserts Phase3] check-all failed
testing.9.0.0-rc4.log:-- Performing Test HAVE_THREAD_SAFETY_ATTRIBUTES – failed to compile
testing.9.0.0-rc4.log:-- Performing Test HAVE_GNU_POSIX_REGEX – failed to compile

Neil Nelson

For this rc, I used two patches, from:

* https://bugs.llvm.org/show_bug.cgi?id=42892 - After r356631, Sanitizer-i386-Test faills to link on FreeBSD
* https://bugs.llvm.org/show_bug.cgi?id=42894 - FreeBSD needs -pthread link flag for dynamic ASan tests

Uploaded:

SHA256 (clang+llvm-9.0.0-rc4-amd64-unknown-freebsd11.tar.xz) = e3ec34f97c26b0cae6833f8c565b011c3a111880da5191f131e2491bcace6960
SHA256 (clang+llvm-9.0.0-rc4-i386-unknown-freebsd11.tar.xz) = 39e9d341838d8966c187ad4baccc2f7ddc45cb3d0dbb76f46098e1963c4b9f31

Main test results on amd64-freebsd11:

Thanks for catching this! The fix is now on the release branch and
will whip in rc5 soon.

> Hello again,
>
> 9.0.0-rc4 was just tagged from the release_90 branch at r371490. In
> the Git monorepo, it's tagged as llvmorg-9.0.0-rc4.
>

So I've done a bit more testing this time, that included: Gentoo/amd64,
32-bit multilib on Gentoo/amd64 (only LLVM, Clang and runtimes)
and NetBSD/amd64 (LLVM, Clang with tests, everything else build-only).

Many thanks for all the testing!

There are no regressions since previous RC. However, I've found one new
regression from 8.* (sorry!). To summarize:

1. Stand-alone clang builds are broken when clang-tools-extra is not
built: bug [1], patch [2]. If you don't want to include it at this
point, I'm just going to carry it downstream.

I've commented on the bug. I'd prefer not to merge it at this point,
and instead let it go into 9.0.1. Hopefully it's not too much trouble
to carry it downstream in the meantime.

2. The apparent license incompatibility problem in LLVM is still not
resolved [3].

I can't help with this.

3. LLDB fails many tests on Gentoo, as usual.

LLDB tests failing seems to be the norm, and is not a release blocker.

Thanks! I'll get these posted shortly.

Thanks! I'll get these posted.

Thanks! I'll get this posted on the web site.

The "Performing Test ... failed to compile" failures from cmake are
not interesting. But could you look in the log file and try to see
what were the tests that failed in the "check-all" step?

Thanks! Posted these on the web page now.

Toward the end of testing.9.0.0-rc4.log.

Testing: 0 … 10… 20.
FAIL: Clang Tools :: clang-tidy/run-clang-tidy.cpp (17057 of 64198)
******************** TEST ‘Clang Tools :: clang-tidy/run-clang-tidy.cpp’ FAILED ********************
Script:

It may be that the ‘not’ operator is not being found under bash at

: ‘RUN: at line 12’; not

Perhaps this is would be better as the more commonly seen ‘!’.

Neil Nelson

There are lots of test using "not" so I don't think that's the problem.

In any case, thanks for digging out the test failure. I don't think
this is severe enough to treat as a blocker though.

Thanks,
Hans