Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[CLANG]Update llvm to tag 19.1.6 #9585

Open
wants to merge 1 commit into
base: IB/CMSSW_15_0_X/clang
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 5 additions & 4 deletions clang-uml.spec
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
### RPM external clang-uml 0.5.2
### RPM external clang-uml 0.5.6

%define tag cd6dce2b0b34d55534d3de512ab088b9ad71bc76
%define tag 5e8d35f181d1818310fb337e133e9d7600280e1f
%define branch master

%define github_user bkryza
Source: git+https://github.com/%{github_user}/clang-uml.git?obj=%{branch}/%{tag}&export=%{n}-%{realversion}&output=/%{n}-%{realversion}-%{tag}.tgz
BuildRequires: cmake ninja
Requires: yaml-cpp llvm zlib
Requires: yaml-cpp llvm zlib zstd libxml2

%prep
%setup -n %{n}-%{realversion}
Expand All @@ -28,7 +28,8 @@ cmake ../%{n}-%{realversion} \
-DCMAKE_CXX_FLAGS="-Wno-sign-compare" \
%endif
-DGIT_VERSION="%{realversion}" \
-DCMAKE_PREFIX_PATH="${YAML_CPP_ROOT}/lib64/cmake/yaml-cpp;${ZLIB_ROOT}"
-DCMAKE_EXE_LINKER_FLAGS="-L${YAML_CPP_ROOT}/lib64" \
-DCMAKE_PREFIX_PATH="%{cmake_prefix_path}"

ninja -v %{makeprocesses}

Expand Down
11 changes: 5 additions & 6 deletions llvm.spec
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
### RPM external llvm 18.1.6
### RPM external llvm 19.1.6
## INITENV +PATH LD_LIBRARY_PATH %{i}/lib64
## INITENV +PATH PYTHON3PATH %{i}/lib64/python%{cms_python3_major_minor_version}/site-packages

BuildRequires: cmake ninja
Requires: gcc zlib python3 libxml2 zstd
%{!?without_cuda:Requires: cuda}

%define llvmCommit 02c7568fc9f555b2c72fc169c8c68e2116d97382
%define llvmBranch cms/release/18.x/1118c2e
%define iwyuCommit 377eaef70cdda47368939f4d9beabfabe3f628f0
%define iwyuBranch clang_18
%define llvmCommit 8b7cd04d9c367791750225cd6083b1bb02a1a944
%define llvmBranch cms/release/19.x/e21dc4b
%define iwyuCommit 30e221fad0967aa6bcb279600127748ed3dab7ad
%define iwyuBranch clang_19

Source0: git+https://github.com/cms-externals/llvm-project.git?obj=%{llvmBranch}/%{llvmCommit}&export=llvm-%{realversion}-%{llvmCommit}&module=llvm-%{realversion}-%{llvmCommit}&output=/llvm-%{realversion}-%{llvmCommit}.tgz
Source1: git+https://github.com/include-what-you-use/include-what-you-use.git?obj=%{iwyuBranch}/%{iwyuCommit}&export=iwyu-%{realversion}-%{iwyuCommit}&module=iwyu-%{realversion}-%{iwyuCommit}&output=/iwyu-%{realversion}-%{iwyuCommit}.tgz
Expand Down Expand Up @@ -38,7 +38,6 @@ cd %{_builddir}/build
cmake %{_builddir}/llvm-%{realversion}-%{llvmCommit}/llvm \
-G Ninja \
%if 0%{!?use_system_gcc:1}
-DGCC_INSTALL_PREFIX="${GCC_ROOT}" \
-DLLVM_BINUTILS_INCDIR:STRING="${GCC_ROOT}/include" \
%endif
-DLLVM_ENABLE_PROJECTS="clang;clang-tools-extra;compiler-rt;lld;openmp" \
Expand Down
4 changes: 2 additions & 2 deletions py3-dxr.spec
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@
## INITENV +PATH PYTHON3PATH %i/${PYTHON3_LIB_SITE_PACKAGES}
Requires: zlib llvm sqlite
Requires: py3-Jinja2 py3-parsimonious py3-pysqlite3 py3-Pygments
%define dxrCommit 737d3b0570e5e4a7845e8cba7c0b000d2911f24e
%define branch cms/6ea764102a/clang18
%define dxrCommit 46b5a40aa1cee3c26d2eddae342634d4bf3f540e
%define branch cms/6ea764102a/clang19

