Compare commits

...

6 Commits

Author SHA1 Message Date
CentOS Sources c91467f98b import dotnet5.0-5.0.214-1.el8_6 2022-05-11 13:22:50 +00:00
CentOS Sources bf75af1377 import dotnet5.0-5.0.212-2.el8 2022-05-10 10:06:02 +00:00
CentOS Sources 751f607797 import dotnet5.0-5.0.213-1.el8_5 2022-04-18 13:19:01 +00:00
CentOS Sources 80b97abbcc import dotnet5.0-5.0.212-1.el8_5 2022-03-10 14:48:44 +00:00
CentOS Sources a319d5aeda import dotnet5.0-5.0.211-1.el8_5 2022-02-09 08:27:50 +00:00
CentOS Sources 0892b99dee import dotnet5.0-5.0.210-1.el8_5 2021-12-15 13:45:32 +00:00
4 changed files with 123 additions and 24 deletions

View File

@ -1 +1 @@
d1a80dee6c9e13ae7b2fa12a8b0018286501b91e SOURCES/dotnet-v5.0.209.1-SDK.tar.gz
49ddbc37f561645bab32f02fe17849449b7f0977 SOURCES/dotnet-v5.0.214-SDK.tar.gz

2
.gitignore vendored
View File

@ -1 +1 @@
SOURCES/dotnet-v5.0.209.1-SDK.tar.gz
SOURCES/dotnet-v5.0.214-SDK.tar.gz

View File

