Date: Tuesday, December 17, 2019 @ 18:58:11 Author: alucryd Revision: 537941
add compat dotnet-core-2.2 Added: dotnet-core-2.2/ dotnet-core-2.2/trunk/ dotnet-core-2.2/trunk/PKGBUILD dotnet-core-2.2/trunk/dotnet-coreclr-asm.patch dotnet-core-2.2/trunk/dotnet-coreclr-rid.patch dotnet-core-2.2/trunk/dotnet-coreclr-sysinfo.patch ------------------------------+ PKGBUILD | 174 +++++++++++++ dotnet-coreclr-asm.patch | 537 +++++++++++++++++++++++++++++++++++++++++ dotnet-coreclr-rid.patch | 39 ++ dotnet-coreclr-sysinfo.patch | 20 + 4 files changed, 770 insertions(+) Added: dotnet-core-2.2/trunk/PKGBUILD =================================================================== --- dotnet-core-2.2/trunk/PKGBUILD (rev 0) +++ dotnet-core-2.2/trunk/PKGBUILD 2019-12-17 18:58:11 UTC (rev 537941) @@ -0,0 +1,174 @@ +# Maintainer: Maxime Gauduin <[email protected]> +# Contributor: Max Liebkies <[email protected]> +# Contributor: Krzysztof Bogacki <[email protected]> + +pkgbase=dotnet-core-2.2 +pkgname=( + dotnet-runtime-2.2 + dotnet-sdk-2.2 + aspnet-runtime-2.2 +) +pkgver=2.2.7.sdk109 +_runtimever=2.2.7 +_sdkver=2.2.109 +pkgrel=1 +arch=(x86_64) +url=https://www.microsoft.com/net/core +license=(MIT) +makedepends=( + clang + cmake + curl + git + icu + inetutils + krb5 + libunwind + lldb + llvm + lttng-ust + openssl-1.0 + zlib +) +options=(staticlibs) +source=( + dotnet-source-build::git+https://github.com/dotnet/source-build.git#tag=2ea940c21cfb258ad514660d856b558655ea1f92 + dotnet-application-insights::git+https://github.com/Microsoft/ApplicationInsights-dotnet.git + dotnet-arcade::git+https://github.com/dotnet/arcade.git + dotnet-aspnet-razor::git+https://github.com/aspnet/Razor.git + dotnet-cecil::git+https://github.com/mono/cecil.git + dotnet-cli::git+https://github.com/dotnet/cli.git + dotnet-cli-migrate::git+https://github.com/dotnet/cli-migrate.git + dotnet-clicommandlineparser::git+https://github.com/dotnet/clicommandlineparser.git + dotnet-common::git+https://github.com/aspnet/common.git + dotnet-core-setup::git+https://github.com/dotnet/core-setup.git + dotnet-coreclr::git+https://github.com/dotnet/coreclr.git + dotnet-corefx::git+https://github.com/dotnet/corefx.git + dotnet-fsharp::git+https://github.com/Microsoft/VisualFSharp.git + dotnet-linker::git+https://github.com/mono/linker.git + dotnet-msbuild::git+https://github.com/Microsoft/msbuild.git + dotnet-newtonsoft-json::git+https://github.com/JamesNK/Newtonsoft.Json.git + dotnet-nuget-client::git+https://github.com/NuGet/NuGet.Client.git + dotnet-roslyn::git+https://github.com/dotnet/roslyn.git + dotnet-roslyn-tools::git+https://github.com/dotnet/roslyn-tools.git + dotnet-sdk::git+https://github.com/dotnet/sdk.git + dotnet-standard::git+https://github.com/dotnet/standard.git + dotnet-templating::git+https://github.com/dotnet/templating.git + dotnet-vstest::git+https://github.com/Microsoft/vstest.git + dotnet-websdk::git+https://github.com/aspnet/websdk.git + dotnet-xliff-tasks::git+https://github.com/dotnet/xliff-tasks.git + https://download.visualstudio.microsoft.com/download/pr/f0b6c052-2f5d-42b9-8ffa-870ea2a60d11/90c1d5b4a2548c1beaeacff0a39a459c/aspnetcore-runtime-2.2.7-linux-x64.tar.gz + dotnet-coreclr-rid.patch + dotnet-coreclr-asm.patch + dotnet-coreclr-sysinfo.patch +) +sha256sums=('SKIP' + 'SKIP' + 'SKIP' + 'SKIP' + 'SKIP' + 'SKIP' + 'SKIP' + 'SKIP' + 'SKIP' + 'SKIP' + 'SKIP' + 'SKIP' + 'SKIP' + 'SKIP' + 'SKIP' + 'SKIP' + 'SKIP' + 'SKIP' + 'SKIP' + 'SKIP' + 'SKIP' + 'SKIP' + 'SKIP' + 'SKIP' + 'SKIP' + 'e9872e53b834e2c3194710cc2b242bb17a00f1a8b1f42df6e4b87d2ea1ed935e' + '192af878c513f7d27f670104aaef309073f65287809361739038d770b16415d3' + 'ecbd476481deef395d88496a5b6adfeb37660c45052523f31df6805ec85bdb6c' + 'b0c63c807cd58c170f55ba0621eb11761e6f6aa6a8530d8b0468c46f51e17698') + +prepare() { + cd dotnet-source-build + + for submodule in src/{application-insights,arcade,aspnet-razor,cli,cli-migrate,clicommandlineparser,common,core-setup,coreclr,corefx,fsharp,linker,msbuild,newtonsoft-json,nuget-client,roslyn,roslyn-tools,sdk,standard,templating,vstest,websdk,xliff-tasks}; do + git submodule init ${submodule} + git config submodule.${submodule}.url ../dotnet-${submodule#src/} + git submodule update + done + + cd src/linker + + for submodule in cecil; do + git submodule init ${submodule} + git config submodule.${submodule}.url ../../../dotnet-${submodule} + git submodule update + done + + cd ../coreclr + + patch -Np1 -i "${srcdir}"/dotnet-coreclr-rid.patch + patch -Np1 -i "${srcdir}"/dotnet-coreclr-asm.patch + patch -Np1 -i "${srcdir}"/dotnet-coreclr-sysinfo.patch +} + +build() { + cd dotnet-source-build + + export CXXFLAGS="$CXXFLAGS -Wno-atomic-implicit-seq-cst" + export PKG_CONFIG_PATH=/usr/lib/openssl-1.0/pkgconfig + export SOURCE_BUILD_SKIP_SUBMODULE_CHECK=1 + + ./build.sh +} + +package_dotnet-runtime-2.2() { + pkgdesc='The .NET Core runtime' + depends=( + dotnet-host + glibc + icu + krb5 + libcurl.so + libunwind + openssl-1.0 + zlib + ) + + optdepends=('lttng-ust: CoreCLR tracing') + + cd dotnet-source-build/bin/x64/Release + + install -dm 755 "${pkgdir}"/usr/share/{dotnet,licenses} + bsdtar -xf dotnet-sdk-${_sdkver}-linux-x64.tar.gz -C "${pkgdir}"/usr/share/dotnet/ --no-same-owner shared/Microsoft.NETCore.App + ln -s dotnet-host "${pkgdir}"/usr/share/licenses/dotnet-runtime-2.2 +} + +package_dotnet-sdk-2.2() { + pkgdesc='The .NET Core SDK' + depends=( + dotnet-runtime-2.2 + glibc + ) + + cd dotnet-source-build/bin/x64/Release + + install -dm 755 "${pkgdir}"/usr/share/{dotnet,licenses} + bsdtar -xf dotnet-sdk-${_sdkver}-linux-x64.tar.gz -C "${pkgdir}"/usr/share/dotnet/ --no-same-owner sdk + ln -s dotnet-host "${pkgdir}"/usr/share/licenses/dotnet-sdk-2.2 +} + +package_aspnet-runtime-2.2() { + pkgdesc='The ASP.NET Core runtime' + depends=(dotnet-runtime-2.2) + + install -dm 755 "${pkgdir}"/usr/share/{dotnet/shared,licenses} + cp -dr --no-preserve='ownership' shared/Microsoft.AspNetCore.{All,App} "${pkgdir}"/usr/share/dotnet/shared/ + ln -s dotnet-host "${pkgdir}"/usr/share/licenses/aspnet-runtime-2.2 +} + +# vim: ts=2 sw=2 et: Added: dotnet-core-2.2/trunk/dotnet-coreclr-asm.patch =================================================================== --- dotnet-core-2.2/trunk/dotnet-coreclr-asm.patch (rev 0) +++ dotnet-core-2.2/trunk/dotnet-coreclr-asm.patch 2019-12-17 18:58:11 UTC (rev 537941) @@ -0,0 +1,537 @@ +diff --git a/src/debug/ee/amd64/dbghelpers.S b/src/debug/ee/amd64/dbghelpers.S +index 85ec80c7014f..864c4dc943be 100644 +--- a/src/debug/ee/amd64/dbghelpers.S ++++ b/src/debug/ee/amd64/dbghelpers.S +@@ -29,7 +29,7 @@ NESTED_ENTRY FuncEvalHijack, _TEXT, UnhandledExceptionHandlerUnix + // + // epilogue + // +- add rsp, 20h ++ add rsp, 0x20 + TAILJMP_RAX + NESTED_END FuncEvalHijack, _TEXT + +@@ -65,14 +65,14 @@ NESTED_ENTRY ExceptionHijack, _TEXT, UnhandledExceptionHandlerUnix + // its arguments on the stack. In x64, it gets its arguments in + // registers (set up for us by DacDbiInterfaceImpl::Hijack), + // and this stack space may be reused. +- mov rax, [rsp + 20h] ++ mov rax, [rsp + 0x20] + mov [rsp], rax +- mov rax, [rsp + 28h] +- mov [rsp + 8h], rax +- mov rax, [rsp + 30h] +- mov [rsp + 10h], rax +- mov rax, [rsp + 38h] +- mov [rsp + 18h], rax ++ mov rax, [rsp + 0x28] ++ mov [rsp + 0x8], rax ++ mov rax, [rsp + 0x30] ++ mov [rsp + 0x10], rax ++ mov rax, [rsp + 0x38] ++ mov [rsp + 0x18], rax + + // DD Hijack primitive already set the stack. So just make the call now. + call C_FUNC(ExceptionHijackWorker) +@@ -93,7 +93,7 @@ NESTED_ENTRY ExceptionHijack, _TEXT, UnhandledExceptionHandlerUnix + // + // epilogue + // +- add rsp, 20h ++ add rsp, 0x20 + TAILJMP_RAX + + // Put a label here to tell the debugger where the end of this function is. +From bdd0408f25a285deae0a69da659f4bc4d4f272f7 Mon Sep 17 00:00:00 2001 +From: Sinan Kaya <[email protected]> +Date: Tue, 19 Feb 2019 21:47:17 +0000 +Subject: [PATCH] Replace hex number representation in ASM files + +--- + src/pal/inc/unixasmmacros.inc | 2 +- + src/vm/amd64/jithelpers_fast.S | 38 ++++++------ + src/vm/amd64/jithelpers_fastwritebarriers.S | 66 ++++++++++----------- + src/vm/amd64/jithelpers_slow.S | 16 ++--- + src/vm/amd64/virtualcallstubamd64.S | 8 +-- + 5 files changed, 65 insertions(+), 65 deletions(-) + +diff --git a/src/pal/inc/unixasmmacros.inc b/src/pal/inc/unixasmmacros.inc +index a1f1a694eee6..f553840a8d33 100644 +--- a/src/pal/inc/unixasmmacros.inc ++++ b/src/pal/inc/unixasmmacros.inc +@@ -2,7 +2,7 @@ + // The .NET Foundation licenses this file to you under the MIT license. + // See the LICENSE file in the project root for more information. + +-#define INVALIDGCVALUE 0CCCCCCCDh ++#define INVALIDGCVALUE 0xCCCCCCCD + + #if defined(__APPLE__) + #define C_FUNC(name) _##name +diff --git a/src/vm/amd64/jithelpers_fast.S b/src/vm/amd64/jithelpers_fast.S +index 6f955b0bee22..9503333619e3 100644 +--- a/src/vm/amd64/jithelpers_fast.S ++++ b/src/vm/amd64/jithelpers_fast.S +@@ -81,14 +81,14 @@ LEAF_ENTRY JIT_WriteBarrier, _TEXT + // Update the write watch table if necessary + mov rax, rdi + movabs r10, 0xF0F0F0F0F0F0F0F0 +- shr rax, 0Ch // SoftwareWriteWatch::AddressToTableByteIndexShift ++ shr rax, 0xC // SoftwareWriteWatch::AddressToTableByteIndexShift + NOP_2_BYTE // padding for alignment of constant + movabs r11, 0xF0F0F0F0F0F0F0F0 + add rax, r10 +- cmp byte ptr [rax], 0h ++ cmp byte ptr [rax], 0x0 + .byte 0x75, 0x06 + // jne CheckCardTable +- mov byte ptr [rax], 0FFh ++ mov byte ptr [rax], 0xFF + + NOP_3_BYTE // padding for alignment of constant + +@@ -112,27 +112,27 @@ LEAF_ENTRY JIT_WriteBarrier, _TEXT + + // Touch the card table entry, if not already dirty. + shr rdi, 0x0B +- cmp byte ptr [rdi + rax], 0FFh ++ cmp byte ptr [rdi + rax], 0xFF + .byte 0x75, 0x02 + // jne UpdateCardTable + REPRET + + UpdateCardTable: +- mov byte ptr [rdi + rax], 0FFh ++ mov byte ptr [rdi + rax], 0xFF + + #ifdef FEATURE_MANUALLY_MANAGED_CARD_BUNDLES + NOP_2_BYTE // padding for alignment of constant + shr rdi, 0x0A + + movabs rax, 0xF0F0F0F0F0F0F0F0 +- cmp byte ptr [rdi + rax], 0FFh ++ cmp byte ptr [rdi + rax], 0xFF + + .byte 0x75, 0x02 + // jne UpdateCardBundle_WriteWatch_PostGrow64 + REPRET + + UpdateCardBundle_WriteWatch_PostGrow64: +- mov byte ptr [rdi + rax], 0FFh ++ mov byte ptr [rdi + rax], 0xFF + #endif + + ret +@@ -312,15 +312,15 @@ LEAF_ENTRY JIT_ByRefWriteBarrier, _TEXT + #ifdef FEATURE_USE_SOFTWARE_WRITE_WATCH_FOR_GC_HEAP + // Update the write watch table if necessary + PREPARE_EXTERNAL_VAR g_sw_ww_enabled_for_gc_heap, rax +- cmp byte ptr [rax], 0h ++ cmp byte ptr [rax], 0x0 + je CheckCardTable_ByRefWriteBarrier + mov rax, rdi +- shr rax, 0Ch // SoftwareWriteWatch::AddressToTableByteIndexShift ++ shr rax, 0xC // SoftwareWriteWatch::AddressToTableByteIndexShift + PREPARE_EXTERNAL_VAR g_sw_ww_table, r10 + add rax, qword ptr [r10] +- cmp byte ptr [rax], 0h ++ cmp byte ptr [rax], 0x0 + jne CheckCardTable_ByRefWriteBarrier +- mov byte ptr [rax], 0FFh ++ mov byte ptr [rax], 0xFF + #endif + + CheckCardTable_ByRefWriteBarrier: +@@ -334,8 +334,8 @@ LEAF_ENTRY JIT_ByRefWriteBarrier, _TEXT + + // move current rdi value into rcx and then increment the pointers + mov rcx, rdi +- add rsi, 8h +- add rdi, 8h ++ add rsi, 0x8 ++ add rdi, 0x8 + + // Check if we need to update the card table + // Calc pCardByte +@@ -345,13 +345,13 @@ LEAF_ENTRY JIT_ByRefWriteBarrier, _TEXT + mov rax, [rax] + + // Check if this card is dirty +- cmp byte ptr [rcx + rax], 0FFh ++ cmp byte ptr [rcx + rax], 0xFF + + jne UpdateCardTable_ByRefWriteBarrier + REPRET + + UpdateCardTable_ByRefWriteBarrier: +- mov byte ptr [rcx + rax], 0FFh ++ mov byte ptr [rcx + rax], 0xFF + + #ifdef FEATURE_MANUALLY_MANAGED_CARD_BUNDLES + // Shift rcx by 0x0A more to get the card bundle byte (we shifted by 0x0B already) +@@ -361,13 +361,13 @@ LEAF_ENTRY JIT_ByRefWriteBarrier, _TEXT + add rcx, [rax] + + // Check if this bundle byte is dirty +- cmp byte ptr [rcx], 0FFh ++ cmp byte ptr [rcx], 0xFF + + jne UpdateCardBundle_ByRefWriteBarrier + REPRET + + UpdateCardBundle_ByRefWriteBarrier: +- mov byte ptr [rcx], 0FFh ++ mov byte ptr [rcx], 0xFF + #endif + + ret +@@ -383,8 +383,8 @@ LEAF_ENTRY JIT_ByRefWriteBarrier, _TEXT + #endif + Exit_ByRefWriteBarrier: + // Increment the pointers before leaving +- add rdi, 8h +- add rsi, 8h ++ add rdi, 0x8 ++ add rsi, 0x8 + ret + LEAF_END_MARKED JIT_ByRefWriteBarrier, _TEXT + +diff --git a/src/vm/amd64/jithelpers_fastwritebarriers.S b/src/vm/amd64/jithelpers_fastwritebarriers.S +index 23c11151659d..35bfbef21469 100644 +--- a/src/vm/amd64/jithelpers_fastwritebarriers.S ++++ b/src/vm/amd64/jithelpers_fastwritebarriers.S +@@ -38,13 +38,13 @@ PATCH_LABEL JIT_WriteBarrier_PreGrow64_Patch_Label_CardTable + + // Touch the card table entry, if not already dirty. + shr rdi, 0x0B +- cmp byte ptr [rdi + rax], 0FFh ++ cmp byte ptr [rdi + rax], 0xFF + .byte 0x75, 0x02 + // jne UpdateCardTable_PreGrow64 + REPRET + + UpdateCardTable_PreGrow64: +- mov byte ptr [rdi + rax], 0FFh ++ mov byte ptr [rdi + rax], 0xFF + + #ifdef FEATURE_MANUALLY_MANAGED_CARD_BUNDLES + NOP_6_BYTE // padding for alignment of constant +@@ -55,14 +55,14 @@ PATCH_LABEL JIT_WriteBarrier_PreGrow64_Patch_Label_CardBundleTable + // Touch the card bundle, if not already dirty. + // rdi is already shifted by 0xB, so shift by 0xA more + shr rdi, 0x0A +- cmp byte ptr [rdi + rax], 0FFh ++ cmp byte ptr [rdi + rax], 0xFF + + .byte 0x75, 0x02 + // jne UpdateCardBundle_PreGrow64 + REPRET + + UpdateCardBundle_PreGrow64: +- mov byte ptr [rdi + rax], 0FFh ++ mov byte ptr [rdi + rax], 0xFF + #endif + + ret +@@ -123,13 +123,13 @@ PATCH_LABEL JIT_WriteBarrier_PostGrow64_Patch_Label_CardTable + + // Touch the card table entry, if not already dirty. + shr rdi, 0x0B +- cmp byte ptr [rdi + rax], 0FFh ++ cmp byte ptr [rdi + rax], 0xFF + .byte 0x75, 0x02 + // jne UpdateCardTable_PostGrow64 + REPRET + + UpdateCardTable_PostGrow64: +- mov byte ptr [rdi + rax], 0FFh ++ mov byte ptr [rdi + rax], 0xFF + + #ifdef FEATURE_MANUALLY_MANAGED_CARD_BUNDLES + NOP_6_BYTE // padding for alignment of constant +@@ -140,14 +140,14 @@ PATCH_LABEL JIT_WriteBarrier_PostGrow64_Patch_Label_CardBundleTable + // Touch the card bundle, if not already dirty. + // rdi is already shifted by 0xB, so shift by 0xA more + shr rdi, 0x0A +- cmp byte ptr [rdi + rax], 0FFh ++ cmp byte ptr [rdi + rax], 0xFF + + .byte 0x75, 0x02 + // jne UpdateCardBundle_PostGrow64 + REPRET + + UpdateCardBundle_PostGrow64: +- mov byte ptr [rdi + rax], 0FFh ++ mov byte ptr [rdi + rax], 0xFF + #endif + + ret +@@ -182,13 +182,13 @@ PATCH_LABEL JIT_WriteBarrier_SVR64_PatchLabel_CardTable + + shr rdi, 0x0B + +- cmp byte ptr [rdi + rax], 0FFh ++ cmp byte ptr [rdi + rax], 0xFF + .byte 0x75, 0x02 + // jne UpdateCardTable_SVR64 + REPRET + + UpdateCardTable_SVR64: +- mov byte ptr [rdi + rax], 0FFh ++ mov byte ptr [rdi + rax], 0xFF + + #ifdef FEATURE_MANUALLY_MANAGED_CARD_BUNDLES + NOP_6_BYTE // padding for alignment of constant +@@ -198,14 +198,14 @@ PATCH_LABEL JIT_WriteBarrier_SVR64_PatchLabel_CardBundleTable + + // Shift the address by 0xA more since already shifted by 0xB + shr rdi, 0x0A +- cmp byte ptr [rdi + rax], 0FFh ++ cmp byte ptr [rdi + rax], 0xFF + + .byte 0x75, 0x02 + // jne UpdateCardBundle_SVR64 + REPRET + + UpdateCardBundle_SVR64: +- mov byte ptr [rdi + rax], 0FFh ++ mov byte ptr [rdi + rax], 0xFF + #endif + + ret +@@ -236,15 +236,15 @@ LEAF_ENTRY JIT_WriteBarrier_WriteWatch_PreGrow64, _TEXT + mov rax, rdi + PATCH_LABEL JIT_WriteBarrier_WriteWatch_PreGrow64_Patch_Label_WriteWatchTable + movabs r10, 0xF0F0F0F0F0F0F0F0 +- shr rax, 0Ch // SoftwareWriteWatch::AddressToTableByteIndexShift ++ shr rax, 0x0C // SoftwareWriteWatch::AddressToTableByteIndexShift + NOP_2_BYTE // padding for alignment of constant + PATCH_LABEL JIT_WriteBarrier_WriteWatch_PreGrow64_Patch_Label_Lower + movabs r11, 0xF0F0F0F0F0F0F0F0 + add rax, r10 +- cmp byte ptr [rax], 0h ++ cmp byte ptr [rax], 0x0 + .byte 0x75, 0x03 + // jne CheckCardTable_WriteWatch_PreGrow64 +- mov byte ptr [rax], 0FFh ++ mov byte ptr [rax], 0xFF + + CheckCardTable_WriteWatch_PreGrow64: + // Check the lower ephemeral region bound. +@@ -263,13 +263,13 @@ PATCH_LABEL JIT_WriteBarrier_WriteWatch_PreGrow64_Patch_Label_Lower + NOP_2_BYTE // padding for alignment of constant + PATCH_LABEL JIT_WriteBarrier_WriteWatch_PreGrow64_Patch_Label_CardTable + movabs rax, 0xF0F0F0F0F0F0F0F0 +- cmp byte ptr [rdi + rax], 0FFh ++ cmp byte ptr [rdi + rax], 0xFF + .byte 0x75, 0x02 + // jne UpdateCardTable_WriteWatch_PreGrow64 + REPRET + + UpdateCardTable_WriteWatch_PreGrow64: +- mov byte ptr [rdi + rax], 0FFh ++ mov byte ptr [rdi + rax], 0xFF + + #ifdef FEATURE_MANUALLY_MANAGED_CARD_BUNDLES + NOP_2_BYTE // padding for alignment of constant +@@ -277,14 +277,14 @@ PATCH_LABEL JIT_WriteBarrier_WriteWatch_PreGrow64_Patch_Label_CardBundleTable + movabs rax, 0xF0F0F0F0F0F0F0F0 + + shr rdi, 0x0A +- cmp byte ptr [rdi + rax], 0FFh ++ cmp byte ptr [rdi + rax], 0xFF + + .byte 0x75, 0x02 + // jne UpdateCardBundle_WriteWatch_PreGrow64 + REPRET + + UpdateCardBundle_WriteWatch_PreGrow64: +- mov byte ptr [rdi + rax], 0FFh ++ mov byte ptr [rdi + rax], 0xFF + #endif + + ret +@@ -314,15 +314,15 @@ LEAF_ENTRY JIT_WriteBarrier_WriteWatch_PostGrow64, _TEXT + mov rax, rdi + PATCH_LABEL JIT_WriteBarrier_WriteWatch_PostGrow64_Patch_Label_WriteWatchTable + movabs r10, 0xF0F0F0F0F0F0F0F0 +- shr rax, 0Ch // SoftwareWriteWatch::AddressToTableByteIndexShift ++ shr rax, 0x0C // SoftwareWriteWatch::AddressToTableByteIndexShift + NOP_2_BYTE // padding for alignment of constant + PATCH_LABEL JIT_WriteBarrier_WriteWatch_PostGrow64_Patch_Label_Lower + movabs r11, 0xF0F0F0F0F0F0F0F0 + add rax, r10 +- cmp byte ptr [rax], 0h ++ cmp byte ptr [rax], 0x0 + .byte 0x75, 0x06 + // jne CheckCardTable_WriteWatch_PostGrow64 +- mov byte ptr [rax], 0FFh ++ mov byte ptr [rax], 0xFF + + NOP_3_BYTE // padding for alignment of constant + +@@ -358,13 +358,13 @@ PATCH_LABEL JIT_WriteBarrier_WriteWatch_PostGrow64_Patch_Label_CardTable + + // Touch the card table entry, if not already dirty. + shr rdi, 0x0B +- cmp byte ptr [rdi + rax], 0FFh ++ cmp byte ptr [rdi + rax], 0xFF + .byte 0x75, 0x02 + // jne UpdateCardTable_WriteWatch_PostGrow64 + REPRET + + UpdateCardTable_WriteWatch_PostGrow64: +- mov byte ptr [rdi + rax], 0FFh ++ mov byte ptr [rdi + rax], 0xFF + + #ifdef FEATURE_MANUALLY_MANAGED_CARD_BUNDLES + NOP_2_BYTE // padding for alignment of constant +@@ -372,14 +372,14 @@ PATCH_LABEL JIT_WriteBarrier_WriteWatch_PostGrow64_Patch_Label_CardTable + + PATCH_LABEL JIT_WriteBarrier_WriteWatch_PostGrow64_Patch_Label_CardBundleTable + movabs rax, 0xF0F0F0F0F0F0F0F0 +- cmp byte ptr [rdi + rax], 0FFh ++ cmp byte ptr [rdi + rax], 0xFF + + .byte 0x75, 0x02 + // jne UpdateCardBundle_WriteWatch_PostGrow64 + REPRET + + UpdateCardBundle_WriteWatch_PostGrow64: +- mov byte ptr [rdi + rax], 0FFh ++ mov byte ptr [rdi + rax], 0xFF + #endif + + ret +@@ -417,25 +417,25 @@ LEAF_ENTRY JIT_WriteBarrier_WriteWatch_SVR64, _TEXT + mov rax, rdi + PATCH_LABEL JIT_WriteBarrier_WriteWatch_SVR64_PatchLabel_WriteWatchTable + movabs r10, 0xF0F0F0F0F0F0F0F0 +- shr rax, 0Ch // SoftwareWriteWatch::AddressToTableByteIndexShift ++ shr rax, 0xC // SoftwareWriteWatch::AddressToTableByteIndexShift + NOP_2_BYTE // padding for alignment of constant + PATCH_LABEL JIT_WriteBarrier_WriteWatch_SVR64_PatchLabel_CardTable + movabs r11, 0xF0F0F0F0F0F0F0F0 + add rax, r10 +- cmp byte ptr [rax], 0h ++ cmp byte ptr [rax], 0x0 + .byte 0x75, 0x03 + // jne CheckCardTable_WriteWatch_SVR64 +- mov byte ptr [rax], 0FFh ++ mov byte ptr [rax], 0xFF + + CheckCardTable_WriteWatch_SVR64: + shr rdi, 0x0B +- cmp byte ptr [rdi + r11], 0FFh ++ cmp byte ptr [rdi + r11], 0xFF + .byte 0x75, 0x02 + // jne UpdateCardTable_WriteWatch_SVR64 + REPRET + + UpdateCardTable_WriteWatch_SVR64: +- mov byte ptr [rdi + r11], 0FFh ++ mov byte ptr [rdi + r11], 0xFF + + #ifdef FEATURE_MANUALLY_MANAGED_CARD_BUNDLES + NOP // padding for alignment of constant +@@ -444,13 +444,13 @@ PATCH_LABEL JIT_WriteBarrier_WriteWatch_SVR64_PatchLabel_CardBundleTable + movabs r11, 0xF0F0F0F0F0F0F0F0 + + shr rdi, 0x0A +- cmp byte ptr [rdi + r11], 0FFh ++ cmp byte ptr [rdi + r11], 0xFF + .byte 0x75, 0x02 + // jne UpdateCardBundle_WriteWatch_SVR64 + REPRET + + UpdateCardBundle_WriteWatch_SVR64: +- mov byte ptr [rdi + r11], 0FFh ++ mov byte ptr [rdi + r11], 0xFF + #endif + + ret +diff --git a/src/vm/amd64/jithelpers_slow.S b/src/vm/amd64/jithelpers_slow.S +index f61b42afc77d..aa2e8cc06404 100644 +--- a/src/vm/amd64/jithelpers_slow.S ++++ b/src/vm/amd64/jithelpers_slow.S +@@ -71,15 +71,15 @@ LEAF_ENTRY JIT_WriteBarrier_Debug, _TEXT + #ifdef FEATURE_USE_SOFTWARE_WRITE_WATCH_FOR_GC_HEAP + // Update the write watch table if necessary + PREPARE_EXTERNAL_VAR g_sw_ww_enabled_for_gc_heap, r10 +- cmp byte ptr [r10], 0h ++ cmp byte ptr [r10], 0x0 + je CheckCardTable_Debug + mov r10, rdi +- shr r10, 0Ch // SoftwareWriteWatch::AddressToTableByteIndexShift ++ shr r10, 0xC // SoftwareWriteWatch::AddressToTableByteIndexShift + PREPARE_EXTERNAL_VAR g_sw_ww_table, r11 + add r10, qword ptr [r11] +- cmp byte ptr [r10], 0h ++ cmp byte ptr [r10], 0x0 + jne CheckCardTable_Debug +- mov byte ptr [r10], 0FFh ++ mov byte ptr [r10], 0xFF + #endif + + CheckCardTable_Debug: +@@ -99,13 +99,13 @@ LEAF_ENTRY JIT_WriteBarrier_Debug, _TEXT + mov r10, [r10] + + // Check if this card is dirty +- cmp byte ptr [rdi + r10], 0FFh ++ cmp byte ptr [rdi + r10], 0xFF + + jne UpdateCardTable_Debug + REPRET + + UpdateCardTable_Debug: +- mov byte ptr [rdi + r10], 0FFh ++ mov byte ptr [rdi + r10], 0xFF + + #ifdef FEATURE_MANUALLY_MANAGED_CARD_BUNDLES + // Shift rdi by 0x0A more to get the card bundle byte (we shifted by 0x0B already) +@@ -115,13 +115,13 @@ LEAF_ENTRY JIT_WriteBarrier_Debug, _TEXT + add rdi, [r10] + + // Check if this bundle byte is dirty +- cmp byte ptr [rdi], 0FFh ++ cmp byte ptr [rdi], 0xFF + + jne UpdateCardBundle_Debug + REPRET + + UpdateCardBundle_Debug: +- mov byte ptr [rdi], 0FFh ++ mov byte ptr [rdi], 0xFF + #endif + + ret +diff --git a/src/vm/amd64/virtualcallstubamd64.S b/src/vm/amd64/virtualcallstubamd64.S +index 59b5b77dbad8..744aaa11bdea 100644 +--- a/src/vm/amd64/virtualcallstubamd64.S ++++ b/src/vm/amd64/virtualcallstubamd64.S +@@ -59,19 +59,19 @@ LEAF_ENTRY ResolveWorkerChainLookupAsmStub, _TEXT + jnz Fail_RWCLAS // If the BACKPATCH_FLAGS is set we will go directly to the ResolveWorkerAsmStub + + MainLoop_RWCLAS: +- mov rax, [rax+18h] // get the next entry in the chain (don't bother checking the first entry again) ++ mov rax, [rax+0x18] // get the next entry in the chain (don't bother checking the first entry again) + test rax,rax // test if we hit a terminating NULL + jz Fail_RWCLAS + +- cmp rdx, [rax+00h] // compare our MT with the one in the ResolveCacheElem ++ cmp rdx, [rax+0x00] // compare our MT with the one in the ResolveCacheElem + jne MainLoop_RWCLAS +- cmp r10, [rax+08h] // compare our DispatchToken with one in the ResolveCacheElem ++ cmp r10, [rax+0x08] // compare our DispatchToken with one in the ResolveCacheElem + jne MainLoop_RWCLAS + Success_RWCLAS: + PREPARE_EXTERNAL_VAR CHAIN_SUCCESS_COUNTER, rdx + sub qword ptr [rdx],1 // decrement success counter + jl Promote_RWCLAS +- mov rax, [rax+10h] // get the ImplTarget ++ mov rax, [rax+0x10] // get the ImplTarget + pop rdx + jmp rax + + Added: dotnet-core-2.2/trunk/dotnet-coreclr-rid.patch =================================================================== --- dotnet-core-2.2/trunk/dotnet-coreclr-rid.patch (rev 0) +++ dotnet-core-2.2/trunk/dotnet-coreclr-rid.patch 2019-12-17 18:58:11 UTC (rev 537941) @@ -0,0 +1,39 @@ +diff -rupN dotnet-coreclr.orig/build-packages.sh dotnet-coreclr/build-packages.sh +--- dotnet-coreclr.orig/build-packages.sh 2018-06-21 11:53:45.890536633 +0200 ++++ dotnet-coreclr/build-packages.sh 2018-06-21 11:57:34.508917604 +0200 +@@ -24,6 +24,9 @@ initHostDistroRid() + if [[ $ID == "alpine" ]]; then + __HostDistroRid="linux-musl-$__Arch" + fi ++ if [[ $ID == "arch" ]]; then ++ __HostDistroRid="arch-$__Arch" ++ fi + elif [ -e /etc/redhat-release ]; then + local redhatRelease=$(</etc/redhat-release) + if [[ $redhatRelease == "CentOS release 6."* || $redhatRelease == "Red Hat Enterprise Linux Server release 6."* ]]; then +diff -rupN dotnet-coreclr.orig/build.sh dotnet-coreclr/build.sh +--- dotnet-coreclr.orig/build.sh 2018-06-21 11:53:45.890536633 +0200 ++++ dotnet-coreclr/build.sh 2018-06-21 11:56:19.968359087 +0200 +@@ -73,6 +73,9 @@ initHostDistroRid() + if [[ $ID == "alpine" ]]; then + __HostDistroRid="linux-musl-$__HostArch" + fi ++ if [[ $ID == "arch" ]]; then ++ __HostDistroRid="arch-$__HostArch" ++ fi + elif [ -e /etc/redhat-release ]; then + local redhatRelease=$(</etc/redhat-release) + if [[ $redhatRelease == "CentOS release 6."* || $redhatRelease == "Red Hat Enterprise Linux Server release 6."* ]]; then +diff -rupN dotnet-coreclr.orig/build-test.sh dotnet-coreclr/build-test.sh +--- dotnet-coreclr.orig/build-test.sh 2018-06-21 11:53:45.890536633 +0200 ++++ dotnet-coreclr/build-test.sh 2018-06-21 11:58:19.189252190 +0200 +@@ -21,6 +21,8 @@ initHostDistroRid() + source /etc/os-release + if [[ $ID == "alpine" ]]; then + __HostDistroRid="linux-musl-$__HostArch" ++ elif [[ $ID == "arch" ]]; then ++ __HostDistroRid="arch-$__HostArch" + else + __PortableBuild=1 + __HostDistroRid="$ID.$VERSION_ID-$__HostArch" + Added: dotnet-core-2.2/trunk/dotnet-coreclr-sysinfo.patch =================================================================== --- dotnet-core-2.2/trunk/dotnet-coreclr-sysinfo.patch (rev 0) +++ dotnet-core-2.2/trunk/dotnet-coreclr-sysinfo.patch 2019-12-17 18:58:11 UTC (rev 537941) @@ -0,0 +1,20 @@ +diff --git a/src/pal/src/misc/sysinfo.cpp b/src/pal/src/misc/sysinfo.cpp +index e1c949e38d53..50ccf3a75e16 100644 +--- a/src/pal/src/misc/sysinfo.cpp ++++ b/src/pal/src/misc/sysinfo.cpp +@@ -28,9 +28,12 @@ Revision History: + #define __STDC_FORMAT_MACROS + #include <inttypes.h> + #include <sys/types.h> +-#if HAVE_SYSCTL ++ ++#if HAVE_SYSCONF ++// <unistd.h> already included above ++#elif HAVE_SYSCTL + #include <sys/sysctl.h> +-#elif !HAVE_SYSCONF ++#else + #error Either sysctl or sysconf is required for GetSystemInfo. + #endif + +
