Carol Eidt [Thu, 16 May 2019 16:25:00 +0000 (09:25 -0700)]
Ensure that SIMD fields are correctly typed (dotnet/coreclr#24377)
When a struct field is imported, its type needs to be normalized.
Also, the LHS of a struct init, even if a SIMD type, should not be transformed to a non-block node,
except in the case of a SIMD local, in which case it must be transformed to a simple assignment.
Also, add an assert to catch this kind of bug in liveness.
Fix dotnet/coreclr#24336
Commit migrated from https://github.com/dotnet/coreclr/commit/
fb2aa6725dd7e5610c5589bc464f9a67470faaf9
Fadi Hanna [Thu, 16 May 2019 14:19:31 +0000 (07:19 -0700)]
Suppress crossgen warnings on failures to load types/methods from IBC data. (dotnet/coreclr#24596)
It's not unusual to see these types of warnings with incremental IBC.
These warnings will move under the crossgen verbose mode.
Commit migrated from https://github.com/dotnet/coreclr/commit/
ff61bfc8aa9f0f71feddc8c03d824b13cc61215c
Levi Broderick [Thu, 16 May 2019 06:15:23 +0000 (23:15 -0700)]
Make Label and OpCode readonly and IEquatable (dotnet/coreclr#24360)
Commit migrated from https://github.com/dotnet/coreclr/commit/
5ad457b6c1562907e81936a67955c98cf4034857
Egor Chesakov [Thu, 16 May 2019 02:25:33 +0000 (19:25 -0700)]
Merge pull request dotnet/coreclr#24603 from dotnet/revert-24554-UnconditionallyCaptureXUnitOutput
Revert "Unconditionally capture output of xUnit tests"
Commit migrated from https://github.com/dotnet/coreclr/commit/
e91e7d81d4c02dfa93f7178c8df3e35a112fd3ab
Egor Chesakov [Thu, 16 May 2019 02:23:05 +0000 (19:23 -0700)]
Revert "Unconditionally capture output of xUnit tests"
Commit migrated from https://github.com/dotnet/coreclr/commit/
fe0aff24476887f8cbfa2d713d04a22b1d40e1ec
Andrew Au [Wed, 15 May 2019 23:00:17 +0000 (16:00 -0700)]
Avoid doing dangerous cleanup in case of process detach
Commit migrated from https://github.com/dotnet/coreclr/commit/
e53fa39f4fbf97d36d4e704baa5060e503a353c3
David Wrighton [Thu, 16 May 2019 01:28:42 +0000 (18:28 -0700)]
Remove concept of AppDomains from the GC (dotnet/coreclr#24536)
* Remove concept of AppDomains from the GC
- Leave constructs allowing for multiple handle tables, as scenarios for that have been proposed
- Remove FEATURE_APPDOMAIN_RESOURCE_MONITORING
Commit migrated from https://github.com/dotnet/coreclr/commit/
bdb995987178231ba541f22143cb3cab56309daa
Sergey Andreenko [Thu, 16 May 2019 01:20:40 +0000 (18:20 -0700)]
Merge pull request dotnet/coreclr#24590 from sandreenko/deleteJitOpts
Delete JitOptions struct.
Commit migrated from https://github.com/dotnet/coreclr/commit/
c2533b6c3f715b6964de5ffe0b2a2feaac42b079
Andrew Au [Tue, 14 May 2019 20:59:17 +0000 (13:59 -0700)]
Make sure variable live range for prolog is reported first
Commit migrated from https://github.com/dotnet/coreclr/commit/
3fd99f16627e87a78d5275a8e4fcb01d0bd7b180
Michal Strehovský [Wed, 15 May 2019 23:43:26 +0000 (16:43 -0700)]
Delete unicode API emulator (dotnet/coreclr#24581)
Commit migrated from https://github.com/dotnet/coreclr/commit/
913e74566f163a8de266ec7a54160203c282393c
Egor Chesakov [Wed, 15 May 2019 23:33:18 +0000 (16:33 -0700)]
Unconditionally capture output of xUnit tests (dotnet/coreclr#24554)
Commit migrated from https://github.com/dotnet/coreclr/commit/
776187173b1875d170abd7ef5688b66aa8a8256f
Egor Chesakov [Wed, 15 May 2019 23:32:41 +0000 (16:32 -0700)]
Enable JIT\superpmi\superpmicollect on Linux and macOS (dotnet/coreclr#24560)
* Replace backslashes with forward slashes in tests/src/JIT/superpmi/TestProjects.txt
* Enable JIT\superpmi\superpmicollect.csproj on Linux and macOS
Commit migrated from https://github.com/dotnet/coreclr/commit/
9c52d077f3d14dd049067945f165d35dbacaf384
Sergey Andreenko [Wed, 15 May 2019 22:13:41 +0000 (15:13 -0700)]
delete JitOptions struct.
That was an old struct and probably nobody remembers how it was supposed to be used.
Commit migrated from https://github.com/dotnet/coreclr/commit/
02fb10d98332dd2b560df2c74ee1c6e7bf89ee9b
Egor Chesakov [Wed, 15 May 2019 21:52:31 +0000 (14:52 -0700)]
Fix memory corruption in GetResultFileName in SuperPMI (dotnet/coreclr#24537)
Commit migrated from https://github.com/dotnet/coreclr/commit/
62a85aa7a7ac41d71105f8bb3250c37f5441e179
Egor Chesakov [Wed, 15 May 2019 21:49:36 +0000 (14:49 -0700)]
Before calling getModuleAssembly and getClassModule check whether s_pJitDisasmIncludeAssembliesList is non empty in src/jit/compiler.cpp (dotnet/coreclr#24488)
Commit migrated from https://github.com/dotnet/coreclr/commit/
cee143ac11fbb114040e71b93f6fa4130c90da81
dotnet-maestro[bot] [Wed, 15 May 2019 20:20:17 +0000 (13:20 -0700)]
[master] Update dependencies from dotnet/core-setup (dotnet/coreclr#24149)
* Update dependencies from https://github.com/dotnet/core-setup build
20190429.07
- Microsoft.NETCore.App - 3.0.0-preview6-27629-07
* Workaround for https://github.com/dotnet/core-setup/pull/5893
* Update dependencies from https://github.com/dotnet/core-setup build
20190502.01
- Microsoft.NETCore.App - 3.0.0-preview6-27702-01
* Update dependencies from https://github.com/dotnet/core-setup build
20190503.02
- Microsoft.NETCore.App - 3.0.0-preview6-27703-02
* Update dependencies from https://github.com/dotnet/core-setup build
20190503.17
- Microsoft.NETCore.App - 3.0.0-preview6-27703-17
* Update dependencies from https://github.com/dotnet/core-setup build
20190505.02
- Microsoft.NETCore.App - 3.0.0-preview6-27705-02
* Update dependencies from https://github.com/dotnet/core-setup build
20190506.03
- Microsoft.NETCore.App - 3.0.0-preview6-27706-03
* Update dependencies from https://github.com/dotnet/core-setup build
20190506.21
- Microsoft.NETCore.App - 3.0.0-preview6-27706-21
* Update dependencies from https://github.com/dotnet/core-setup build
20190507.10
- Microsoft.NETCore.App - 3.0.0-preview6-27707-10
* Workaround for Microsoft.NetCore.App version in Coreclr.TestWrapper.csproj to unblock dotnet/coreclr#24149
* Update dependencies from https://github.com/dotnet/core-setup build
20190508.04
- Microsoft.NETCore.App - 3.0.0-preview6-27708-04
* Add comment attaching specific pull request to workaround
* Update dependencies from https://github.com/dotnet/core-setup build
20190509.05
- Microsoft.NETCore.App - 3.0.0-preview6-27709-05
* Add comments in versions.props to prevent merge conflicts in future blocked maestro PRs
* Update dependencies from https://github.com/dotnet/core-setup build
20190514.15
- Microsoft.NETCore.App - 3.0.0-preview6-27714-15
Commit migrated from https://github.com/dotnet/coreclr/commit/
e03969fd4b0265219040defd4bc64e12903f4e42
Fadi Hanna [Wed, 15 May 2019 19:19:26 +0000 (12:19 -0700)]
Fix bug where crossgen would throw OOM when given an input with no dir-separator characters (overflow bug) (dotnet/coreclr#24559)
Commit migrated from https://github.com/dotnet/coreclr/commit/
761ab409310df31e1177a2456b9b7de29bcbd8af
Fadi Hanna [Wed, 15 May 2019 19:18:19 +0000 (12:18 -0700)]
Making crossgen throw when compiling with the PartialNgen flag and no IBC data (dotnet/coreclr#24557)
* Making crossgen throw when compiling with the PartialNgen flag and no IBC data
* Adding missing m_fPartialNGen check
Commit migrated from https://github.com/dotnet/coreclr/commit/
9bf825258fdaffc9e2af72c9421eabe725245717
Mike McLaughlin [Wed, 15 May 2019 17:50:35 +0000 (10:50 -0700)]
Update xplat-minidump-generation.md
Fix COMPlus_DbgMiniDumpType values
Commit migrated from https://github.com/dotnet/coreclr/commit/
bd7ca275020d61b7303ab36bbf0b06f8c7416bf7
Koundinya Veluri [Wed, 15 May 2019 05:26:37 +0000 (22:26 -0700)]
Enable QuickJit by default (dotnet/coreclr#24576)
- Recently, a decision was made to enable QuickJit by default. In startup perf, this mode appears to be consistently better than with QuickJit disabled, and usually equal or better than with TieredCompilation disabled.
- QuickJitForLoops remains disabled by default, so this enables QuickJit only for methods that don't contain loops
Commit migrated from https://github.com/dotnet/coreclr/commit/
93020a403d1a82d45f18213626aba1cef815992c
Adeel Mujahid [Wed, 15 May 2019 05:08:06 +0000 (08:08 +0300)]
Switch to zero-length array in otherwise empty class (dotnet/coreclr#24370)
Flexible array is a feature of ISO C99, that ISO C++ has not
([yet](https://thephd.github.io/vendor/future_cxx/papers/d1039.html))
included. Therefore clang and gcc with `-fpedantic` and msvc with
`/Wall` warn about it, and are equally unhappy when flexible array is
used in C++ code.
The exception in CoreCLR is `FastTable` class, where there is only one
member which is a flexible array. The length of array is written at a
specific offset of contents array.
gcc 6+ does not like this particular case, and gives a fatal error that
cannot be suppressed by regular means (`-Wno-XXX`):
```
error: flexible array member FastTable::contents in an otherwise empty class FastTable
size_t contents[];
^
```
Fix is to either not wrap this single field in concrete data structure
or use a zero-length array instead, which produces same assembly code
as the flexible array; tested with clang, gcc and msvc.
Read about this fix here: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69550
Commit migrated from https://github.com/dotnet/coreclr/commit/
25713980098b66967f907707d5906679d305a65c
Jan Kotas [Wed, 15 May 2019 02:07:53 +0000 (19:07 -0700)]
Fix issues reported by PREfast static analysis tool (dotnet/coreclr#24577)
Commit migrated from https://github.com/dotnet/coreclr/commit/
718598334310f6ad331ba2893ee4557beffaa74c
Steve MacLean [Wed, 15 May 2019 00:34:39 +0000 (20:34 -0400)]
Stack size override (dotnet/coreclr#24532)
Add ability to override stack size on all platforms
* Add DEFAULT_STACK_SIZE property
* Make environment variable affect all platforms
Commit migrated from https://github.com/dotnet/coreclr/commit/
6a85ca560a7dfa109c6f17c0b76d93373dbd5a00
Egor Chesakov [Tue, 14 May 2019 23:31:29 +0000 (16:31 -0700)]
Decorate SuperPMI DllMain jitStartup getJit with DLLEXPORT (dotnet/coreclr#24508)
* Decorate DllMain with DLLEXPORT in superpmi-shim-collector.cpp superpmi-shim-counter.cpp superpmi-shim-simple.cpp
* Decorate jitStartup, getJit, sxsJitStartup with DLLEXPORT in superpmi-shim-collector.cpp superpmi-shim-counter.cpp superpmi-shim-simple.cpp
Commit migrated from https://github.com/dotnet/coreclr/commit/
75addddd0601ab4e57ff41fada17128df47842ef
Jeremy Koritzinsky [Tue, 14 May 2019 23:08:07 +0000 (16:08 -0700)]
Add explicit cmake dependency between clretwrc and eventing_headers. (dotnet/coreclr#24575)
Commit migrated from https://github.com/dotnet/coreclr/commit/
e1e49b9d54fa333a50f7818cb7fcae10682c0e0a
Koundinya Veluri [Tue, 14 May 2019 22:10:17 +0000 (15:10 -0700)]
Fix a contract violation in ThreadPool.get_CompletedWorkItemCount (dotnet/coreclr#24535)
Fix a contract violation in ThreadPool.get_CompletedWorkItemCount
Fixes https://github.com/dotnet/coreclr/issues/24515
- Looks like the path that acquires the thread store lock has code that is marked witH GC_TRIGGERS
- Changed ThreadPool.get_CompletedWorkItemCount and Monitor.get_LockContentionCount to use QCalls instead of FCalls
Commit migrated from https://github.com/dotnet/coreclr/commit/
fd2287c5e833439e0ea7c27ad14350bcccf371a0
Andrew Au [Mon, 6 May 2019 23:50:30 +0000 (16:50 -0700)]
Log the real command line in case the process is started as a service
Commit migrated from https://github.com/dotnet/coreclr/commit/
5f09000ba82d21e04857941b9a087679dd0ea686
Jeremy Koritzinsky [Tue, 14 May 2019 20:54:29 +0000 (13:54 -0700)]
Disable IJW tests on ARM32 (dotnet/coreclr#24570)
Commit migrated from https://github.com/dotnet/coreclr/commit/
2cad5f5a1487e881772a541a57ee5dce48838464
Jan Kotas [Tue, 14 May 2019 20:51:34 +0000 (13:51 -0700)]
Fix Type.GetCustomAttributes for multiple instances of the same attribute (dotnet/coreclr#24474)
Fixes dotnet/corefxdotnet/coreclr#37261
Commit migrated from https://github.com/dotnet/coreclr/commit/
24cb7322ed899f02e9a0ffe4bd70ed7811b6e38e
Sergey Andreenko [Tue, 14 May 2019 17:54:58 +0000 (10:54 -0700)]
Merge pull request dotnet/coreclr#24553 from sandreenko/excludeTestsThatAreFailingUnderGCStress
Exclude tests that are failing under gc stress
Commit migrated from https://github.com/dotnet/coreclr/commit/
c4a0253f523570e83a547df8700e94c3647fdad0
Carol Eidt [Tue, 14 May 2019 16:42:06 +0000 (09:42 -0700)]
Fix more save/restore code for HVAs (dotnet/coreclr#24434)
Fix OnHijackTripThread.
Re-enable the mandelbrot-7 test.
Fix dotnet/coreclr#24224
Commit migrated from https://github.com/dotnet/coreclr/commit/
b24cc6e3cb32c212b1c5c32a1f449e2d4ba44e2d
Tomáš Rylek [Tue, 14 May 2019 16:40:46 +0000 (09:40 -0700)]
Further improvements for R2RDump robustness in the presence of bugs (dotnet/coreclr#24429)
Based on JanV's suggestion I have added checks for token ranges
to MetadataNameFormatter to make it resilient towards invalid
tokens.
Thanks
Tomas
Commit migrated from https://github.com/dotnet/coreclr/commit/
e3227026f99b149f6f02afef5896306b7cd38270
Sergey Andreenko [Mon, 13 May 2019 19:16:37 +0000 (12:16 -0700)]
Disable _il_relu_fld under GCStress.
The issue is https://github.com/dotnet/coreclr/issues/24464
Commit migrated from https://github.com/dotnet/coreclr/commit/
449843d5922ef179c9af52c989ffff80adf3cf81
Sergey Andreenko [Mon, 13 May 2019 19:19:12 +0000 (12:19 -0700)]
Disable versionbubbles under GCStress.
The issue is https://github.com/dotnet/coreclr/issues/22245
Commit migrated from https://github.com/dotnet/coreclr/commit/
9cea1cfb0744f63dd3ae62783b61ba861297ce2e
Sergey Andreenko [Tue, 14 May 2019 05:00:02 +0000 (22:00 -0700)]
Merge pull request dotnet/coreclr#24551 from sandreenko/disable_eventsourcetrace_in_jitstress
Exclude eventsourcetrace from jitstress runs.
Commit migrated from https://github.com/dotnet/coreclr/commit/
1cbc6e469261b1be9139293ed33fad76894e442e
David Mason [Tue, 14 May 2019 04:40:29 +0000 (21:40 -0700)]
Profiler API to request ReJIT with inliners (dotnet/coreclr#24461)
This API is necessary for attaching profilers to be able to ReJIT methods and replace everything that uses the old IL.
Commit migrated from https://github.com/dotnet/coreclr/commit/
1fc8b490bc086cce155f374db2805f2ed5e4e6c1
Jan Kotas [Tue, 14 May 2019 02:58:23 +0000 (19:58 -0700)]
Delete InternalCasingHelper (dotnet/coreclr#24511)
The unmanaged runtime has number of different paths for case-insensitive operations, each with unique issues. This is replacing InternalCasingHelper with SString to reduce number of different paths for case-insensitive operations that need to be maintained.
Contributes to dotnet/coreclr#20616
Commit migrated from https://github.com/dotnet/coreclr/commit/
6881de09b3d9ba165194ba416dd0786db00c2d5d
Jan Vorlicek [Tue, 14 May 2019 01:50:15 +0000 (18:50 -0700)]
Merge pull request dotnet/coreclr#24524 from janvorli/fix-encode-field
Fix field signature generation
Commit migrated from https://github.com/dotnet/coreclr/commit/
6b19bc3fb7add4999f3ac9e1a5fb2244de2c9836
Jan Vorlicek [Tue, 14 May 2019 01:44:08 +0000 (18:44 -0700)]
Merge pull request dotnet/coreclr#24523 from janvorli/fix-constraint-module-override
Add module override for constraint type in method
Commit migrated from https://github.com/dotnet/coreclr/commit/
f2dd72c35014e76e1224e5d9696b2158a8f47d72
Steve MacLean [Tue, 14 May 2019 01:10:50 +0000 (21:10 -0400)]
RemoveThrowMessage (dotnet/coreclr#24563)
Commit migrated from https://github.com/dotnet/coreclr/commit/
9d1dc4cee22cc6813ce1d01b9b5a8ad3d55840bb
Aaron Robinson [Mon, 13 May 2019 23:41:59 +0000 (16:41 -0700)]
Was too aggressive with changes to PackageOutputPath property.
- This represents this repo's generated packages rather than
packages it consumes.
Commit migrated from https://github.com/dotnet/coreclr/commit/
a18ad94e54d5d03471db11e03fcb9a8d40b45c07
Aaron Robinson [Mon, 13 May 2019 21:17:00 +0000 (14:17 -0700)]
The PackagesDir property is used in places that expected a trailing slash.
Commit migrated from https://github.com/dotnet/coreclr/commit/
abdfc4a2cfca256f464e7f950beb59e91c88a8bb
Ludovic Henry [Mon, 13 May 2019 20:15:05 +0000 (13:15 -0700)]
Implement GC.GetTotalAllocatedBytes (dotnet/coreclr#23852)
* keep what's allocated so far on each heap
* Implement GC.GetTotalAllocatedBytes
It is based on https://github.com/dotnet/corefx/issues/34631 and https://github.com/dotnet/corefx/issues/30644
* Fixing races related to dead_threads_non_alloc_bytes
* separated per-heap SOH and LOH counters. Different locks imply that we need different counters.
* allow/ignore torn 64bit reads on 32bit in imprecise mode.
* PR feedback
* simplified the test a little to avoid OOM on ARM
Commit migrated from https://github.com/dotnet/coreclr/commit/
934d73fea95b4c479b67fee0ff53caea4a325ee5
Egor Chesakov [Mon, 13 May 2019 19:24:05 +0000 (12:24 -0700)]
Unconditionally capture output of xUnit tests
Commit migrated from https://github.com/dotnet/coreclr/commit/
816528d7644626376569e2652d8ee3f80e42c72c
Sergey Andreenko [Mon, 13 May 2019 19:11:31 +0000 (12:11 -0700)]
Disable tests that are failing with timeouts.
See examples in https://dev.azure.com/dnceng/public/_build/results?buildId=186855&view=ms.vss-test-web.build-test-results-tab
Commit migrated from https://github.com/dotnet/coreclr/commit/
fb7abbca590620ee4b70d4af10025ba71a8b1909
Sergey Andreenko [Mon, 13 May 2019 17:55:16 +0000 (10:55 -0700)]
exclude eventsourcetrace from jitstress runs.
Commit migrated from https://github.com/dotnet/coreclr/commit/
e64a73d04a068b608a707abb7c8543446a962013
Gleb Balykov [Mon, 13 May 2019 17:14:28 +0000 (20:14 +0300)]
Fix build error for mscoree coreclr.exports (dotnet/coreclr#24547)
This partially reverts dotnet/coreclr#23853
Commit migrated from https://github.com/dotnet/coreclr/commit/
24cdacaeb1e42a92051b32a6c4051b7a12ff2770
Aaron Robinson [Mon, 13 May 2019 00:23:51 +0000 (17:23 -0700)]
Cleanup some build files (dotnet/coreclr#24539)
* Remove OsEnvironment, PackagesDir, and CoreCLRBinDir properties
* Replace usage of __BuildArch with BuildArch
* Simplify test timing out on ARM64
Commit migrated from https://github.com/dotnet/coreclr/commit/
42a4b41cae99215da49388dad4dc2810f83365c3
Yoh Deadfall [Sun, 12 May 2019 14:20:49 +0000 (17:20 +0300)]
Fixed link to .NET Core SDK (dotnet/coreclr#24544)
Commit migrated from https://github.com/dotnet/coreclr/commit/
88625deceacc8c5233b7e56d574455be68f3ea9b
Dan Moseley [Sun, 12 May 2019 00:14:56 +0000 (17:14 -0700)]
Update UsingYourBuild.md (dotnet/coreclr#24389)
Change MyGet to the custom feeds. I found that for dotnet new console to restore, I needed an ASP.NET feed as well.
Commit migrated from https://github.com/dotnet/coreclr/commit/
afe95bac41dbd65e623c2cdc8a776a18e6a6e789
Tanner Gooding [Sat, 11 May 2019 03:19:26 +0000 (20:19 -0700)]
Fixing S.P.Corelib to not double include files and ensure that S.N.V is marked #nullable enable (dotnet/coreclr#24526)
* Changing EnableDefaultCompileItems=false to EnableDefaultItems=false
* Taking the VS auto-fixes for the solution and corelib csproj
* Removing the duplicated T4 file includes in the main csproj
* Regenerating the included T4 templates
* Fixing S.P.Corelib to properly list available platforms/configurations
* Add a comment on the T4 template service
Commit migrated from https://github.com/dotnet/coreclr/commit/
e0fd735a866861b35679ac503193809a305fac2b
Sung Yoon Whang [Fri, 10 May 2019 23:59:38 +0000 (16:59 -0700)]
Fix EventCounter disable logic (dotnet/coreclr#24519)
Commit migrated from https://github.com/dotnet/coreclr/commit/
15c4e02037e535a898ddd24390894adc8f3b5b06
Koundinya Veluri [Fri, 10 May 2019 23:59:20 +0000 (16:59 -0700)]
Disable a tail call test when using minopts (dotnet/coreclr#24426)
Disable a tail call test when using minopts
Fixes https://github.com/dotnet/coreclr/issues/24424
Commit migrated from https://github.com/dotnet/coreclr/commit/
2bfb6a8516fd20a39c242800854e0a19336589f7
Jeremy Koritzinsky [Fri, 10 May 2019 23:24:42 +0000 (16:24 -0700)]
Move EventProvider native layout to be driven by CMake configure (dotnet/coreclr#24478)
* Generate eventpipe implementation as part of CMake configure.
* Generate Etw provider as part of CMake configure.
* First pass porting over lttng provider to cmake.
* Fix up CMake Lttng provider generation.
* Move Lttng provider into CMake tree.
* Move dummy event provider to CMake
* Move genEventing into the CMake tree.
* Remove extraneous logging and unused python locator.
* Clean up build.sh
* Clean up genEventingTests.py
* Add dependencies to enable more incremental builds (providers not fully incremental).
* Convert to custom command and targets instead of at configure time.
* Get each eventing target to incrementally build.
* Fix incremental builds
* Add missing dependencies on eventing headers.
* PR Feedback. Mark all generated files as generated
* Clean up eventprovider test CMakeLists
Commit migrated from https://github.com/dotnet/coreclr/commit/
e985b20260631c98a09f08cb67e93d690a6ffd0b
Jeremy Koritzinsky [Fri, 10 May 2019 23:22:02 +0000 (16:22 -0700)]
Re-enable accidentally disabled tests. (dotnet/coreclr#24531)
Commit migrated from https://github.com/dotnet/coreclr/commit/
0dd7c86c8573f257cfd3b4b6374b7415fd3a9131
Jeremy Koritzinsky [Fri, 10 May 2019 23:20:14 +0000 (16:20 -0700)]
Reenable IJW tests. (dotnet/coreclr#24530)
Commit migrated from https://github.com/dotnet/coreclr/commit/
fc699b188ad397349128f470614a937e8af5ee3f
Aaron Robinson [Fri, 10 May 2019 21:07:11 +0000 (14:07 -0700)]
Properly set the nuget cache for the repo (dotnet/coreclr#24505)
* Properly set the nuget cache for the repo
* Change coreclr NuGet package cache from "./packages" to "./.packages"
Commit migrated from https://github.com/dotnet/coreclr/commit/
44d22bd22ffc72ec0a89b50b7de96b45a470b1e9
Andrew Au [Fri, 10 May 2019 16:30:23 +0000 (09:30 -0700)]
Remove obsolete comments
Commit migrated from https://github.com/dotnet/coreclr/commit/
c746a224d029f84556298893e8f2789df4bc3dda
Jan Vorlicek [Fri, 10 May 2019 16:05:11 +0000 (18:05 +0200)]
Fix field signature generation
The ZapSig::EncodeField was missing similar treatment that was made to
the encodeMethod in the past for enabling large version bubble. We
should encode all fields as field defs and the module override at the
beginning of the fixup signature is computed with that assumption.
The issue was that we were storing memberrefs in some cases and the
module override made them invalid.
It fixes a corefx test that was failing due to this when crossgen-ed
with large version bubble enabled.
Commit migrated from https://github.com/dotnet/coreclr/commit/
2da1dc0c109f78b4def74f5e60f0f46b9ed28f48
Jan Vorlicek [Fri, 10 May 2019 15:59:04 +0000 (17:59 +0200)]
Add module override for constraint type in method
The constraint type for method signature encoding was missing module
zapsig when it was needed.
Commit migrated from https://github.com/dotnet/coreclr/commit/
c349128fa2244f74d16576088f9ef834c8b6a581
Stephen Toub [Fri, 10 May 2019 13:18:53 +0000 (09:18 -0400)]
Tweak a few nullable annotations (dotnet/coreclr#24494)
- Assembly.ToString() won't return null
- Several attributes have the intent that their arguments are non-nullable, even though they don't check and throw; the annotations should match the intent in such cases.
Commit migrated from https://github.com/dotnet/coreclr/commit/
5e35e287fbdf4c8b3eef83df39fa0e1897a33f06
Stephen Toub [Thu, 9 May 2019 21:21:48 +0000 (17:21 -0400)]
Fix netstandard build for nullable annotations
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
864a5e822be1a487cde23b3197e453e1c0c3abc3
Stephen Toub [Thu, 9 May 2019 19:25:49 +0000 (15:25 -0400)]
Fix netfx build with nullable annotations
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
09c3a12c4eaacad778d349bc8fca657d486ac9a9
Dan Moseley [Fri, 10 May 2019 03:43:00 +0000 (20:43 -0700)]
Dead string (dotnet/coreclr#24516)
Commit migrated from https://github.com/dotnet/coreclr/commit/
2fb4ed470883a9f9192fe70deecf364a7fcb101d
Sung Yoon Whang [Fri, 10 May 2019 03:30:39 +0000 (20:30 -0700)]
Fix an overflow issue with eventpipe buffer size (dotnet/coreclr#24512)
Commit migrated from https://github.com/dotnet/coreclr/commit/
f2277f6c2fdfa303e86fde4726601190e71134db
Leslie Zhai [Fri, 10 May 2019 03:24:25 +0000 (22:24 -0500)]
[X86/Linux] Fix error: no member named 'GetId' in 'AppDomain' when enabled Interpreter issue (dotnet/coreclr#24513)
https://github.com/dotnet/coreclr/issues/24492
Commit migrated from https://github.com/dotnet/coreclr/commit/
25d91d96c1f81fae257d2b0af0d1f3898124058a
Eugene Rozenfeld [Fri, 10 May 2019 00:16:10 +0000 (17:16 -0700)]
Merge pull request dotnet/coreclr#24482 from erozenfeld/Fix24159
Mark local struct as having overlapping fields after struct reinterpretation
Commit migrated from https://github.com/dotnet/coreclr/commit/
c6d9f0cc72c355475e404bb70986be0a4c8ad114
Mike McLaughlin [Thu, 9 May 2019 21:01:10 +0000 (14:01 -0700)]
Fix memory leak in PAL_GenerateCoreDump (dotnet/coreclr#24503)
Commit migrated from https://github.com/dotnet/coreclr/commit/
a086fa2466d601fed6d2f4fb029b78613bf4ec7a
Tanner Gooding [Thu, 9 May 2019 20:46:38 +0000 (13:46 -0700)]
More cleanup of the HWIntrinsic test templates (dotnet/coreclr#24455)
* Adding some templates from which other HWIntrinsic test templates can be generated
* Regenerating the HWIntrinsic tests
Commit migrated from https://github.com/dotnet/coreclr/commit/
a74e710efb386677fc3b5c651b22213e996c0f72
Eugene Rozenfeld [Tue, 7 May 2019 22:35:42 +0000 (15:35 -0700)]
Mark local struct as having overlapping fields after struct reinterpretation
Methods like System.Runtime.CompilerServices.Unsafe.As<TFrom, TTo> may
have struct reinterpretation when function signature specifies Struct1&
and the method returns Struct2& where Struct1 and Struct2 are different
structs. This may confuse jit optimizations (in particular, value
numbering) because fields of a struct of type Struct1 may be accessed
using handles of Struct2. This fix marks the source local involved in
such struct reinterpretation as having overlapping fields. That prevents
SSA builder from inserting the local into SSA.
Fixes dotnet/coreclr#24159.
No diffs in framework assemblies and coreclr benchmarks.
Commit migrated from https://github.com/dotnet/coreclr/commit/
993b7c5d4c002ff2f9f11b4ac3176baf72ec1b77
Gregory LEOCADIE [Thu, 9 May 2019 17:05:44 +0000 (19:05 +0200)]
Add a new version of ContentionEnd event (dotnet/coreclr#22487)
Add new contention event
- This new event contains the duration of the contention.
- Compute duration and emit contention events only when Contention keyword is activated
Commit migrated from https://github.com/dotnet/coreclr/commit/
2ff7aaac87a976a86c07b93867efb9ade391eed3
Brian Sullivan [Thu, 9 May 2019 17:02:42 +0000 (10:02 -0700)]
Merge pull request dotnet/coreclr#24456 from briansull/ibc-work
IBC refactor - Zero Diff, rename types and methods
Commit migrated from https://github.com/dotnet/coreclr/commit/
dbca82dd58f7192404394ed37d540b07522a5f72
Stephen Toub [Thu, 9 May 2019 16:40:16 +0000 (12:40 -0400)]
Turn on nullability for all of Corelib (dotnet/coreclr#24497)
* Enable nullable at the project level
* Remove `#nullable enable` from individual files
Removes `#nullable enable` from almost all .cs files in System.Private.CoreLib. I left it only in the ~30 files (out of ~1480 that had it) that are mirrored to corefx, that are built into projects by corefx that don't yet set NullableContextOptions at the project level, and that use nullable annotations; otherwise, they'd break the corefx build.
Commit migrated from https://github.com/dotnet/coreclr/commit/
9773db1e7b1acb3ec75c9cc0e36bd62dcbacd6d5
Michal Strehovský [Thu, 9 May 2019 15:50:31 +0000 (17:50 +0200)]
Delete suspicious code in delegate construction (dotnet/coreclr#24493)
This reverts commit dotnet/coreclr@
0786da806b9727c466f3f9393cb3d55cf9df7536.
Commit migrated from https://github.com/dotnet/coreclr/commit/
42164199dd8edd5acb174c6d8a4b47546afc2894
dotnet-maestro[bot] [Thu, 9 May 2019 11:51:41 +0000 (04:51 -0700)]
[master] Update dependencies from dotnet/corefx (dotnet/coreclr#24314)
* Update dependencies from https://github.com/dotnet/corefx build
20190506.1
- Microsoft.NETCore.Platforms - 3.0.0-preview6.19256.1
- Microsoft.Private.CoreFx.NETCoreApp - 4.6.0-preview6.19256.1
* Use last stable version of System.Numerics.Vectors package
* Add Microsoft.Bcl.AsyncInterfaces package
* Disable Microsoft.Bcl.AsyncInterfaces
Commit migrated from https://github.com/dotnet/coreclr/commit/
201a6ea6b12b0906f303f37c2339127c05ecc3a3
Jeremy Koritzinsky [Thu, 9 May 2019 07:39:27 +0000 (00:39 -0700)]
Fix ComActivator typo. (dotnet/coreclr#24485)
Commit migrated from https://github.com/dotnet/coreclr/commit/
aa494182a1b005674619c0177f238840812db6cd
Andrew Au [Wed, 8 May 2019 17:35:43 +0000 (10:35 -0700)]
Return the required padding size instead of the current position to avoid integer overflow.
Commit migrated from https://github.com/dotnet/coreclr/commit/
29df4e8218ee7d147542f767d899c5c639932e06
Steve MacLean [Thu, 9 May 2019 02:33:10 +0000 (22:33 -0400)]
Remove premature throw (dotnet/coreclr#24450)
* Remove premature throw
ResolveUsingEvent is no longer the last resort for Assembly resolution
and should not be throwing simply because the Assembly.Resolve event did
not find the Assembly
* Delay throw FileNotFound until after AppDomain.AssemblyResolve
Commit migrated from https://github.com/dotnet/coreclr/commit/
597e5faa03773e3140850d16381c00a6f9d20335
Koundinya Veluri [Thu, 9 May 2019 02:16:16 +0000 (19:16 -0700)]
Fix ETL event rejit IDs and sending of the IL to native map event when code versioning is in use (dotnet/coreclr#24422)
Fix ETL event rejit IDs and sending of the IL to native map event when code versioning is in use
Fixes https://github.com/dotnet/coreclr/issues/22904
Fixes https://github.com/dotnet/coreclr/issues/22908
- Method events now always send the native code ID for the rejit ID, and the IL to native map event continues to send the IL code ID
- Took code versioning into account when sending rundown events for a method including the IL to native map
Commit migrated from https://github.com/dotnet/coreclr/commit/
93ec324ee831cd4db087ae985c5b3a814ba8abb3
Divino César [Wed, 8 May 2019 22:29:27 +0000 (15:29 -0700)]
Merge pull request dotnet/coreclr#24479 from dotnet/UpdateHelixSDK
Update Helix SDK Version - Master branch
Commit migrated from https://github.com/dotnet/coreclr/commit/
54affc4d950184a11f7815eaa418cba5fe0a9a36
Aaron Robinson [Wed, 8 May 2019 22:12:11 +0000 (15:12 -0700)]
Fix scenarios where SPCL is not crossgen'd and the output is not in the bin directory (dotnet/coreclr#24477)
Commit migrated from https://github.com/dotnet/coreclr/commit/
01c07296189e9dc2290f79981eb2a1968c445c38
Aaron Robinson [Wed, 8 May 2019 22:09:41 +0000 (15:09 -0700)]
Add support in SPCL to call into user supplied register and unregiste… (dotnet/coreclr#24452)
* Add support in SPCL to call into user supplied register and unregister functions
Commit migrated from https://github.com/dotnet/coreclr/commit/
e682619de596282b30c21d624716b7a3d1f2541b
Brian Sullivan [Wed, 8 May 2019 22:07:12 +0000 (15:07 -0700)]
Merge pull request dotnet/coreclr#24462 from briansull/fix-24440
Fix 24440
Commit migrated from https://github.com/dotnet/coreclr/commit/
991b17eb68331e6118baa0e27a6f8d8ee9db36b2
Sergey Andreenko [Wed, 8 May 2019 21:46:40 +0000 (14:46 -0700)]
Merge pull request dotnet/coreclr#24366 from sandreenko/fixLogPrinting
Fix some small issues with stress logging.
Commit migrated from https://github.com/dotnet/coreclr/commit/
73519f3bf9011084612889079c6692dce491ef15
Mike McLaughlin [Wed, 8 May 2019 21:45:42 +0000 (14:45 -0700)]
Send UTF16 dump file name (dotnet/coreclr#24475)
Commit migrated from https://github.com/dotnet/coreclr/commit/
75cde8dc8854c2f488094c2e33002c8871d4a592
Elinor Fung [Wed, 8 May 2019 21:28:45 +0000 (14:28 -0700)]
Specify version.dll and add notification hook for delay load (dotnet/coreclr#24449)
Mitigates an issue with hijacking of version.dll.
This is particularly an issue for self-contained and single-file-exe apps, as the hijacking in those cases does not require access to a machine-wide .NET Core install.
Commit migrated from https://github.com/dotnet/coreclr/commit/
c64a137c499b58925c9a5b34b2ec55647604841f
Fadi Hanna [Wed, 8 May 2019 20:39:15 +0000 (13:39 -0700)]
Fix 23317. (dotnet/coreclr#24383)
The issue is that a LDVIRTFTN operation becomes a dictionary lookup to a direct call to an abstract function with no code. We AV later when executing the PreStub of that direct call. Fixed by making this a dictionary lookup to a MethodDescSlot lookup, followed by the call to the JIT_VirtualFunctionPointer helper to resolve the target code (Same logic executing in jitted IL mode)
Commit migrated from https://github.com/dotnet/coreclr/commit/
97fb71da9107373cbf0202030520a301ac15c4a2
Steve MacLean [Wed, 8 May 2019 20:08:29 +0000 (16:08 -0400)]
Remove more MDA support code (dotnet/coreclr#24457)
* Remove more MDA support code
* PR Feedback
Commit migrated from https://github.com/dotnet/coreclr/commit/
883a27180106affebd45814f5b6fc236c9d7eab2
Brian Sullivan [Wed, 8 May 2019 00:46:29 +0000 (17:46 -0700)]
Fix Issue 24440
gtGetStructHandleIfPresent can return nullptr (NO_CLASS_HANDLE)
Commit migrated from https://github.com/dotnet/coreclr/commit/
d3120b8c1b0fac8ef24929a9fb8cede7eca2e914
Brian Sullivan [Wed, 8 May 2019 18:37:21 +0000 (11:37 -0700)]
Two additional minor changes
Commit migrated from https://github.com/dotnet/coreclr/commit/
b26e28aefdaf82287b6fda0c6a14fc5956077b8c
Brian Sullivan [Wed, 8 May 2019 18:08:09 +0000 (11:08 -0700)]
Prefer UINT32 over DWORD in the IBC BlockCount API's
Commit migrated from https://github.com/dotnet/coreclr/commit/
e0256bf9c0ba9255a4a955876ff99704b5c1636c
Fadi Hanna [Wed, 8 May 2019 17:36:16 +0000 (10:36 -0700)]
Add a check to prevent mixed-mode assemblies from being compiled into R2R (dotnet/coreclr#24451)
Commit migrated from https://github.com/dotnet/coreclr/commit/
b7836c0b6e59f4e6bd6af984569f4ce8b3573f4e
Sergey Andreenko [Wed, 8 May 2019 16:19:11 +0000 (09:19 -0700)]
Merge pull request dotnet/coreclr#24447 from sandreenko/addGCStressExtraJobs
Add GCStress extra jobs.
Commit migrated from https://github.com/dotnet/coreclr/commit/
b9c38dcd2758a0fde04976024353865c6dbdf7f8
Andrew Au [Wed, 8 May 2019 00:23:42 +0000 (17:23 -0700)]
Handle the case when the SamplingProfiler thread is terminated prematurely
Commit migrated from https://github.com/dotnet/coreclr/commit/
624d9b8efb1267ba8c3ed5d82a4ee48ad04e42b2
Mike McLaughlin [Wed, 8 May 2019 07:46:51 +0000 (00:46 -0700)]
Add generate crash dump command to diagnostics server (dotnet/coreclr#24460)
Add the DiagnosticProtocolHelper class to deserialize and dispatch
the new GenerateCoreDump command.
Refactor the PAL createdump launch on unhandled exception code to
used by a new PAL_GenerateCoreDump method that doesn't depend on
the complus dump environment variables.
Changed the "full" createdump not to include the uncommitted pages and
removed the "add module metadata" workaround for SOS clrstack !UNKNOWN
problem now that is fixed in SOS (crashinfo.cpp).
Commit migrated from https://github.com/dotnet/coreclr/commit/
794f2f89399026246562181bc999a5027fb6583d
Sergey Andreenko [Wed, 8 May 2019 04:22:55 +0000 (21:22 -0700)]
Merge pull request dotnet/coreclr#24463 from sandreenko/ExcludeMethodImpl
Exclude MethodImplOptionsTests.
Commit migrated from https://github.com/dotnet/coreclr/commit/
653e25ec4780cfb7132dcb55bda20dbcc9c2a027
Sergey Andreenko [Wed, 8 May 2019 01:09:27 +0000 (18:09 -0700)]
Exclude MethodImplOptionsTests.
Exclude the test because the fix is postponed.
Commit migrated from https://github.com/dotnet/coreclr/commit/
7f976a692bdaf4994e44f1befe6884626922958e
Bruce Forstall [Tue, 7 May 2019 23:23:34 +0000 (16:23 -0700)]
Merge pull request dotnet/coreclr#24444 from BruceForstall/FixGenerateLayoutArgPassing
Fix build.cmd passing of args to runtest.cmd
Commit migrated from https://github.com/dotnet/coreclr/commit/
2e32f3b92f3a17b5821673babaa6883deb5ab209
Tarek Mahmoud Sayed [Tue, 7 May 2019 22:35:46 +0000 (15:35 -0700)]
Make Idn.GetAscii compatible with Windows (dotnet/coreclr#24443)
GetAscii on Windows ignore if the uri has hyphens in the third and fourth places. We relaxing this on Linux too for the sake of the consistent behavior. This issue was causing some problems with the http stack.
Commit migrated from https://github.com/dotnet/coreclr/commit/
8b6a69e71d36c26e378460c4e586593efe0b13da
Sergey Andreenko [Tue, 7 May 2019 21:55:22 +0000 (14:55 -0700)]
Save OBJECTREF_TO_UNCHECKED_OBJECTREF and use auto.
On x86 OBJECTREF_TO_UNCHECKED_OBJECTREF expands to `((UINT_PTR)((*((_UNCHECKED_OBJECTREF*)&(fromAddress)))))`
where `*((_UNCHECKED_OBJECTREF*)` call contructor of `OBJECTREF` that call `Object->Validate`
that fails for `fromAddress` because it is not longer a valid address.
Commit migrated from https://github.com/dotnet/coreclr/commit/
1dc55132deac51eeb265b086a96ee5b96d68254a