Bug 1952248

Summary: update to LLVM 12
Product: Red Hat Enterprise Linux 8 Reporter: Davide Cavalca <davide>
Component: llvm-toolsetAssignee: serge_sans_paille <sguelton>
Status: CLOSED ERRATA QA Contact: Miloš Prchlík <mprchlik>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: CentOS StreamCC: bstinson, carl, jwboyer, mprchlik, tstellar
Target Milestone: betaKeywords: FutureFeature, Triaged
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: llvm-toolset-12.0.0-1.module+el8.5.0+11188+97d2441b Doc Type: No Doc Update
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2021-11-09 18:34:20 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Davide Cavalca 2021-04-21 20:49:58 UTC
CentOS Stream 8 currently ships LLVM 11 as part of the llvm-toolset module. As LLVM is under a "rolling application stream" lifecycle, would it be possible to update it to LLVM 12 (or, alternatively, ship LLVM 12 as an alternate module stream) ? We were considering doing this as part of the CentOS Hyperscale SIG (see https://pagure.io/centos-sig-hyperscale/sig/issue/46), but if we could get LLVM 12 in CentOS Stream proper that would be a lot better. Thanks!

Comment 1 Tom Stellard 2021-04-30 18:18:39 UTC
We are planning to update to LLVM 12 for RHEL 8.5.  I don't know yet when the builds will be ready for CentOS Steam.

Comment 2 Davide Cavalca 2021-05-07 22:01:52 UTC
I put up our work in progress at https://git.centos.org/rpms/llvm/tree/c8s-sig-hyperscale in case it can be useful. This is building fine, but there's a few somewhat worrying test failures that I haven't managed to figure out yet:

Failed Tests (10):
  LLVM-Unit :: IR/./IRTests/CGSCCCallbacksTest.InstrumentedInvalidatingPasses
  LLVM-Unit :: IR/./IRTests/CGSCCCallbacksTest.InstrumentedPasses
  LLVM-Unit :: IR/./IRTests/CGSCCCallbacksTest.InstrumentedSkippedPasses
  LLVM-Unit :: IR/./IRTests/FunctionCallbacksTest.InstrumentedPasses
  LLVM-Unit :: IR/./IRTests/FunctionCallbacksTest.InstrumentedSkippedPasses
  LLVM-Unit :: IR/./IRTests/LoopCallbacksTest.InstrumentedInvalidatingLoopNestPasses
  LLVM-Unit :: IR/./IRTests/LoopCallbacksTest.InstrumentedInvalidatingPasses
  LLVM-Unit :: IR/./IRTests/LoopCallbacksTest.InstrumentedPasses
  LLVM-Unit :: IR/./IRTests/LoopCallbacksTest.InstrumentedSkippedPasses
  LLVM-Unit :: IR/./IRTests/ModuleCallbacksTest.InstrumentedSkippedPasses

You can see the full log in https://cbs.centos.org/koji/taskinfo?taskID=2483905

Comment 3 Davide Cavalca 2021-05-08 00:07:29 UTC
clang is also up at https://git.centos.org/rpms/clang/tree/c8s-sig-hyperscale and being built in https://cbs.centos.org/koji/taskinfo?taskID=2483917

Comment 4 Tom Stellard 2021-05-08 04:12:27 UTC
(In reply to Davide Cavalca from comment #2)
> I put up our work in progress at
> https://git.centos.org/rpms/llvm/tree/c8s-sig-hyperscale in case it can be
> useful. This is building fine, but there's a few somewhat worrying test
> failures that I haven't managed to figure out yet:
> 
> Failed Tests (10):
>   LLVM-Unit :: IR/./IRTests/CGSCCCallbacksTest.InstrumentedInvalidatingPasses
>   LLVM-Unit :: IR/./IRTests/CGSCCCallbacksTest.InstrumentedPasses
>   LLVM-Unit :: IR/./IRTests/CGSCCCallbacksTest.InstrumentedSkippedPasses
>   LLVM-Unit :: IR/./IRTests/FunctionCallbacksTest.InstrumentedPasses
>   LLVM-Unit :: IR/./IRTests/FunctionCallbacksTest.InstrumentedSkippedPasses
>   LLVM-Unit ::
> IR/./IRTests/LoopCallbacksTest.InstrumentedInvalidatingLoopNestPasses
>   LLVM-Unit :: IR/./IRTests/LoopCallbacksTest.InstrumentedInvalidatingPasses
>   LLVM-Unit :: IR/./IRTests/LoopCallbacksTest.InstrumentedPasses
>   LLVM-Unit :: IR/./IRTests/LoopCallbacksTest.InstrumentedSkippedPasses
>   LLVM-Unit :: IR/./IRTests/ModuleCallbacksTest.InstrumentedSkippedPasses
> 
> You can see the full log in
> https://cbs.centos.org/koji/taskinfo?taskID=2483905

We've been blocked on the RHEL8 builds for a while trying to fix a different miscompile.  We have a fix now for that miscompile: https://reviews.llvm.org/D101972, and I think that this patch may also fix the failures you are seeing.

Comment 5 Davide Cavalca 2021-05-09 22:18:16 UTC
Thanks! That seems to have worked, and all tests are now passing. Updated builds:
- llvm: https://cbs.centos.org/koji/buildinfo?buildID=32870
- clang: https://cbs.centos.org/koji/buildinfo?buildID=32871

We'll try these out next week and report back.

Comment 8 Miloš Prchlík 2021-06-28 09:08:33 UTC
Verified with llvm-toolset-rhel8-8050020210609075550.b4937e53, llvm-12.0.0-6.3.hs.el8, clang-12.0.0-1.3.hs.el8.

Comment 9 Carl George 🤠 2021-06-30 23:55:17 UTC
llvm-toolset:rhel8 in CS8 has been updated to llvm and clang 12.

Comment 12 errata-xmlrpc 2021-11-09 18:34:20 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory (llvm-toolset:rhel8 bug fix and enhancement update), and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHEA-2021:4233