import dotnet5.0-5.0.210-2.el8
This commit is contained in:
parent
0fa2f2b03c
commit
3ae024ade7
79
SOURCES/runtime-62170-clang13.patch
Normal file
79
SOURCES/runtime-62170-clang13.patch
Normal 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
|
||||
|
@ -56,7 +56,7 @@
|
||||
|
||||
Name: dotnet5.0
|
||||
Version: %{sdk_rpm_version}
|
||||
Release: 1%{?dist}
|
||||
Release: 2%{?dist}
|
||||
Summary: .NET Runtime and SDK
|
||||
License: MIT and ASL 2.0 and BSD and LGPLv2+ and CC-BY and CC0 and MS-PL and EPL-1.0 and GPL+ and GPLv2 and ISC and OFL and zlib
|
||||
URL: https://github.com/dotnet/
|
||||
@ -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
|
||||
|
||||
@ -334,6 +336,7 @@ sed -i 's|skiptests|skiptests ignorewarnings|' repos/runtime.common.props
|
||||
%patch1 -p1
|
||||
|
||||
pushd src/dotnet-runtime.*
|
||||
%patch100 -p1
|
||||
popd
|
||||
|
||||
pushd src/dotnet-sdk.*
|
||||
@ -516,25 +519,20 @@ rm -rf %{buildroot}%{_libdir}/dotnet/packs/NETStandard.Library.Ref/2.1.0
|
||||
|
||||
|
||||
%changelog
|
||||
* Thu Dec 09 2021 Omair Majid <omajid@redhat.com> - 5.0.210-1
|
||||
* 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#2030738
|
||||
- Resolves: RHBZ#2030737
|
||||
|
||||
* Fri Nov 19 2021 Omair Majid <omajid@redhat.com> - 5.0.209-1
|
||||
* 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
|
||||
|
Loading…
Reference in New Issue
Block a user