Source0: git+https://github.com/cms-externals/dxr.git?obj=%{branch}/%{dxrCommit}&export=dxr-%{dxrCommit}&module=dxr-%dxrCommit&output=/dxr-%{dxrCommit}.tgz
%define keep_archives true
Expand Down
13 changes: 13 additions & 0 deletions rivet-clang19.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
diff --git a/include/Rivet/Analysis.hh b/include/Rivet/Analysis.hh
index 4734e4e..784d6da 100644
--- a/include/Rivet/Analysis.hh
+++ b/include/Rivet/Analysis.hh
@@ -1187,7 +1187,7 @@ namespace Rivet {
if (re != "") {
std::smatch match;
const bool needsDP = std::regex_search(path, match, std::regex(re));
- if (needsDP) yao.template setAnnotation("WriterDoublePrecision", "1");
+ if (needsDP) yao.template setAnnotation<>("WriterDoublePrecision", "1");
}
}

2 changes: 2 additions & 0 deletions rivet.spec
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ Source: git+https://gitlab.com/hepcedar/rivet.git?obj=master/%{n}-%{realversion}
Source1: https://gitlab.com/hepcedar/rivet/-/commit/8869db87de9d6c8cfe57e16b2c1469c3cf3b38bd.diff
Source99: scram-tools.file/tools/eigen/env
Patch0: rivet-duplicate-libs
Patch1: rivet-clang19

Requires: hepmc3 fastjet fastjet-contrib yoda hdf5 highfive onnxruntime
BuildRequires: python3 py3-cython autotools
Expand All @@ -15,6 +16,7 @@ BuildRequires: python3 py3-cython autotools
## OLD GENSER: %setup -n rivet/%{realversion}
%setup -n %{n}-%{realversion}
%patch0 -p1
%patch1 -p1
patch -p1 <%{_sourcedir}/8869db87de9d6c8cfe57e16b2c1469c3cf3b38bd.diff

