-
Notifications
You must be signed in to change notification settings - Fork 1.5k
Failures with root 6.24.00 on Fedora 33 ppc64le #8072
Description
Describe the bug
There are several issues when compiling root 6.24.00 on ppc64le.
-
The fix for the altivec __vector keyword that was previously backported (from LLVM 10) was lost in the LLVM 9 upgrade (Fix ppc64le compilation with gcc 10 #8069).
-
After fixing that, running root 6.24.00 on ppc64le fails with an assert:
assert(TM->getCodeModel() >= CodeModel::Large); -
Trying to request the large code model rather than assert fail (ellert@a71528c) does not work. The build fails with a segmentation fault at the very end of the build when the hsimple.C macro is run to create the hsimple.root file.
-
Testing to run with the default code model (i.e. neither trying to change to the large model, nor assert if the model is not the large one) avoids the segmentation fault above, but many tests fail with:
Relocation R_PPC64_REL32 overflow
UNREACHABLE executed at /builddir/build/BUILD/root-6.24.00/interpreter/llvm/src/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp:800!
So it really needs the large code model.
Enabling the large code model for ppc64le did not result in a segmentation fault in previous versions of root, so this is a regression.
Expected behavior
Working root on ppc64le
To Reproduce
Compile root 6.24.00 for ppc64le
Setup
- ROOT version: 6.24.00
- Operating system: Fedora Linux 33