Alexander Köplinger [Fri, 3 Apr 2020 18:24:35 +0000 (20:24 +0200)]
Disable iOS_arm builds on official builds too (#34504)
It started failing with the same issue as https://github.com/dotnet/runtime/issues/34465
Tomáš Rylek [Fri, 3 Apr 2020 17:48:08 +0000 (19:48 +0200)]
Crossgen2 fixes to enable composite build with shared framework (#34431)
These changes involve targeted fixes to issues seen due to the new
build mode and generic signature encoding fixes identified in
my offline investigation with JanV. While I locally see the tests
passing with just a handful of failures, I still seem unable to
make the tests run in the lab; I keep investigating that but
I believe it's useful to merge this delta in to let us parallelize
follow-up efforts.
Thanks
Tomas
Manish Godse [Fri, 3 Apr 2020 17:37:09 +0000 (10:37 -0700)]
Parallel Builds PRv2 (#34460)
* simplify libraries build dependencies.
* FIx depends for tests
* Fix artifact name for webAssembly
Gleb Balykov [Fri, 3 Apr 2020 16:22:56 +0000 (19:22 +0300)]
Add armel arch in help message (#34491)
Jan Kotas [Fri, 3 Apr 2020 16:21:48 +0000 (09:21 -0700)]
Delete stale CPU cache size detection (#34488)
Fixes #34478
Alexis Christoforides [Fri, 3 Apr 2020 14:28:23 +0000 (10:28 -0400)]
Port CoreCLR's TypeNameBuilder to C#, and use it in Mono too (#33701)
* Port CoreCLR's TypeNameBuilder to C#, and use it in Mono too
Mono's System.Reflection.Emit creates type names that fail to be normalized or shaped in all ways that CoreCLR does.
Port CoreCLR's mixed-mode thread-unsafe implementation to thread-safe C#, and start using it in Mono for names in TypeBuilder.
Fixes issues with e.g. null-delimited type names being passed to different Reflection.Emit builders. Contributes to https://github.com/dotnet/runtime/issues/2389.
Layomi Akinrinade [Fri, 3 Apr 2020 13:27:27 +0000 (09:27 -0400)]
Fix WriteLargeJsonToStreamWithoutFlushing test (#34489)
Egor Bogatov [Fri, 3 Apr 2020 13:24:55 +0000 (16:24 +0300)]
Don't build `System.Utf8String.Experimental.Tests.csproj` tests for mono (#34445)
nietras [Fri, 3 Apr 2020 13:20:10 +0000 (15:20 +0200)]
Fix subsetCategory is just one `-` not two `--` (#34498)
Otherwise fails with:
```
MSBUILD : error MSB1001: Unknown switch.
Switch: --subsetCategory
```
on Windows
Vlad Brezae [Fri, 3 Apr 2020 12:49:06 +0000 (15:49 +0300)]
[sgen] Implement api for allocating pinned arrays (#34398)
* [sgen] Add support for allocating pinned array
These objects will end up allocated either in LOS (which is by design not moved around) or into special major blocks where compaction doesn't take place.
* [sgen] Be consistent with coreclr on GC api
* Enable GC tests for pinned array allocation
* Skip large array allocation test on mono
Alexis Christoforides [Fri, 3 Apr 2020 12:48:12 +0000 (08:48 -0400)]
[mono][sre] Add an expected attribute on underlying fields of enum classes (#34212)
Follow CoreCLR's example and add the RTSpecialName type attribute to any class field with the 'value__' name when , used as the value store for enumeration class instances.
Second part of the "RTSpecialName fix" that started with https://github.com/dotnet/runtime/pull/33389 - before, our behavior was to add the RTSpecialName immediately, as soon as the EnumBuilder was constructed.
Contributes to https://github.com/dotnet/runtime/issues/2389
Jan Vorlicek [Fri, 3 Apr 2020 11:39:35 +0000 (13:39 +0200)]
Fix two issues detected by Valgrind (#34462)
* Fix two issues detected by Valgrind
When I have used Valgrind to investigate a memory corruption issue recently,
I've noticed that it has also reported two cases when a conditional jump
was using an uninitialized variable as one of the inputs to the condition.
This change fixes these.
Alexander Köplinger [Fri, 3 Apr 2020 06:04:07 +0000 (08:04 +0200)]
Disable iOS arm PR builds (#34467)
* Disable iOS arm PR builds
Infrastructure issue: https://github.com/dotnet/runtime/issues/34465
* Add tracking issue and disable installer iOS arm build too
Maryam Ariyan [Fri, 3 Apr 2020 01:51:21 +0000 (18:51 -0700)]
Remove -runtime version suffix hack for M.E. (#34464)
Tamar Christina [Fri, 3 Apr 2020 01:19:15 +0000 (02:19 +0100)]
Arm64: Add xtn and xtn2 intrinsics codegen, api and tests. (#33108)
Dan Moseley [Fri, 3 Apr 2020 01:11:08 +0000 (18:11 -0700)]
Remove @jeremykuhne from area owners (#34483)
cc @ericstj
Jared Parsons [Thu, 2 Apr 2020 22:59:51 +0000 (15:59 -0700)]
Enable warn as error for libraries (#34457)
This enables warn as error for the libraries jobs now that our builds
are warning free.
James Newton-King [Thu, 2 Apr 2020 20:21:24 +0000 (09:21 +1300)]
Sync changes from ASP.NET Core dynamic HPack (#34247)
David Wrighton [Thu, 2 Apr 2020 18:35:24 +0000 (11:35 -0700)]
Experimental pgo tool (#34433)
* Experimental pgo tool
- Experiment and rough design going forward for providing profile data to the compiler
* Update build so dotnet-pgo is built
Steve Pfister [Thu, 2 Apr 2020 17:42:08 +0000 (13:42 -0400)]
Add build configuration to generate runtime packs for iOS (#34050)
This adds support for generating Microsoft.NETCore.App.Runtime packs for ios-x64, ios-arm, and ios-arm64.
Ryan Lucia [Thu, 2 Apr 2020 16:45:42 +0000 (12:45 -0400)]
[meta] Add mono_type_get_name_full to public API (#34436)
This is needed by Xamarin.Android to be able to round-trip with names fetched via reflection, as the only public API for this (mono_type_get_name) uses the IL format instead.
Egor Bogatov [Thu, 2 Apr 2020 16:32:31 +0000 (19:32 +0300)]
fix iOS sample build (#34455)
Ryan Lucia [Thu, 2 Apr 2020 16:19:22 +0000 (12:19 -0400)]
[loader] Add append option to loader hook installation functions (#34284)
monojenkins [Thu, 2 Apr 2020 15:36:54 +0000 (11:36 -0400)]
[wasm][debugger] Add support for visualizing valuetypes (#33604)
Co-authored-by: radical <radical@users.noreply.github.com>
Manish Godse [Thu, 2 Apr 2020 14:25:28 +0000 (07:25 -0700)]
Merge pull request #34166 from mangod9/master
Add support for building S.P.CoreLib in a separate job
Jared Parsons [Thu, 2 Apr 2020 13:44:05 +0000 (06:44 -0700)]
Update WASM image (#34421)
Move to an Ubuntu image which has the `en_US.UTF-8` locale available.
This should remove the spurious warning that we're seeing during
PR / CI
closes #34280
Jan Vorlicek [Thu, 2 Apr 2020 13:11:13 +0000 (15:11 +0200)]
Fix large version bubble field offset computation (#34401)
This change fixes two bugs in field offset computation where the results
that crossgen2 was getting was different from what runtime computes. In
both cases, the problem was caused by alignment of a derived class being
done differently.
The first issue was happening for the case when the base and derived
classes are in different assemblies. Runtime detect if two assemblies
are in the same version bubble using the native manifest metadata table
containing a list of assemblies that was supposed to contain all
assemblies that the assembly being compiled was found to reference.
However, it contained only assemblies that were not in the original
assembly reference list, e.g. ones pulled in by inlining. So runtime
wasn't getting the same view on what's in the bubble.
The second issue happened for the case when both the base and derived
class were from the same assembly, but one of the ancestor classes had a
field of a value class type that was from another assembly and could be
transitively decomposed to fields of types from the same assembly or types
like primitive types, object, pointer or enums. The alignment of a derived
class members is determined based on that and runtime decision is to
align if there is any type from another assembly in the type hierarchy
of a class or in fields of any ancestors.
For example, the decision would be different for the following scenario:
Assembly A:
struct AA
{
int a;
}
Assembly B:
class B1
{
AA aa;
}
class B2 : B1
{
int x;
}
Here crossgen2 would not align the first member but runtime would. So the
layout of B2 produced by crossgen2 would be:
```
Offset Field
0 MethodTable
8 a
12 x
```
Layout produced by the runtime would be
```
Offset Field
0 MethodTable
8 a
16 x
```
The fix for the first issue is to put all referenced assemblies into the
native manifest metadata.
The fix for the second issue is to stop decomposing members of value
classes once we hit a value class that's from another module.
Tomáš Rylek [Thu, 2 Apr 2020 12:52:48 +0000 (14:52 +0200)]
R2RDump fixes for parsing composite images (#34429)
1. Fixed several inconsistencies w.r.t. signature context in
recursive descent into generic signatures based on offline
investigation with JanV.
2. Don't crash the dump upon invalid UTF8 characters.
Thanks
Tomas
Andrey Kurdyumov [Thu, 2 Apr 2020 11:55:41 +0000 (17:55 +0600)]
Fix ordering of the instructions (#34447)
Command for opening Visual Studio works from root folder,
but not inside library folder as was implied by ordering in the instructions.
Jan Vorlicek [Thu, 2 Apr 2020 10:37:58 +0000 (12:37 +0200)]
Enhance PAL initialization order (#34308)
* Enhance PAL initialization order
The CGroups initialization has _ASSERTE that is not asserting because
debugging support was being initialized after the CGroups initialization.
This change moves the debugging support initialization to the earliest
possible point. It also modifies it so that it doesn't depend on the
PAL env functions and uses getenv instead. And finally, initialization
of the critical section for debug printf is moved to the very end
of DBG_init_channels just as a little cleanup.
Jan Vorlicek [Thu, 2 Apr 2020 10:19:59 +0000 (12:19 +0200)]
Fix crossgen2 delegates to static generic methods (#34370)
In crossgen2 we convert all methods to their canon versions in
CreateMethodEntrypointNodeHelper, which causes a problem for
delegates set to generic static methods. When these methods are called
via a delegate, at runtime it gets a hidden generic argument that
is a MethodDesc of a canon version of the static method instead of the
specific instantiation.
I've investigated why we convert all methods to their canon versions in
the CreateMethodEntrypointNodeHelper and I've found a PR by @trylek
in CoreRT repo that has introduced it. I've discussed that with him, but
he wasn't able to figure out why the change was made and it seems like
it was mostly accidental or fixing some problem that no longer exists.
Removing this conversion fixes the problem and I have verified that it
doesn't introduce new ones by running both pri 1 CoreCLR tests and the
libraries tests. It has also made the diff between code generated by
crossgen1 and crossgen2 e.g. for System.Private.CoreLib.dll smaller.
Jo Shields [Thu, 2 Apr 2020 08:29:42 +0000 (04:29 -0400)]
Initial Mono Android CI (#34125)
Manish Godse [Thu, 2 Apr 2020 06:36:10 +0000 (23:36 -0700)]
removed some unused corelib configs.
Santiago Fernandez Madero [Thu, 2 Apr 2020 05:37:52 +0000 (22:37 -0700)]
Move StrongNameKeyId=Open default value down after arcade is imported (#34428)
Elinor Fung [Thu, 2 Apr 2020 03:00:11 +0000 (20:00 -0700)]
Add test for native library load through AssemblyLoadContext.LoadUnmanagedDll (#34425)
* Reorganize the NativeLibrary tests to be in one root folder and build/use the same native library for testing
* Add test for AssemblyLoadContext.LoadUnmanagedDll
Jan Kotas [Thu, 2 Apr 2020 02:38:22 +0000 (19:38 -0700)]
Delete Ubuntu 14.04 conditions (#34361)
Ubuntu 14.04 is no longer supported.
Andrew Au [Thu, 2 Apr 2020 02:27:21 +0000 (19:27 -0700)]
Eliminate dead configuration code (#34285)
* Eliminate dead configuration code
* Remove more dead code
* Eliminating EEConfig::GetConfiguration_DontUse_
* Eliminate EEConfig::GetConfigValueCallback
* Eliminate ConfigSearch
Manish Godse [Thu, 2 Apr 2020 01:02:00 +0000 (18:02 -0700)]
Fix run-test-job pretest build
Jan Vorlicek [Thu, 2 Apr 2020 00:57:02 +0000 (02:57 +0200)]
Fix write behind allocated memory in thread name setting (#34424)
The code in CorUnix::InternalSetThreadDescription is writing behind
the end of the allocated memory in case the name is shorter than 16
characters. That is causing memory heap corruption.
Manish Godse [Wed, 1 Apr 2020 23:05:05 +0000 (16:05 -0700)]
typo fix :(
Manish Godse [Wed, 1 Apr 2020 22:58:14 +0000 (15:58 -0700)]
PR Comments
Gleb Balykov [Wed, 1 Apr 2020 21:33:32 +0000 (00:33 +0300)]
Build managed part of crossgen2 as platform independent (AnyCPU) (#33041)
Thomas Levesque [Wed, 1 Apr 2020 20:49:39 +0000 (22:49 +0200)]
Report correct max depth in exception message (#34410)
Co-authored-by: Thomas Levesque <thomaslevesque@users.noreply.github.com>
monojenkins [Wed, 1 Apr 2020 20:09:37 +0000 (16:09 -0400)]
update perf jitdump for ppc64/ppc64le and s390x (#34373)
Add missing constants to handle ppc64/ppc64le and s390x platforms.
Related: https://github.com/mono/mono/commit/
68a8b9290958ee5e9b21d8ff6b73a707e2504d39
Fixes: https://github.com/mono/mono/issues/19402
Co-authored-by: sharkcz <sharkcz@users.noreply.github.com>
Vladimir Sadov [Wed, 1 Apr 2020 20:08:53 +0000 (13:08 -0700)]
Perf followup for Pinned Object Heap (#34215)
* free list bucket skipping
* couple more tweaks
* More size buckets in POH free lists
* static_data_table
* PR feedback
* off-by-one error in BASE_LOH_ALIST_BITS
monojenkins [Wed, 1 Apr 2020 20:01:28 +0000 (16:01 -0400)]
Ensure generic parameter constraint type is included when building image (#34346)
sets.
This fixes: https://issuetracker.unity3d.com/issues/editor-crash-when-entering-and-exiting-playmode-for-a-few-times-with-microsoft-maps-sdk
@joncham and I were working on this we hit the two asserts that I've removed. We were wondering if they were still needed?
<!--
Thank you for your Pull Request!
If you are new to contributing to Mono, please try to do your best at conforming to our coding guidelines http://www.mono-project.com/community/contributing/coding-guidelines/ but don't worry if you get something wrong. One of the project members will help you to get things landed.
Does your pull request fix any of the existing issues? Please use the following format: Fixes #issue-number
-->
Co-authored-by: UnityAlex <UnityAlex@users.noreply.github.com>
monojenkins [Wed, 1 Apr 2020 19:13:10 +0000 (15:13 -0400)]
[wasm] Throw an exception when trying to start a thread instead of asserting. (#34347)
<!--
Thank you for your Pull Request!
If you are new to contributing to Mono, please try to do your best at conforming to our coding guidelines http://www.mono-project.com/community/contributing/coding-guidelines/ but don't worry if you get something wrong. One of the project members will help you to get things landed.
Does your pull request fix any of the existing issues? Please use the following format: Fixes #issue-number
-->
Co-authored-by: vargaz <vargaz@users.noreply.github.com>
Alexis Christoforides [Wed, 1 Apr 2020 19:05:19 +0000 (15:05 -0400)]
[mono] Fix finalizer thread init in iOS sample (#34405)
Starting with https://github.com/mono/mono/pull/16907 , the runtime ends in GC-Safe state (mode) after mono_jit_init_version() is called. mono_gc_init_finalizer_thread() expects the GC to not already be in safe mode.
Stephen Bonikowsky [Wed, 1 Apr 2020 17:14:43 +0000 (10:14 -0700)]
Update ownership of area-System.ServiceModel (#34408)
Stephen Bonikowsky is no longer on the WCF team, updating ownership.
Jan Kotas [Wed, 1 Apr 2020 16:28:04 +0000 (09:28 -0700)]
Revert "Revert "Switch reverse PInvoke to the NativeCallable plan (#34251)" (#34306)" (#34315)
This reverts commit
94c4b5248bbf7f3219ca4af7960832d9acf218da.
Jan Jahoda [Wed, 1 Apr 2020 15:11:59 +0000 (17:11 +0200)]
Disable test on windows and enable on other platforms (#34331)
* Disable test on windows and enable on other platforms
* Remove mac from test
Marek Safar [Wed, 1 Apr 2020 15:08:58 +0000 (17:08 +0200)]
Call into ETW methods in ConcurrentBag only when logging is enabled (#34392)
Manish Godse [Wed, 1 Apr 2020 14:53:00 +0000 (07:53 -0700)]
Merge remote-tracking branch 'upstream/master'
Egor Bogatov [Wed, 1 Apr 2020 12:23:24 +0000 (15:23 +0300)]
[mono] Fix setMArch, getArchName() doesn't work as expected (#34368)
Turns out `llvm::Triple(llvm::sys::getDefaultTargetTriple()).getArchName()` doesn't work as expected on all targets so the only option is to set arch via defines.
NOTE: it accepts "x86-64", not "x86_64
pi1024e [Wed, 1 Apr 2020 09:46:37 +0000 (05:46 -0400)]
Remove duplicated .gitignore patterns (#34281)
Santiago Fernandez Madero [Wed, 1 Apr 2020 08:33:17 +0000 (01:33 -0700)]
Fix build break in coreclr where -os is not supported in Windows (#34358)
Egor Bogatov [Wed, 1 Apr 2020 08:26:02 +0000 (11:26 +0300)]
[mono] fix SIMD instructions' availability (#34319)
Egor Bogatov [Wed, 1 Apr 2020 08:25:08 +0000 (11:25 +0300)]
[mono] Fix LLVM JIT build on arm64 host (#34332)
Egor Bogatov [Wed, 1 Apr 2020 08:24:30 +0000 (11:24 +0300)]
[mono] Set MArch in llvm-jit (#34350)
Jan Kotas [Wed, 1 Apr 2020 06:37:57 +0000 (23:37 -0700)]
Disable Bitmap round-tripping tests for old libgdiplus versions (#34354)
* Fix filename typo
* Disable Bitmap round-tripping tests for old libgdiplus versions
Old libgdiplus versions have uninitialized stack variable bug that makes Bitmap round-tripping unreliable. The bug causes Bitmap.Flags, Bitmap.HorizontalResolution and Bitmap.VerticalResolution properties to be set to bogus values if the stack happens to contain certain bit patterns. This bug was fixed for libgdiplus 6 by https://github.com/mono/libgdiplus/commit/
81e45a1d5a3ac3cf035bcc3fabb2859818b6cc04#diff-c96a8261ecb168c12b44248208da21c0R118.
* Fix and simplify gdiplus library loading
Matt Mitchell [Wed, 1 Apr 2020 05:57:40 +0000 (22:57 -0700)]
Fix System.Data.SqlClient baseline (#34352)
* Fix System.Data.SqlClient version
Fixes https://github.com/dotnet/runtime/issues/34351
* Update Microsoft.Windows.Compatibility.pkgproj
Jarret Shook [Wed, 1 Apr 2020 01:55:42 +0000 (18:55 -0700)]
Disable test based on 34178 (#34179)
* Disable test based on 34178
* Try with */*
* Fix diff
Manish Godse [Tue, 31 Mar 2020 23:07:12 +0000 (16:07 -0700)]
remove upload unsigned artifacts step from official build
Anirudh Agnihotry [Tue, 31 Mar 2020 22:30:00 +0000 (15:30 -0700)]
Fixing intellisense in vscode for src and ref projects (#34025)
* fixing intel for ref and src
* fixing ref and src intell
* renaming props file
* remove extra property
* fixing the intellisense in tests
* add extra line
* addressing feedback
* revert shim path
* fix allconfig restore
* adding comment
Mitchell Hwang [Tue, 31 Mar 2020 21:47:34 +0000 (17:47 -0400)]
[FileSystem] ReAdd check for same device (#34343)
Co-authored-by: Mitchell Hwang <mihw@microsoft.com>
Manish Godse [Tue, 31 Mar 2020 21:20:16 +0000 (14:20 -0700)]
libraries test should depend on full product
This fix is similar to artifact download logic done in build-base.yml
David Mason [Tue, 31 Mar 2020 20:59:51 +0000 (13:59 -0700)]
Fix ProfileTailCallNaked so it doesn't write xmm1 past the end of its stack (#33908)
* Fix ProfileTailCallNaked so it doesn't write xmm1 past the end of its stack, and do some documentation/refactoring.
* code review feedback
Tomas Weinfurt [Tue, 31 Mar 2020 20:36:32 +0000 (13:36 -0700)]
add support for FreeBSD cross-compilation (#34000)
* add support for FreeBSD cross-compilation
* feedback from review
* update detection
* add openssl to docs
* feedback from reviews
* feedback from reviews
* final cleanup
* feedback from reviews
* simplify detection of route.h
* correct __CrossBuild detection
* use TargetOS for installer
Anirudh Agnihotry [Tue, 31 Mar 2020 20:14:14 +0000 (13:14 -0700)]
update brancing to preview4 (#34338)
Aaron Robinson [Tue, 31 Mar 2020 19:19:00 +0000 (12:19 -0700)]
Initial proposal for P/Invokes via Source Generators (#33742)
* Initial proposal for P/Invokes via Source Generators.
Jan Kotas [Tue, 31 Mar 2020 19:06:57 +0000 (12:06 -0700)]
NativeCallable bugfixes (#34335)
- Fix race condition in JIT_ReversePInvokeEnter
- Disable R2R for x86 on all platforms
monojenkins [Tue, 31 Mar 2020 18:37:01 +0000 (14:37 -0400)]
[debugger] Adding static to ss_req_acquire and ss_req_count (#34327)
Adding static to ss_req_acquire and ss_req_count
Fixes mono/mono#19389
Co-authored-by: thaystg <thaystg@users.noreply.github.com>
Manish Godse [Tue, 31 Mar 2020 17:28:14 +0000 (10:28 -0700)]
Add corelib to other pipelines.
Jan Kotas [Tue, 31 Mar 2020 17:22:59 +0000 (10:22 -0700)]
Apply formatting patch (#34333)
Layomi Akinrinade [Tue, 31 Mar 2020 17:13:42 +0000 (13:13 -0400)]
Cache parameterized ctor delegates in class info rather than converter (#34248)
* Cache parameterized ctor delegates in class info rather than converter
* Address review feedback - move delegate assignment to start of deserialization
* Address review feedback - nullability
Layomi Akinrinade [Tue, 31 Mar 2020 17:11:35 +0000 (13:11 -0400)]
Guard against deserializing types with open generics (#34163)
* Guard against deserializing types with open generics
* Include serialization tests
* Address review feedback
* Address review feedback
Elinor Fung [Tue, 31 Mar 2020 17:08:11 +0000 (10:08 -0700)]
Check for COM registration functions on base types of registered type (#34307)
Layomi Akinrinade [Tue, 31 Mar 2020 17:07:15 +0000 (13:07 -0400)]
Remove inactive JsonElement test that depends on JSON path being set on DOM exceptions (#34167)
Manish Godse [Tue, 31 Mar 2020 14:45:36 +0000 (07:45 -0700)]
Adding corelib job to coreclr=and=Libraries.
Egor Bogatov [Tue, 31 Mar 2020 14:23:20 +0000 (17:23 +0300)]
[mono] Implement Environment.GetFolderPath on iOS (#34022)
* Implement Environment.GetFolderPath on iOS
* Address feedback
* Move GetFolderPathCore to Environment.Unix.GetFolderPathCore.cs
* Fix build issue
* Address feedback
* cache all special directories
* Fix build issue
* remove a whitespace
* Fix UserProfile issue
* undo changes in GetEnvironmentVariableCore
* Update Environment.Unix.Mono.cs
* Extract to InternalGetEnvironmentVariable
* Fix build issue
* Return emtpy string if underlying native function returns null
* Add nullability
Stephen Toub [Tue, 31 Mar 2020 14:20:36 +0000 (10:20 -0400)]
Update Microsoft.CodeAnalysis.FxCopAnalyzers to 3.0.0-beta3.final (#34312)
Vitek Karas [Tue, 31 Mar 2020 13:53:01 +0000 (06:53 -0700)]
Expression.Field should validate field name for null (#34301)
Small change to correctly check for null in one of the overloads of Expression.Field.
Egor Bogatov [Tue, 31 Mar 2020 13:26:52 +0000 (16:26 +0300)]
[mono] Use $(HostArch) for LLVM packages (#34322)
* Use HostArch for LLVM packages
* define HostArch for mono
monojenkins [Tue, 31 Mar 2020 13:04:01 +0000 (09:04 -0400)]
Initial perf jitdump implementation (#33893)
Fixes mono/mono#17024
Co-authored-by: fanyang-mono <fanyang-mono@users.noreply.github.com>
monojenkins [Tue, 31 Mar 2020 09:06:04 +0000 (05:06 -0400)]
[runtime] Fix a problem with PR mono/mono#19361. (#34299)
<!--
Thank you for your Pull Request!
If you are new to contributing to Mono, please try to do your best at conforming to our coding guidelines http://www.mono-project.com/community/contributing/coding-guidelines/ but don't worry if you get something wrong. One of the project members will help you to get things landed.
Does your pull request fix any of the existing issues? Please use the following format: Fixes #issue-number
-->
Co-authored-by: vargaz <vargaz@users.noreply.github.com>
Manish Godse [Tue, 31 Mar 2020 06:32:30 +0000 (23:32 -0700)]
fix -allConfigurations build
Jan Kotas [Tue, 31 Mar 2020 05:32:29 +0000 (22:32 -0700)]
Streamline C heap allocations (#34289)
- Remove unnecessary layers in heap allocation APIs
- Delete HeapCreate/Alloc/Free/Destroy from the PAL
Jan Kotas [Tue, 31 Mar 2020 05:02:44 +0000 (22:02 -0700)]
Remove TargetOS renaming under installer (#34313)
Maryam Ariyan [Tue, 31 Mar 2020 05:00:44 +0000 (22:00 -0700)]
Merge pull request #34208 from maryamariyan/inspection
Extensions commit mop-up
Maryam Ariyan [Fri, 27 Mar 2020 22:04:40 +0000 (15:04 -0700)]
Change PublicKeyToken for M.E. src and test projects
- Updates InternalsVisibleTo files as well
- Setup Logging.EventSource.Tests
- Fix three failing EventSourceLoggerTest tests
- Delete file: IntegrationTesting csproj not needed.
- Rename folder test -> tests (Logging/tests/DI.Common/tests)
- Cleanup other csproj
fix compile issue
Manish Godse [Tue, 31 Mar 2020 04:41:55 +0000 (21:41 -0700)]
Moving runtime restore from \restore\dirs.proj
Moved runtime restore + pretest.proj to teh tests.proj build.
Viktor Hofer [Tue, 31 Mar 2020 03:25:43 +0000 (05:25 +0200)]
Condition before/after import in IL.Sdk for pre5.0 (#34278)
With this, the IL SDK will continue to work when it comes to either single or multitargeting without restoring the projects in multi-targeting mode. This helps to not introduce a breaking change for 3.x SDKs.
Santiago Fernandez Madero [Tue, 31 Mar 2020 02:45:31 +0000 (19:45 -0700)]
Revert "Switch reverse PInvoke to the NativeCallable plan (#34251)" (#34306)
This reverts commit
4e30ff033fbd915c5a39df8901d43c601deeeeb4.
Jan Kotas [Tue, 31 Mar 2020 00:58:56 +0000 (17:58 -0700)]
Restore TargetArchitecture default (#34295)
Fixes #34292
Felipe Pessoto [Tue, 31 Mar 2020 00:52:01 +0000 (21:52 -0300)]
Explicitly throw the OutOfMemoryException instead of relying on Shared.Rent/Array constructor. Because it can behave differently in OSX, where it supports int.MaxValue array size. (#34040)
Santiago Fernandez Madero [Tue, 31 Mar 2020 00:30:52 +0000 (17:30 -0700)]
Flow TargetArchitecture always in Unix build script (#34300)
Sergey Andreenko [Tue, 31 Mar 2020 00:06:32 +0000 (17:06 -0700)]
Make `compCurBB` available for `fgMorphBlockReturn`. (#34184)
* Extract `fgMergeBlockReturn`.
Morph is already a very vague verb in the Jit, try to use a more precise one.
* Add a function header.
* Make `compCurBB` available for `fgMorphBlockReturn`.
When we generate an assignment we could need to create a new assertion, that requires `compCurBB` to be available.
* Delete `INVALID_POINTER_VALUE`.
I would like to remove it because:
1) it was debug only;
2) there were no null checks for `compHndBBtab`, because it is a dependent variable
so there was no need to distinguish valid null pointer from a bad invalid pointer;
3) that is the only place where this mechanism was used.
* Allow to CSE the merge return ASG.
I can't see a reason why it should not, there are no diffs.
The issue with the previous version was that we did not actually know what we were marking: GT_ASG, GT_COMMA, something else? Was the idea to mark individual ASG under COMMA?
Manish Godse [Mon, 30 Mar 2020 23:36:05 +0000 (16:36 -0700)]
Merge remote-tracking branch 'upstream/master'
Jan Vorlicek [Mon, 30 Mar 2020 23:27:02 +0000 (01:27 +0200)]
Fix wrong assert in cgroups code (#34291)
There is an assert in FindCgroupPath that fires when hierarchy_root
and cgroup_path_relative_to_mount are equal, which is the case for
cgroups that are not named. This assert checks that the common
path in those two variables ends with / which is only the case
with named groups.
We have never seen this assert to fire because cgroups initialization
happens before the debugger support initialization in PAL and so
asserts are disabled at that point. I am going to fix that in a
separate PR.
This problem was discovered with the standalone GC where the assert
actually fires as it uses a plain C assert function.
This change fixes the assert to account for the case when both the
paths are the same.
imhameed [Mon, 30 Mar 2020 21:01:25 +0000 (14:01 -0700)]
[mono][llvm] Improve LLVM 9 compatibility. (#34182)
Improve LLVM 9 compatibility.
Several intrinsics were removed in LLVM 7 and above; replace them with
IR sequences that generate the desired instructions.
Fix some type mismatch problems with the generated IR (in
Sse2.StoreAlignedNonTemporal, Vector128.CreateScalarUnsafe, and
Sse2.MaskMove); these were caught by running the coreclr hardware
intrinsic JIT tests.
Support the two-argument forms of Sse.SqrtScalar, Sse.ReciprocalScalar,
and Sse.ReciprocalSqrtScalar.
llvm::linkCoreCLRGC(), in llvm/CodeGen/GCs.h, was removed and replaced with
llvm::linkAllBuiltinGCs(), in llvm/CodeGen/BuiltinGCs.h.
In mono_llvm_dump_value and mono_llvm_dump_module, flush the c library's
stdout stream before using (and flushing) LLVM's own buffered output
functions.