@ -0,0 +1,79 @@
From a89c562f9389fdc2bb1356d3da782d0063951e14 Mon Sep 17 00:00:00 2001
From: Jan Vorlicek <jan.vorlicek@volny.cz>
Date: Tue, 30 Nov 2021 10:55:21 +0100
Subject: [PATCH] Fix clang 13 induced runtime issues (#62170)
The clang 13 optimizer started to assume that "this" pointer is always
properly aligned. That lead to elimination of some code that was actually
needed.
It also takes pointer aliasing rules more strictly in one place in jit.
That caused the optimizer to falsely assume that a callee with an argument
passed by reference is not modifying that argument and used a stale
copy of the original value at the caller site.
This change fixes both of the issues. With this fix, runtime compiled
using clang 13 seems to be fully functional.
---
src/coreclr/src/inc/corhlpr.h | 8 ++++----
src/coreclr/src/jit/bitsetasshortlong.h | 4 ++--
2 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/src/coreclr/src/inc/corhlpr.h b/src/coreclr/src/inc/corhlpr.h
index 450514da95c..427e8cdc0ff 100644
--- a/src/coreclr/src/inc/corhlpr.h
+++ b/src/coreclr/src/inc/corhlpr.h
@@ -336,7 +336,7 @@ struct COR_ILMETHOD_SECT
const COR_ILMETHOD_SECT* Next() const
{
if (!More()) return(0);
- return ((COR_ILMETHOD_SECT*)(((BYTE *)this) + DataSize()))->Align();
+ return ((COR_ILMETHOD_SECT*)Align(((BYTE *)this) + DataSize()));
}
const BYTE* Data() const
@@ -374,9 +374,9 @@ struct COR_ILMETHOD_SECT
return((AsSmall()->Kind & CorILMethod_Sect_FatFormat) != 0);
}
- const COR_ILMETHOD_SECT* Align() const
+ static const void* Align(const void* p)
{
- return((COR_ILMETHOD_SECT*) ((((UINT_PTR) this) + 3) & ~3));
+ return((void*) ((((UINT_PTR) p) + 3) & ~3));
}
protected:
@@ -579,7 +579,7 @@ typedef struct tagCOR_ILMETHOD_FAT : IMAGE_COR_ILMETHOD_FAT
const COR_ILMETHOD_SECT* GetSect() const {
if (!More()) return (0);
- return(((COR_ILMETHOD_SECT*) (GetCode() + GetCodeSize()))->Align());
+ return(((COR_ILMETHOD_SECT*) COR_ILMETHOD_SECT::Align(GetCode() + GetCodeSize())));
}
} COR_ILMETHOD_FAT;
diff --git a/src/coreclr/src/jit/bitsetasshortlong.h b/src/coreclr/src/jit/bitsetasshortlong.h
index 078cdc810e9..4c52819853f 100644
--- a/src/coreclr/src/jit/bitsetasshortlong.h
+++ b/src/coreclr/src/jit/bitsetasshortlong.h
@@ -345,7 +345,7 @@ public:
{
if (IsShort(env))
{
- (size_t&)out = (size_t)out & ((size_t)gen | (size_t)in);
+ out = (BitSetShortLongRep)((size_t)out & ((size_t)gen | (size_t)in));
}
else
{
@@ -361,7 +361,7 @@ public:
{
if (IsShort(env))
{
- (size_t&)in = (size_t)use | ((size_t)out & ~(size_t)def);
+ in = (BitSetShortLongRep)((size_t)use | ((size_t)out & ~(size_t)def));
}
else
{
--
2.33.1

View File

@ -20,10 +20,10 @@
# until that's done, disable LTO. This has to happen before setting the flags below.
%define _lto_cflags %{nil}
%global host_version 5.0.12
%global runtime_version 5.0.12
%global host_version 5.0.17
%global runtime_version 5.0.17
%global aspnetcore_runtime_version %{runtime_version}
%global sdk_version 5.0.209
%global sdk_version 5.0.214
%global templates_version %{runtime_version}
#%%global templates_version %%(echo %%{runtime_version} | awk 'BEGIN { FS="."; OFS="." } {print $1, $2, $3+1 }')
@ -33,7 +33,7 @@
%global sdk_rpm_version %{sdk_version}
# upstream can update releases without revving the SDK version so these don't always match
%global src_version %{sdk_version}.1
%global src_version %{sdk_version}
%if 0%{?fedora} || 0%{?rhel} < 8
%global use_bundled_libunwind 0
@ -69,6 +69,8 @@ Source2: dotnet.sh.in
Patch1: source-build-remove-test-references-from-patches.patch
Patch100: runtime-62170-clang13.patch
# Disable telemetry by default; make it opt-in
Patch500: sdk-telemetry-optout.patch
@ -186,6 +188,8 @@ Requires: dotnet-hostfxr-5.0%{?_isa} >= %{host_rpm_version}-%{release}
# libicu is dlopen()ed
Requires: libicu%{?_isa}
# See src/runtime.*/src/libraries/Native/AnyOS/brotli-version.txt
Provides: bundled(brotli) = 1.0.9
%if %{use_bundled_libunwind}
Provides: bundled(libunwind) = 1.3
%endif
@ -326,17 +330,18 @@ ln -s %{_libdir}/dotnet/reference-packages/Private.SourceBuild.ReferencePackages
%endif
# Fix bad hardcoded path in build
sed -i 's|/usr/share/dotnet|%{_libdir}/dotnet|' src/runtime.*/src/installer/corehost/cli/hostmisc/pal.unix.cpp
sed -i 's|/usr/share/dotnet|%{_libdir}/dotnet|' src/dotnet-runtime.*/src/installer/corehost/cli/hostmisc/pal.unix.cpp
# Disable warnings
sed -i 's|skiptests|skiptests ignorewarnings|' repos/runtime.common.props
%patch1 -p1
pushd src/runtime.*
pushd src/dotnet-runtime.*
%patch100 -p1
popd
pushd src/sdk.*
pushd src/dotnet-sdk.*
%patch500 -p1
popd
@ -447,7 +452,7 @@ chmod 0755 %{buildroot}/%{_libdir}/dotnet/packs/Microsoft.NETCore.App.Host.%{run
# Provided by dotnet-host from another SRPM
#install -dm 0755 %%{buildroot}/%%{_datadir}/bash-completion/completions
# dynamic completion needs the file to be named the same as the base command
#install src/sdk.*/scripts/register-completions.bash %%{buildroot}/%%{_datadir}/bash-completion/completions/dotnet
#install src/dotnet-sdk.*/scripts/register-completions.bash %%{buildroot}/%%{_datadir}/bash-completion/completions/dotnet
# TODO: the zsh completion script needs to be ported to use #compdef
#install -dm 755 %%{buildroot}/%%{_datadir}/zsh/site-functions
@ -516,21 +521,36 @@ rm -rf %{buildroot}%{_libdir}/dotnet/packs/NETStandard.Library.Ref/2.1.0
%changelog
* Fri Nov 19 2021 Omair Majid <omajid@redhat.com> - 5.0.209-1
* Thu May 05 2022 Omair Majid <omajid@redhat.com> - 5.0.214-1
- Update to .NET SDK 5.0.214 and Runtime 5.0.17
- Resolves: RHBZ#2082258
* Thu Apr 28 2022 Omair Majid <omajid@redhat.com> - 5.0.213-2
- Update to .NET SDK 5.0.213 and Runtime 5.0.16
- Resolves: RHBZ#2080053
* Wed Mar 23 2022 Omair Majid <omajid@redhat.com> - 5.0.212-2
- Update to .NET SDK 5.0.212 and Runtime 5.0.15
- Resolves: RHBZ#2060495
* Wed Mar 23 2022 Omair Majid <omajid@redhat.com> - 5.0.211-1
- Update to .NET SDK 5.0.211 and Runtime 5.0.14
- Resolves: RHBZ#2047766
* Wed Jan 05 2022 Omair Majid <omajid@redhat.com> - 5.0.210-2
- Update to .NET SDK 5.0.210 and Runtime 5.0.13
- Resolves: RHBZ#2030737
* Thu Dec 02 2021 Omair Majid <omajid@redhat.com> - 5.0.209-2
- Bump release
- Related: RHBZ#2011058
- Related: RHBZ#2003078
* Sun Nov 21 2021 Omair Majid <omajid@redhat.com> - 5.0.209.1-1
- Update to .NET SDK 5.0.209 and Runtime 5.0.12
- Resolves: RHBZ#2024414
* Wed Oct 13 2021 Omair Majid <omajid@redhat.com> - 5.0.208-2
- Update to .NET SDK 5.0.208 and Runtime 5.0.11
- Resolves: 2015936
* Sun Oct 10 2021 Omair Majid <omajid@redhat.com> - 5.0.207-3
- Disable subpackages that will be provided by .NET 6 SRPM
- Resolves: RHBZ#1986017
* Fri Sep 24 2021 Omair Majid <omajid@redhat.com> - 5.0.207-2
- Update to .NET SDK 5.0.207 and Runtime 5.0.10
- Resolves: RHBZ#2000319
- Resolves: RHBZ#2024319
- Resolves: RHBZ#2011058
- Resolves: RHBZ#2003078
* Thu Aug 12 2021 Omair Majid <omajid@redhat.com> - 5.0.206-1
- Update to .NET SDK 5.0.206 and Runtime 5.0.9