%build
Expand Down
172 changes: 172 additions & 0 deletions vecgeom-clang19.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,172 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 495795d..3fcaace 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -224,7 +224,7 @@ cmake_dependent_option(VECGEOM_TEST_COVERAGE "Enable coverage testing flags" OFF

################################################################################
# Minimum version of VecCore we need.
-set(VecCore_VERSION "0.8.0")
+set(VecCore_VERSION "0.8.2")

# Enable/Disable build/use of builtin veccore
if(VECGEOM_BUILTIN_VECCORE)
diff --git a/cmake/modules/BuiltinVecCore.cmake b/cmake/modules/BuiltinVecCore.cmake
index 7e6d09b..d45fe49 100644
--- a/cmake/modules/BuiltinVecCore.cmake
+++ b/cmake/modules/BuiltinVecCore.cmake
@@ -41,9 +41,9 @@ function (build_external_project target globpattern ) #FOLLOWING ARGUMENTS are t
endfunction()


-set(VecCore_PROJECT "VecCore-${VecCore_VERSION}")
-set(VecCore_SRC_URI "http://lcgpackages.web.cern.ch/lcgpackages/tarFiles/sources")
-set(VecCore_SRC_MD5 "3e5b84d1b502ab7c7047c4b494ce640a")
+set(VecCore_PROJECT "VecCore-v${VecCore_VERSION}")
+set(VecCore_SRC_URI "https://gitlab.cern.ch/VecGeom/VecCore/-/archive")
+set(VecCore_SRC_MD5 "c91d00f16ea1fbfad0101e11b2386e34")
set(VecCore_DESTDIR "${PROJECT_BINARY_DIR}/installExternals/${VecCore_PROJECT}")
set(VecCore_ROOTDIR "${VecCore_DESTDIR}/${CMAKE_INSTALL_PREFIX}")
set(VecCore_SRC_TAG "v${VecCore_VERSION}")
@@ -55,7 +55,7 @@ endif()

build_external_project(${VecCore_PROJECT}
"${VecCore_ROOTDIR}/include/VecCore/*.h;${VecCore_ROOTDIR}/include/VecCore/VecCore;${VecCore_ROOTDIR}/include/VecCore/Backend/*.h"
- "URL \"${VecCore_SRC_URI}/VecCore-${VecCore_VERSION}.tar.gz\"
+ "URL \"${VecCore_SRC_URI}/VecCore-v${VecCore_VERSION}.tar.gz ${VecCore_SRC_URI}/v${VecCore_VERSION}/VecCore-v${VecCore_VERSION}.tar.gz\"
URL_MD5 ${VecCore_SRC_MD5}
#GIT_REPOSITORY \"${VecCore_SRC_URI}\"
#GIT_TAG \"${VecCore_SRC_TAG}\"
diff --git a/VecGeom/volumes/SpecializedPlacedVolImplHelper.h b/VecGeom/volumes/SpecializedPlacedVolImplHelper.h
index 5f63971..496d177 100644
--- a/VecGeom/volumes/SpecializedPlacedVolImplHelper.h
+++ b/VecGeom/volumes/SpecializedPlacedVolImplHelper.h
@@ -153,7 +153,7 @@ public:
#endif
Transformation3D const *tr = this->GetTransformation();
Precision output(-1.);
- Specialization::template DistanceToOut(*this->GetUnplacedStruct(), tr->Transform<transC, rotC>(point),
+ Specialization::template DistanceToOut<>(*this->GetUnplacedStruct(), tr->Transform<transC, rotC>(point),
tr->TransformDirection<rotC>(direction), stepMax, output);

#ifdef VECGEOM_DISTANCE_DEBUG
diff --git a/VecGeom/volumes/UnplacedVolumeImplHelper.h b/VecGeom/volumes/UnplacedVolumeImplHelper.h
index 4b2f7b2..7cbf855 100644
--- a/VecGeom/volumes/UnplacedVolumeImplHelper.h
+++ b/VecGeom/volumes/UnplacedVolumeImplHelper.h
@@ -98,7 +98,7 @@ public:
assert(d.IsNormalized() && " direction not normalized in call to DistanceToOut ");
#endif
Precision output = kInfLength;
- Implementation::template DistanceToOut(((UnplacedVolume_t *)this)->UnplacedVolume_t::GetStruct(), p, d, step_max,
+ Implementation::template DistanceToOut<>(((UnplacedVolume_t *)this)->UnplacedVolume_t::GetStruct(), p, d, step_max,
output);

// detect -inf responses which are often an indication for a real bug
diff --git a/VecGeom/volumes/kernel/ImplAsImplementation.h b/VecGeom/volumes/kernel/ImplAsImplementation.h
index a9d2cae..8cd3428 100644
--- a/VecGeom/volumes/kernel/ImplAsImplementation.h
+++ b/VecGeom/volumes/kernel/ImplAsImplementation.h
@@ -51,7 +51,7 @@ struct IndirectImplementation {
VECCORE_ATT_HOST_DEVICE
static void Contains(UnplacedStruct_t const &s, Vector3D<Real_v> const &point, Bool_v &inside)
{
- DispatchingImplementation::template Contains(s, point, inside);
+ DispatchingImplementation::template Contains<>(s, point, inside);
}

template <typename Real_v, typename Inside_t>
@@ -59,7 +59,7 @@ struct IndirectImplementation {
VECCORE_ATT_HOST_DEVICE
static void Inside(UnplacedStruct_t const &s, Vector3D<Real_v> const &point, Inside_t &inside)
{
- DispatchingImplementation::template Inside(s, point, inside);
+ DispatchingImplementation::template Inside<>(s, point, inside);
}

template <typename Real_v>
@@ -68,7 +68,7 @@ struct IndirectImplementation {
static void DistanceToIn(UnplacedStruct_t const &s, Vector3D<Real_v> const &point, Vector3D<Real_v> const &direction,
Real_v const &stepMax, Real_v &distance)
{
- DispatchingImplementation::template DistanceToIn(s, point, direction, stepMax, distance);
+ DispatchingImplementation::template DistanceToIn<>(s, point, direction, stepMax, distance);
}

template <typename Real_v>
@@ -77,7 +77,7 @@ struct IndirectImplementation {
static void DistanceToOut(UnplacedStruct_t const &s, Vector3D<Real_v> const &point, Vector3D<Real_v> const &direction,
Real_v const &stepMax, Real_v &distance)
{
- DispatchingImplementation::template DistanceToOut(s, point, direction, stepMax, distance);
+ DispatchingImplementation::template DistanceToOut<>(s, point, direction, stepMax, distance);
}

template <typename Real_v>
@@ -85,7 +85,7 @@ struct IndirectImplementation {
VECCORE_ATT_HOST_DEVICE
static void SafetyToIn(UnplacedStruct_t const &s, Vector3D<Real_v> const &point, Real_v &safety)
{
- DispatchingImplementation::template SafetyToIn(s, point, safety);
+ DispatchingImplementation::template SafetyToIn<>(s, point, safety);
}

template <typename Real_v>
@@ -93,7 +93,7 @@ struct IndirectImplementation {
VECCORE_ATT_HOST_DEVICE
static void SafetyToOut(UnplacedStruct_t const &s, Vector3D<Real_v> const &point, Real_v &safety)
{
- DispatchingImplementation::template SafetyToOut(s, point, safety);
+ DispatchingImplementation::template SafetyToOut<>(s, point, safety);
}

template <typename Real_v>
@@ -102,7 +102,7 @@ struct IndirectImplementation {
static Vector3D<Real_v> NormalKernel(UnplacedStruct_t const &s, Vector3D<Real_v> const &point,
typename vecCore::Mask_v<Real_v> &valid)
{
- DispatchingImplementation::template NormalKernel(s, point, valid);
+ DispatchingImplementation::template NormalKernel<>(s, point, valid);
}
};

diff --git a/VecGeom/volumes/kernel/PolyhedronImplementation.h b/VecGeom/volumes/kernel/PolyhedronImplementation.h
index 9a1a016..9f0de05 100644
--- a/VecGeom/volumes/kernel/PolyhedronImplementation.h
+++ b/VecGeom/volumes/kernel/PolyhedronImplementation.h
@@ -689,7 +689,7 @@ bool PolyhedronImplementation<innerRadiiT, phiCutoutT>::ScalarContainsKernel(Unp
{
bool inBounds;
// Correct tube algorithm obtained from trait class
- HasInnerRadiiTraits<innerRadiiT>::TubeKernels::template Contains(
+ HasInnerRadiiTraits<innerRadiiT>::TubeKernels::template Contains<>(
unplaced.fBoundingTube, Vector3D<Precision>(point[0], point[1], point[2] - unplaced.fBoundingTubeOffset),
inBounds);
if (!inBounds) return false;
@@ -753,7 +753,7 @@ Inside_t PolyhedronImplementation<innerRadiiT, phiCutoutT>::ScalarInsideKernel(U
// FIX: the bounding tube was wrong. Since the fast UnplacedContains is
// used for early return, the bounding tube has to be larger than the
// ideal bounding tube to account for the tolerance (offset was wrong)
- HasInnerRadiiTraits<innerRadiiT>::TubeKernels::template Contains(
+ HasInnerRadiiTraits<innerRadiiT>::TubeKernels::template Contains<>(
unplaced.fBoundingTube, Vector3D<Precision>(point[0], point[1], point[2] - unplaced.fBoundingTubeOffset),
inBounds);
if (!inBounds) return EInside::kOutside;
@@ -904,7 +904,7 @@ Precision PolyhedronImplementation<innerRadiiT, phiCutoutT>::ScalarDistanceToInK
Precision tubeDistance = 0.;
{
Vector3D<Precision> boundsPoint(point[0], point[1], point[2] - unplaced.fBoundingTubeOffset);
- HasInnerRadiiTraits<innerRadiiT>::TubeKernels::template Contains(unplaced.fBoundingTube, boundsPoint, inBounds);
+ HasInnerRadiiTraits<innerRadiiT>::TubeKernels::template Contains<>(unplaced.fBoundingTube, boundsPoint, inBounds);
// If the point is inside the bounding tube, the result of DistanceToIn is
// unreliable and cannot be used to reject rays.
// TODO: adjust tube DistanceToIn function to correctly return a negative
@@ -913,7 +913,7 @@ Precision PolyhedronImplementation<innerRadiiT, phiCutoutT>::ScalarDistanceToInK
if (!inBounds) {
// If the point is outside the bounding tube, check if the ray misses
// the bounds
- HasInnerRadiiTraits<innerRadiiT>::TubeKernels::template DistanceToIn(unplaced.fBoundingTube, boundsPoint,
+ HasInnerRadiiTraits<innerRadiiT>::TubeKernels::template DistanceToIn<>(unplaced.fBoundingTube, boundsPoint,
direction, stepMax, tubeDistance);
if (tubeDistance == InfinityLength<Precision>()) {
return InfinityLength<Precision>();
7 changes: 4 additions & 3 deletions vecgeom.spec
Original file line number Diff line number Diff line change
@@ -1,12 +1,13 @@
### RPM external vecgeom v1.2.7
### RPM external vecgeom v1.2.10
## INCLUDE compilation_flags
## INCLUDE compilation_flags_lto
## INCLUDE cpp-standard
## INCLUDE microarch_flags

%define tag be99ff9e6b26fa5e0063f8bd21df23cb87911bf8
%define tag bf8de1e0c18fb7b33c0871fab244de00d2bb2a44
Source: git+https://gitlab.cern.ch/VecGeom/VecGeom.git?obj=master/%{tag}&export=%{n}-%{realversion}&output=/%{n}-%{realversion}.tgz
Patch0: vecgeom-fix-vector
Patch1: vecgeom-clang19
BuildRequires: cmake gmake
%define keep_archives true
%define vecgeom_backend Scalar
Expand All @@ -15,8 +16,8 @@ BuildRequires: cmake gmake

%prep
%setup -n %{n}-%{realversion}

%patch0 -p1
%patch1 -p1

%build
%ifarch x86_64
Expand Down