forked from dotnet/runtime
-
Notifications
You must be signed in to change notification settings - Fork 0
Merge from dotnet/main #2
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
Closed
Closed
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Co-authored-by: Martin Taillefer <mataille@microsoft.com>
…used with IUnknown only (#78189) Creates an analyzer that warns if the GeneratedComInterfaceAttribute is used with InterfaceTypeAttribute that has an argument that is not 'InterfaceIsIUnknown' Co-authored-by: Jeremy Koritzinsky <jkoritzinsky@gmail.com> Co-authored-by: Elinor Fung <elfung@microsoft.com>
* Fix most violations of new CA1859 The analyzer recommends replacing uses of types with other types that could reduce overheads (e.g. `List<T>` instead of `IList<T>`). This fixes most of the violations we currently have of the rule, but it doesn't enable it yet because there are too many false positives; fixes for those are in-flight. Some of these replacements won't help with perf (e.g. using `ArgumentException` instead of `Exception` as the return type of a throw helper create method), but there's little harm to them, and some of them do avoid overheads like allocation (e.g. foreach'ing something typed as `Dictionary<>` instead of `IDictionary<>` will avoid an enumerator allocation, accessing `Count` on a `List<T>` instead of `IList<T>` will avoid an interface dispatch, etc.) * Fix mistaken replacement
…#78598) * Implement Shuffle, GetString, and GetItems. * Cleanup and additional tests * Use where possible * Code review feedback * Additional uses of Random throughout tests * Feedback on documentation * Use ref to span to get span in string.Create. Co-authored-by: Benjamin Moir <DaZombieKiller@users.noreply.github.com> Co-authored-by: Theodore Tsirpanis <teo@tsirpanis.gr> Co-authored-by: Michał Petryka <35800402+MichalPetryka@users.noreply.github.com> * Code review feedback * Code review feedback * Apply suggestions from code review Co-authored-by: Dan Moseley <danmose@microsoft.com> * Use AssertExtensions over Assert * Improve comment * No idea where AssertHexString came from * Update src/libraries/System.Security.Cryptography/src/System/Security/Cryptography/RandomNumberGenerator.cs Co-authored-by: Jeremy Barton <jbarton@microsoft.com> Co-authored-by: Benjamin Moir <DaZombieKiller@users.noreply.github.com> Co-authored-by: Theodore Tsirpanis <teo@tsirpanis.gr> Co-authored-by: Michał Petryka <35800402+MichalPetryka@users.noreply.github.com> Co-authored-by: Dan Moseley <danmose@microsoft.com> Co-authored-by: Stephen Toub <stoub@microsoft.com> Co-authored-by: Jeremy Barton <jbarton@microsoft.com>
* Add support for JsonUnmappedMemberHandling. * Address feedback * Ignore global UnmappedMemberHandling setting when a JsonExtensionDataAttribute is specified. * Fix VerifyOptionsEqual method. * Update src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Metadata/JsonTypeInfo.cs Co-authored-by: Krzysztof Wicher <mordotymoja@gmail.com> Co-authored-by: Krzysztof Wicher <mordotymoja@gmail.com>
Co-authored-by: Bruce Forstall <brucefo@microsoft.com>
…oreCase (#80561) * Use MemoryExtensions.Equals in CharArrayHelpers.EqualsOrdinalAsciiIgnoreCase * Delete CharArrayHelpers.EqualsOrdinalAsciiIgnoreCase/Trim Just use span directly.
* Make System.Collections.Immutable consistent with repo's var policy * Fix vars that were just merged in new file
* move GetCurrentProcessorId() to shared * delete more native code * PR feedback * fix unix build * unnecessary HAVE_SCHED_GETCPU
…ions (#80106) * PEReader doesn't work with "IsLoadedImage" and "PrefetchMetadata" options * Apply suggestions from code review Co-authored-by: MartyIX <203266+MartyIX@users.noreply.github.com> Co-authored-by: Buyaa Namnan <buyankhishig.namnan@microsoft.com>
* Remove APTCA None of our assemblies support partial trust usage any longer. Removing the APTCA attribute from S.D.DS so that it follows the pattern. Fixes #79749 * Remove more code for partial trust
* [wasm] perf: generate, and collect binlogs * [wasm] perf: remove workaround to allow building for net8.0 with 8.0 sdk * [wasm] perf: revert to using latest v8 - this is because jsvu fails to generate a wrapper for the specific version, because this version of jsvu (2.0.1) is broken with node 14.x . And node 18.x builds are not built for ubuntu 18.04
* Removing ScopeInfo variable debug info Variable live range replaced it on 2019. * Removing VaribleLiveRange preprocessing flag * Adding #if defined(DEBUG) * Using ifdef in place of defined
* delete enum support for bool as an underlying type * keep loading bool backed enum tests * rollback changes in the type loader * rollback additionaml test * rollback code optimized by jit Co-authored-by: Jan Kotas <jkotas@microsoft.com>
* Dispose archive stream after the list of DataStreams * Add tests for TarReader.DisposeAsync properly disposing underlying stream
… Build ID 2087627 (#80505) * Localized file check-in by OneLocBuild Task: Build definition ID 679: Build ID 2085603 * Localized file check-in by OneLocBuild Task: Build definition ID 679: Build ID 2085846 * Localized file check-in by OneLocBuild Task: Build definition ID 679: Build ID 2087105 * Localized file check-in by OneLocBuild Task: Build definition ID 679: Build ID 2087404
* Update dependencies from https://github.com/dotnet/linker build 20221208.1 Microsoft.NET.ILLink.Tasks From Version 7.0.100-1.22606.1 -> To Version 8.0.100-1.22608.1 * Update dependencies from https://github.com/dotnet/linker build 20221209.1 Microsoft.NET.ILLink.Tasks From Version 7.0.100-1.22606.1 -> To Version 8.0.100-1.22609.1 * Update dependencies from https://github.com/dotnet/linker build 20221212.1 Microsoft.NET.ILLink.Tasks From Version 7.0.100-1.22606.1 -> To Version 8.0.100-1.22612.1 * Update dependencies from https://github.com/dotnet/linker build 20221212.2 Microsoft.NET.ILLink.Tasks From Version 7.0.100-1.22606.1 -> To Version 8.0.100-1.22612.2 * Update dependencies from https://github.com/dotnet/linker build 20221219.1 Microsoft.NET.ILLink.Tasks From Version 7.0.100-1.22606.1 -> To Version 8.0.100-1.22619.1 * Update dependencies from https://github.com/dotnet/linker build 20230102.2 Microsoft.NET.ILLink.Tasks From Version 7.0.100-1.22606.1 -> To Version 8.0.100-1.23052.2 * Update dependencies from https://github.com/dotnet/linker build 20230104.1 Microsoft.NET.ILLink.Tasks From Version 7.0.100-1.22606.1 -> To Version 8.0.100-1.23054.1 * Update dependencies from https://github.com/dotnet/linker build 20230105.2 Microsoft.NET.ILLink.Tasks From Version 7.0.100-1.22606.1 -> To Version 8.0.100-1.23055.2 * Update dependencies from https://github.com/dotnet/linker build 20230109.1 Microsoft.NET.ILLink.Tasks From Version 7.0.100-1.22606.1 -> To Version 8.0.100-1.23059.1 * Update dependencies from https://github.com/dotnet/linker build 20230110.1 Microsoft.NET.ILLink.Tasks From Version 7.0.100-1.22606.1 -> To Version 8.0.100-1.23060.1 * Update dependencies from https://github.com/dotnet/linker build 20230112.1 Microsoft.NET.ILLink.Tasks From Version 7.0.100-1.22606.1 -> To Version 8.0.100-1.23062.1 Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
* Update dependencies from https://github.com/dotnet/icu build 20230109.1 Microsoft.NETCore.Runtime.ICU.Transport From Version 8.0.0-alpha.1.23056.1 -> To Version 8.0.0-alpha.1.23059.1 * Update dependencies from https://github.com/dotnet/xharness build 20230109.1 Microsoft.DotNet.XHarness.CLI , Microsoft.DotNet.XHarness.TestRunners.Common , Microsoft.DotNet.XHarness.TestRunners.Xunit From Version 1.0.0-prerelease.23052.2 -> To Version 1.0.0-prerelease.23059.1 * Update dependencies from https://github.com/dotnet/runtime-assets build 20230109.2 Microsoft.DotNet.CilStrip.Sources , System.ComponentModel.TypeConverter.TestData , System.Drawing.Common.TestData , System.Formats.Tar.TestData , System.IO.Compression.TestData , System.IO.Packaging.TestData , System.Net.TestData , System.Private.Runtime.UnicodeData , System.Runtime.Numerics.TestData , System.Runtime.TimeZoneData , System.Security.Cryptography.X509Certificates.TestData , System.Text.RegularExpressions.TestData , System.Windows.Extensions.TestData From Version 8.0.0-beta.23059.1 -> To Version 8.0.0-beta.23059.2 * Update dependencies from https://github.com/dotnet/roslyn-analyzers build 20230109.1 Microsoft.CodeAnalysis.Analyzers , Microsoft.CodeAnalysis.NetAnalyzers From Version 3.3.4-beta1.23058.2 -> To Version 3.3.4-beta1.23059.1 * Update dependencies from https://github.com/dotnet/hotreload-utils build 20230109.1 Microsoft.DotNet.HotReload.Utils.Generator.BuildTool From Version 1.1.0-alpha.0.22628.1 -> To Version 1.1.0-alpha.0.23059.1 * Update dependencies from https://github.com/dotnet/emsdk build 20230111.1 Microsoft.NET.Workload.Emscripten.net7.Manifest-8.0.100 From Version 8.0.0-alpha.1.23054.1 -> To Version 8.0.0-alpha.1.23061.1 * Update dependencies from https://github.com/dotnet/cecil build 20230110.1 Microsoft.DotNet.Cecil , Microsoft.DotNet.Cecil.Pdb From Version 0.11.4-alpha.23053.1 -> To Version 0.11.4-alpha.23060.1 * Update dependencies from https://github.com/dotnet/hotreload-utils build 20230111.2 Microsoft.DotNet.HotReload.Utils.Generator.BuildTool From Version 1.1.0-alpha.0.22628.1 -> To Version 1.1.0-alpha.0.23061.2 * Update dependencies from https://github.com/dotnet/llvm-project build 20230111.1 runtime.linux-arm64.Microsoft.NETCore.Runtime.Mono.LLVM.Sdk , runtime.linux-arm64.Microsoft.NETCore.Runtime.Mono.LLVM.Tools , runtime.linux-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Sdk , runtime.linux-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Tools , runtime.osx-arm64.Microsoft.NETCore.Runtime.Mono.LLVM.Sdk , runtime.osx-arm64.Microsoft.NETCore.Runtime.Mono.LLVM.Tools , runtime.osx-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Sdk , runtime.osx-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Tools , runtime.win-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Sdk , runtime.win-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Tools From Version 14.0.0-alpha.1.22626.2 -> To Version 14.0.0-alpha.1.23061.1 * Update dependencies from https://dev.azure.com/dnceng/internal/_git/dotnet-optimization build 20230111.7 optimization.linux-arm64.MIBC.Runtime , optimization.linux-x64.MIBC.Runtime , optimization.windows_nt-arm64.MIBC.Runtime , optimization.windows_nt-x64.MIBC.Runtime , optimization.windows_nt-x86.MIBC.Runtime , optimization.PGO.CoreCLR From Version 1.0.0-prerelease.22511.6 -> To Version 1.0.0-prerelease.23061.7 Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
* Moving the LoadVector intrinsics to use `gtNewSimdLoad*Node` helper APIs * Switching SimdLoadNode to return GT_IND * Merge separate imp*Intrinsic paths on xarch into impSpecialIntrinsic * Updating the LoadVector64/128/256 APIs of Sse/Sse2/Avx and AdvSimd to use gtNewSimdLoadNode * Moving the StoreVector intrinsics to use `gtNewSimdStore*Node` helper APIs * Switching SimdStoreNode to return GT_ASG * Updating the Store APIs of Sse/Sse2/Avx and AdvSimd to use gtNewSimdStoreNode * Make the SIMD load/store instruction consistent between VEX and non-VEX * Use GTF_REVERSE_OPS instead of impSpillSideEffect * Applying formatting patch * Responding to PR feedback * Revert "Use GTF_REVERSE_OPS instead of impSpillSideEffect" This reverts commit 0c55782. * Remove an unnecessary assert for gtNewSimdLoad/StoreNode
Enable edge based profiles for OSR, partial compilation, and optimized plus instrumented cases. For OSR this requires deferring flow graph modifications until after we have built the initial probe list, so that the initial list reflects the entirety of the method. This set of candidate edge probes is thus the same no matter how the method is compiled. A given compile may schematize a subset of these probes and materialize a subset of what gets schematized; this is tolerated by the PGO mechanism provided that the initial instrumented jitting produces a schema which is a superset of the schema produced by any subsequent instrumented rejitting. This is normally the case. Partial compilation may still need some work to ensure full schematization but it is currently off by default. Will address this subsequently. For optimized compiles we give the EfficientEdgeCountInstrumentor the same kind of probe relocation abilities that we have in the BlockCountInstrumentor. In particular we need to move probes that might appear in return blocks that follow implicit tail call blocks, since those return blocks must remain empty. The details on how we do this are a bit different but the idea is the same: we create duplicate copies of any probe that was going to appear in the return block and instead instrument each pred. If the pred reached the return via a critical edge, we split the edge and put the probe there. This analysis relies on cheap preds, so to ensure we can use them we move all the critial edge splitting so it happens before we need the cheap pred lists. The ability to do block profiling is retained but will no longer be used without special config settings. There were also a few bug fixes in the spanning tree visitor. It must visit a superset of the blocks we end up importing and was missing visits in some cases. This should improve jit time and code quality for instrumented code. Fixes #47942. Fixes #66101. Contributes to #74873.
* Use ArgumentOutOfRangeException.ThrowIf helpers in more places * Apply suggestions from code review Co-authored-by: Buyaa Namnan <buyankhishig.namnan@microsoft.com> Co-authored-by: Buyaa Namnan <buyankhishig.namnan@microsoft.com>
Instead of passing state around in a MonoAotState structure, use a few global variables.
* Use weak handle for the back reference to EventProvider This avoids leak when the event provider is orphaned without explicit unregistration. Fixes #80450 * Delete unnecessary IEventProvider interface Repurpose no-op event provider as a base class * Fix warning on wasm
* [wasm] Enable Vector4.Dot We have all the pieces already in place * fix condition Co-authored-by: Larry Ewing <lewing@microsoft.com>
* Re-eanble ApiCompat ref<->src assembly validation * Fix API compatibility differences and update ApiCompat baseline * Fix mono build * Disable ApiCompat for linker
The zeroing that the tailcall-to-loop optimization does was zeroing the promoted copies for implicit byrefs even when promotion of them was undone. This was introducing unexpected references to the promoted fields. Fix #81081
* Ensure converter factories do not throw on unsupported types. * Update src/libraries/System.Text.Json/tests/System.Text.Json.FSharp.Tests/UnionTests.fs * Properly implement the Multi-dimensional array converter in tests.
…76444) * Add Utf8JsonWriter.WriteRawValue(System.Buffers.ReadOnlySequence). * Fix comment: remove TODO; rename GrowIfNeeded(). * Fix comment: consider ReadOnlySequence.Length >= int.Max. * Make test case more generic for long typed length test data. * Fix comment: add back TODO issue; checked cast long length to int at begin. * Fix comment: revert checked cast long length.
Previously generic data flow was done from generic dictionary nodes. Problem with that approach is that there's no origin information at that point. The warnings can't point to the place where the problematic instantiation is in the code - we only know that it exists. Aside from it being unfriendly for the users, it means any RUC or suppressions don't work on these warnings the same way they do in linker/analyzer. This change modifies the logic to tag the method as "needs data flow" whenever we spot an instantiation of an annotated generic in it somewhere. Then the actualy validation/marking is done from data flow using the trim analysis patterns. The only exception to this is generic data flow for base types and interface implementations, that one is done on the EEType nodes. Note that AOT implements a much more precise version of the generic data flow validation as compared to linker/analyzer. See the big comment at the bening of GenericParameterWarningLocation.cs for how that works. Changes the expected warning validation to use tokens to compare message origins (same reason as with Kept validation - consistently converting things to string is hard) Adds a new dependency node with the generic type definition to the graph and then does analysis on that node. This is to avoid potential noise warnings which could happen due to multiple instantiations calling the checking code multiple times. With this the check is done only once on the type definition. Tweaked some tests to try to cover the multiple instances scenario.
* Add missing case for upper save/restore * PR review feedback:
The test was failing in the outerloop CI testing because of a bug in the test. One global variable that was modified by the main and checked by the SIGSEGV handler was not marked as volatile. Close #81113
We don't have a `MethodTable` shape for function pointer types because how they should look like hasn't been defined until .NET 8. Beef up the CoreCLR compat shim. We'll not be 100% compatible with this because `typeof(Tuple<delegate*<void>[]>)` doesn't actually load as `typeof(Tuple<IntPtr[]>)`, but this'll do until #71883.
Works around #79561
At the moment we don't have too many profiling options on s390x, and the logging profiler comes in handy. Enable building it on s390x and define MONO_DLL_EXPORT in order to unhide mono_profiler_init_log().
* avoid allocation of SelectClientCertificate delegate * cleanup
…ever negative" (#81055) * Update the JIT to track `Span.Length` and `ReadOnlySpan.Length` as "never negative" * Updating the "is never negative" info to be tracked in LclVarDsc * Apply formatting patch * Ensure lvIsNeverNegative is propagated to shadows * Update src/coreclr/jit/gentree.h Co-authored-by: SingleAccretion <62474226+SingleAccretion@users.noreply.github.com> * Responding to PR feedback * Adding two asserts * Rename GenTreeField::IsNeverNegative to IsSpanLength and add a comment * Fix an assert Co-authored-by: SingleAccretion <62474226+SingleAccretion@users.noreply.github.com>
…124.2 (#81161) Microsoft.DotNet.Arcade.Sdk , Microsoft.DotNet.Build.Tasks.Archives , Microsoft.DotNet.Build.Tasks.Feed , Microsoft.DotNet.Build.Tasks.Installers , Microsoft.DotNet.Build.Tasks.Packaging , Microsoft.DotNet.Build.Tasks.TargetFramework , Microsoft.DotNet.Build.Tasks.Templating , Microsoft.DotNet.Build.Tasks.Workloads , Microsoft.DotNet.CodeAnalysis , Microsoft.DotNet.GenAPI , Microsoft.DotNet.GenFacades , Microsoft.DotNet.Helix.Sdk , Microsoft.DotNet.PackageTesting , Microsoft.DotNet.RemoteExecutor , Microsoft.DotNet.SharedFramework.Sdk , Microsoft.DotNet.VersionTools.Tasks , Microsoft.DotNet.XUnitConsoleRunner , Microsoft.DotNet.XUnitExtensions From Version 8.0.0-beta.23073.10 -> To Version 8.0.0-beta.23074.2 Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
…1099) * DebugStore: factor common PE and Webcil reading logic * Move common logic to a MetadataDebugSummary class Also switch from cascade of 'if's to a 'switch' when looking at debug entries * Implement PDB checksum reader for WebcilReader * Move WebcilReader reflection to a helper; add lazy initialization Co-authored-by: Ankit Jain <radical@gmail.com>
* Auto-generated changes for adding Vector512 in JitInterface. * Additional Interface Changes. * Updating JITEEVersionIdentifier.
markples
pushed a commit
that referenced
this pull request
May 23, 2023
markples
pushed a commit
that referenced
this pull request
Jul 7, 2023
…tnet#87189) This fixes a startup crash on Big Sur: > error: * Assertion at /Users/runner/work/1/s/src/mono/mono/utils/mono-hwcap-arm64.c:35, condition `res == 0' not met Because sysctl can't find some of these options: $ sysctl hw.optional.armv8_crc32 hw.optional.armv8_crc32: 1 $ sysctl hw.optional.arm.FEAT_RDM sysctl: unknown oid 'hw.optional.arm.FEAT_RDM' $ sysctl hw.optional.arm.FEAT_DotProd sysctl: unknown oid 'hw.optional.arm.FEAT_DotProd' $ sysctl hw.optional.arm.FEAT_SHA1 sysctl: unknown oid 'hw.optional.arm.FEAT_SHA1' $ sysctl hw.optional.arm.FEAT_SHA256 sysctl: unknown oid 'hw.optional.arm.FEAT_SHA256' $ sysctl hw.optional.arm.FEAT_AES sysctl: unknown oid 'hw.optional.arm.FEAT_AES' Full stack trace: * thread #1, queue = 'com.apple.main-thread', stop reason = breakpoint 2.1 * frame #0: 0x0000010ef37560 libmonosgen-2.0.dylib`monoeg_assertion_message frame #1: 0x0000010ef375cc libmonosgen-2.0.dylib`mono_assertion_message + 32 frame #2: 0x0000010ef40d6c libmonosgen-2.0.dylib`mono_hwcap_arch_init + 544 frame #3: 0x0000010ef54bd8 libmonosgen-2.0.dylib`mono_hwcap_init + 72 frame dotnet#4: 0x0000010ee14dc0 libmonosgen-2.0.dylib`parse_optimizations + 52 frame dotnet#5: 0x0000010edbed48 libmonosgen-2.0.dylib`mono_init frame dotnet#6: 0x0000010ee18968 libmonosgen-2.0.dylib`mono_jit_init_version frame dotnet#7: 0x0000010f48a300 libxamarin-dotnet-debug.dylib`xamarin_bridge_initialize + 216 frame dotnet#8: 0x0000010f4900a4 libxamarin-dotnet-debug.dylib`xamarin_main + 376
trylek
pushed a commit
that referenced
this pull request
Aug 21, 2023
markples
pushed a commit
that referenced
this pull request
Nov 15, 2023
…tnet#90436) * Enable IL trim for WASM by default * Make ILStrip available for local build * Make all calling another method go through the logic to see if it could call an AOT'ed version of it before trying to interp compile it * Add back accidentally removed line of code * Update test to accommodate IL trim with WASM AOT * Move jit_call_can_be_supported to mini-runtime, so it doesn't depends on the value of mono_use_interpreter * Update var name * Attempt to fix rebuild test failures * Attempt to fix the file open issue with unicode on windows * Attempt to fix unicode issue #2 * Enable g_fopen to have the capability of handling opening files with unicode name on all platforms * Add comment * Update comment * Fix file indentation format * Check if string contains non-ascii char * Remove unused callback * Remove redundant comment * Update method name * Fixed some method not found issues and remove the optimization for g_fopen * Fix tailcall * Disable tailcall optimization when calling a trimmed method * Free method header * Fix windows build error * Free method header at the correct locatioin * Fix the condition of skipping tailcall * Fix test failure * Move JIT/AOT call invoke away from MINT_CALL, as it is not needed there. * Fix virtual tail call * Address review feedback * Put the trimmed assemblies in a new folder, output an updated list of assemblies and update _WasmAssembliesInternal with the new list * Put trimmed assemblies in IntermediateOutputPath * Remove TrimmedAssemblies * Create trimmed assembly folder before the parallel run * Try to fix the issue with missing item * Fix parallelism issue * Only start the trim when the assembly is newer than the output * Add assembly item to the list, when * Add some logging * Fixed runtimeconfig.json file path issue and disabed failed tests * Update parameter name * Fix wasi build * Use the correct parameter * Fix runtime test failure * WasmAppBuilder: runtimeconfig.json path can be null * cleanup * ILStrip: fix typo in id name * Cleanup * ILStrip: ensure output assemblies are in the same order as the input. This is required for incremental builds. * more cleanup * Re-enable disabled tests * Change the default value for WasmStripILAfterAOT to false * Fix the issue with changing the value of WasmStripILAfterAOT between incremental builds * Move the location of file deleting * Use WasmAssembliesFinal or ResolvedFileToPublish during publish in WasmSDK * Copy metadata in AOT compiler and when creating WasmAssembliesToBundle from ResolvedFileToPublish * Add _WasmSatelliteAssemblies to WasmAssembliesFinal * Add a wasm template test * Include all non-dll ResolvedFileToPublish for ComputeWasmPublishAssets * Add a blazor template test * Address review feedback * Update src/mono/wasm/Wasm.Build.Tests/Templates/WasmTemplateTests.cs Co-authored-by: Ankit Jain <radical@gmail.com> * Update parameter name * Update usage of parameter * Revert EmccCompile change * MonoAOTCompiler: revert rebuilding when WasmStripILAfterAOT value changes * Compress -> GZipCompress, and cleanup * rework the tests - to support webcil case - run blazor app - add cases for the default setting, and the opposite - cleanup * ILStrip.cs: Emit a message about stripping to make it obvious to the user * WasmApp.targets: update comment * Change default value to false and update test --------- Co-authored-by: Ankit Jain <radical@gmail.com> Co-authored-by: Marek Fišera <mara@neptuo.com>
markples
pushed a commit
that referenced
this pull request
Dec 11, 2023
Fixes dotnet#95367. Relevant part of the JitDump: ``` Using `if true` assertions from pred BB02 Assertions in: #1 fgMorphTree BB04, STMT00021 (before) [000070] DA--------- * STORE_LCL_VAR ubyte V10 tmp9 [000057] ----------- \--* CAST int <- ubyte <- int [000006] ----------- \--* EQ int [000004] ----------- +--* LCL_VAR ref V02 tmp1 (last use) [000055] H---------- \--* CNS_INT(h) ref 'Frozen EmptyPartition`1<Int32> object' Assertion prop for index #1 in BB04: [000006] ----------- * EQ int GenTreeNode creates assertion: [000070] DA---+----- * STORE_LCL_VAR ubyte V10 tmp9 In BB04 New Local Constant Assertion: V10 == [0000000000000001], index = #2 fgMorphTree BB04, STMT00021 (after) [000070] DA---+----- * STORE_LCL_VAR ubyte V10 tmp9 [000055] H----+----- \--* CNS_INT(h) int ``` The JitDump is unfinished because the compiler crashes when trying to dump the last line. Clearly, the `CNS_INT` is no longer a handle at that point because we just bashed it to a constant 1.
markples
pushed a commit
that referenced
this pull request
Feb 22, 2024
…tnet#95292) * Add IndentText json option * Add IndentText for json source generator * Add tests * IndentText must be non-nullable * Improve performance * Add extra tests * Cleanup * Apply suggestions from code review Co-authored-by: Eirik Tsarpalis <eirik.tsarpalis@gmail.com> * Fixes following code review * Fixes following code review #2 * Add tests for invalid characters * Handle RawIndent length * Move all to RawIndentation * Update documentation * Additional fixes from code review * Move to the new API * Extra fixes and enhancements * Fixes from code review * Avoid introducing extra fields in JsonWriterOptions * Fix OOM error * Use bitwise logic for IndentedOrNotSkipValidation * Cache indentation options in Utf8JsonWriter * Add missing test around indentation options * New fixes from code review * Update src/libraries/System.Text.Json/src/System/Text/Json/Writer/Utf8JsonWriter.cs * Add test to check default values of the JsonWriterOptions properties * Fix comment --------- Co-authored-by: Eirik Tsarpalis <eirik.tsarpalis@gmail.com>
markples
pushed a commit
that referenced
this pull request
Feb 22, 2024
markples
pushed a commit
that referenced
this pull request
Jul 29, 2024
* [wasm] Bump emscripten to 3.1.56 * Replace Module.asm with Module.wasmExports Module.asm was removed, use wasmExports instead. Context: emscripten-core/emscripten#19816 * Updates for .native.worker.js -> mjs rename Context: emscripten-core/emscripten#21041 * Update deps * Add general testing feed * Update mode deps * Update path * Use current python packages for now, we don't have newer ones The current names 3.1.34 are new enough * Keep using llvm 16 for runtime and aot compiler * Add -Wno-pre-c11-compat only for browser * Temporarily disable version checks to get further * Temporarily disable version checks to get further #2 * Disable -Wunused-command-line-argument * Update emsdk deps * Update icu dependency * Revert "Temporarily disable version checks to get further #2" This reverts commit 3f8834f. * Revert "Temporarily disable version checks to get further" This reverts commit fe1e5c6. * Fix emsdk check We use system python on osx too * Workaround wasm-opt crash * Workaround wasm-opt crash * Workaround wasm-opt crash * Fix WBT test * Feedback * Update ICU dependency * Update emscripten deps * Revert "Workaround wasm-opt crash" This reverts commit 200cf3b. * Revert "Workaround wasm-opt crash" This reverts commit 4530edf. * Revert "Workaround wasm-opt crash" This reverts commit 3593c41. * Increase tests timeout * Show test progress * Increase MT library tests timeout * Disable WBT tests with SkiaSharp * Increase helix tests timeout on browser * Increase WBT timeout * Increase initial heap sizes * Fix mono_wasm_load_runtime cwrap signature Fixes: `Uncaught ExitStatus: Assertion failed: stringToUTF8Array expects a string (got number)` * Enable XunitShowProgress for threading tasks tests * Try to reduce number of parallel AOT compilations To check whether it will improve memory issues on CI * Use new docker image for helix/windows tests * Revert "Try to reduce number of parallel AOT compilations" This reverts commit 5d9a6d2. * Reduce the timeouts * Reduce intitial heap size * use active issues for MT * Remove testing channel from nuget config, update deps * Update emsdk and icu dependencies --------- Co-authored-by: Larry Ewing <lewing@microsoft.com> Co-authored-by: pavelsavara <pavel.savara@gmail.com>
markples
pushed a commit
that referenced
this pull request
Sep 12, 2024
* bug #1: don't allow for values out of the SerializationRecordType enum range * bug #2: throw SerializationException rather than KeyNotFoundException when the referenced record is missing or it points to a record of different type * bug #3: throw SerializationException rather than FormatException when it's being thrown by BinaryReader (or sth else that we use) * bug dotnet#4: document the fact that IOException can be thrown * bug dotnet#5: throw SerializationException rather than OverflowException when parsing the decimal fails * bug dotnet#6: 0 and 17 are illegal values for PrimitiveType enum * bug dotnet#7: throw SerializationException when a surrogate character is read (so far an ArgumentException was thrown)
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.