Steve MacLean [Tue, 18 Dec 2018 02:23:20 +0000 (21:23 -0500)]
Do not use CorHost2::m_fStarted to gate execution (dotnet/coreclr#20953)
* ExecuteInDefaultAppDomain w/o Start
Do not require Start() call before
calling ExecuteInDefaultAppDomain()
* Remove unused variable
* Move flags as needed to CorHost2
Commit migrated from https://github.com/dotnet/coreclr/commit/
f6d403292c17f7024509c59593bcab05ee9379f1
Bruce Forstall [Tue, 18 Dec 2018 01:28:16 +0000 (17:28 -0800)]
Merge pull request dotnet/coreclr#21574 from BruceForstall/AddDotnetDiagnosticsInfo
Add dotnet info to PMI asm diffs output
Commit migrated from https://github.com/dotnet/coreclr/commit/
5fc2313f1bc4ffac033f38b2162175c958cfdf3f
Bruce Forstall [Tue, 18 Dec 2018 01:25:15 +0000 (17:25 -0800)]
Merge pull request dotnet/coreclr#21572 from BruceForstall/DisableArm64Test
Disable System.Runtime.Tests for Linux arm64 corefx tests
Commit migrated from https://github.com/dotnet/coreclr/commit/
2da117f31e8c96804bffb01ab3f5036e73a3451a
Bruce Forstall [Tue, 18 Dec 2018 01:22:35 +0000 (17:22 -0800)]
Merge pull request dotnet/coreclr#21532 from BruceForstall/FixPython3Issue
Fix Python 3 issues
Commit migrated from https://github.com/dotnet/coreclr/commit/
07674dcc5f76a494bbdeccf0a20353c4da338fd7
Jeremy Koritzinsky [Tue, 18 Dec 2018 00:50:54 +0000 (16:50 -0800)]
Add tests for marshalling a System.Drawing.Color. (dotnet/coreclr#21569)
Commit migrated from https://github.com/dotnet/coreclr/commit/
534e93d3cfead0aa1c719fa911e2c61694ed6c51
Bruce Forstall [Tue, 18 Dec 2018 00:09:35 +0000 (16:09 -0800)]
Add dotnet info to PMI asm diffs output
This might help diagnose issues.
Commit migrated from https://github.com/dotnet/coreclr/commit/
9e602a4e24c8709b889e3faa5ac180c9301799eb
Bruce Forstall [Mon, 17 Dec 2018 23:20:04 +0000 (15:20 -0800)]
Disable System.Runtime.Tests for Linux arm64 corefx tests
Failure with System.Tests.ExceptionTests.ThrowStatementDoesNotResetExceptionStackLineOtherMethod
in JitStress=2.
Tracking: dotnet/coreclr#21223
Commit migrated from https://github.com/dotnet/coreclr/commit/
17c923e15ad927b02c86825a375a1b3220e403b4
Egor Chesakov [Mon, 17 Dec 2018 19:11:25 +0000 (11:11 -0800)]
Switch to using resources in BenchmarksGames tests (dotnet/coreclr#21554)
Embed the following test files as the resources in their corresponding test assemblies:
* regexdna-input25.txt regexdna-input25000.txt in BenchmarksGame/regex-redux
* knucleotide-input.txt knucleotide-input-big.txt in BenchmarksGame/k-nucleotide
* revcomp-input25.txt revcomp-input25000.txt in BenchmarksGame/reverse-complement
Commit migrated from https://github.com/dotnet/coreclr/commit/
7c2d9aa7e35ab119eaf907514fa1ff765317ec11
Jan Kotas [Mon, 17 Dec 2018 16:55:53 +0000 (08:55 -0800)]
Delete dead code (dotnet/coreclr#21562)
- Delete clix support from PAL. "clix" was launcher in the Rotor days - like "dotnet" today.
- Delete URL parsing from PALRT
Commit migrated from https://github.com/dotnet/coreclr/commit/
ad561d0dee8345a1a1b6105b44be527970c0b27f
Michal Strehovský [Mon, 17 Dec 2018 13:07:08 +0000 (14:07 +0100)]
Add specialized allocation helpers (dotnet/coreclr#21561)
This is to support dotnet/corertdotnet/coreclr#6688. They don't exist in CoreCLR (yet).
Commit migrated from https://github.com/dotnet/coreclr/commit/
d4a1ed808feba26664d09e81e85336e049d30aa1
Bruce Forstall [Sun, 16 Dec 2018 22:27:08 +0000 (14:27 -0800)]
Merge pull request dotnet/coreclr#21400 from BruceForstall/FixArm32FloatRange
Fix arm32 local variable references
Commit migrated from https://github.com/dotnet/coreclr/commit/
f5979429b345879b4a4b38caac23ad701e4ae49f
Eugene Rozenfeld [Sat, 24 Nov 2018 06:37:03 +0000 (22:37 -0800)]
Enable object stack allocation in R2R mode.
This change modified the importer to create GenTreeAllocObj node for
box and newobj instead of a helper call in R2R mode. ObjectAllocator phase
decides whether the object can be allocated on the stack or has to be created
on the heap via a helper call.
To trigger object stack allocation COMPlus_JitObjectStackAllocation has
to be set (it's not set by default).
Commit migrated from https://github.com/dotnet/coreclr/commit/
3e06d9f5911ffe30894b3e08ef955f645df3acd9
Sung Yoon Whang [Sun, 16 Dec 2018 06:10:51 +0000 (22:10 -0800)]
Enable PinPlugAtGCTime event for standalone GC (dotnet/coreclr#21543)
Commit migrated from https://github.com/dotnet/coreclr/commit/
1db91c5acd17384952d1e1f8e3079c2c8cfb78f6
dotnet-maestro-bot [Sat, 15 Dec 2018 12:43:07 +0000 (04:43 -0800)]
Update CoreClr, CoreSetup to preview-27215-01, preview-27214-02, respectively (dotnet/coreclr#21547)
Commit migrated from https://github.com/dotnet/coreclr/commit/
8f9c37dd364d426a3d4e0ae5ea0b7d95dc4c304f
Carol Eidt [Sat, 15 Dec 2018 09:23:40 +0000 (01:23 -0800)]
Fix more HWIntrinsic ifdefs (dotnet/coreclr#21556)
Commit migrated from https://github.com/dotnet/coreclr/commit/
2724de11263fa2fd6e18c04c565e7331d7709e53
Ben Adams [Sat, 15 Dec 2018 08:57:07 +0000 (08:57 +0000)]
Fix warning causing error in warning as error (dotnet/coreclr#21557)
c:\github\coreclr\src\vm\excep.cpp(4489):
error C2220: warning treated as error - no 'object' file generated
[C:\GitHub\coreclr\bin\obj\Windows_NT.x64.Release\src\vm\wks\cee_wks.vcxproj]
c:\github\coreclr\src\vm\excep.cpp(4489):
warning C4800: 'BOOL': forcing value to bool 'true' or 'false'
(performance warning)
[C:\GitHub\coreclr\bin\obj\Windows_NT.x64.Release\src\vm\wks\cee_wks.vcxproj]
Commit migrated from https://github.com/dotnet/coreclr/commit/
a41039e66e8f36acd739c3935f9690b21303746f
Tanner Gooding [Sat, 15 Dec 2018 05:53:17 +0000 (21:53 -0800)]
Fixing an assert in `gtGetStructHandleForSIMD` to validate the size of the simdType is less than or equal to the largest support TYP_SIMD (dotnet/coreclr#21549)
Commit migrated from https://github.com/dotnet/coreclr/commit/
f3941e439a080a526ecd6216c90328ef900e41ac
Morgan Brown [Sat, 15 Dec 2018 02:45:55 +0000 (18:45 -0800)]
Add Azure DevOps signing support (dotnet/coreclr#21545)
Add signing support for Azure DevOps pipelines. This uses the arcade signing step, but with custom logic to find files to sign while we're not using arcade for the rest of the build.
Commit migrated from https://github.com/dotnet/coreclr/commit/
e763e8302028edb4a49e22b7e18b888b3145d48c
Sven Boemer [Sat, 15 Dec 2018 01:03:40 +0000 (17:03 -0800)]
Publish packages in Azure DevOps official build (dotnet/coreclr#21536)
This enables coreclr participation in dependency flow.
Commit migrated from https://github.com/dotnet/coreclr/commit/
483135b05e853290d6890f9f5f72aa0bb96aca23
Tomáš Rylek [Sat, 15 Dec 2018 00:40:33 +0000 (01:40 +0100)]
Implement GC ref map parsing and display in R2RDump (dotnet/coreclr#21509)
As part of my work on CPAOT implementation of GC ref map info
I have implemented decoder of the info so that it can be displayed
next to the import cell signatures.
This also uncovered one possible cause of R2RDump GcInfo-related
crashes that were observed by Andon and myself. It looks like Amy
in her initial implementation confused the various GC encodings
and used GC info to parse the import section auxiliary data which
actually contains the GC ref map info.
Thanks
Tomas
Commit migrated from https://github.com/dotnet/coreclr/commit/
1df63bdbce55f2feb60238c244c6723dd9530e82
Carol Eidt [Sat, 15 Dec 2018 00:00:36 +0000 (16:00 -0800)]
Merge pull request dotnet/coreclr#21535 from CarolEidt/Fix21500
Update var life for multireg local
Commit migrated from https://github.com/dotnet/coreclr/commit/
ca65764c029f2dac6f4a187694f4232eec9b1115
Tanner Gooding [Fri, 14 Dec 2018 21:41:07 +0000 (13:41 -0800)]
Simplifying the emitter handling of 4-byte encoded SSE instructions (dotnet/coreclr#21528)
Commit migrated from https://github.com/dotnet/coreclr/commit/
813bd6ec05c8ce81f3ec7b59f21966ebc9420dca
dotnet-maestro-bot [Fri, 14 Dec 2018 12:06:12 +0000 (04:06 -0800)]
Update CoreClr, CoreFx, CoreSetup to preview-27213-02, preview.18613.4, preview-27213-01, respectively (master) (dotnet/coreclr#21503)
* Update CoreClr, CoreFx, CoreSetup to preview-27213-02, preview.18613.4, preview-27213-01, respectively
* Add System.Threading.AccessControl to CoreFX test deps
Commit migrated from https://github.com/dotnet/coreclr/commit/
bbfafe73ee054cc024c7db5dea53ec18c25b013c
Michal Strehovský [Fri, 14 Dec 2018 11:21:45 +0000 (12:21 +0100)]
Implement two pass algorithm for variant interface dispatch (dotnet/coreclr#21355)
Fixes dotnet/coreclr#20452.
Commit migrated from https://github.com/dotnet/coreclr/commit/
1649da12db73c8c07513c9168cb30ec70c310063
Andrew Au [Fri, 14 Dec 2018 06:29:46 +0000 (22:29 -0800)]
Setting the m_willBlockOnGarbageCollectionEvent earlier and only when we will block to avoid the async break deadlock (dotnet/coreclr#21319)
Setting the m_willBlockOnGarbageCollectionEvent earlier and only when we will block to avoid the async break deadlock
Commit migrated from https://github.com/dotnet/coreclr/commit/
b093822a4dacfe6bd36970e270f0a6d720732a04
Matt Warren [Fri, 14 Dec 2018 01:37:45 +0000 (01:37 +0000)]
'mscorlib' link returns 404 -> 'System.Private.CoreLib' (dotnet/coreclr#34086)
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
0f4051a19a1bd58562e5e95635bee7dac86ae24a
Egor Chesakov [Fri, 14 Dec 2018 04:05:38 +0000 (20:05 -0800)]
Running and visualizing tests in AzureDevOps (Part 1) (dotnet/coreclr#21502)
* Enable Azure Pipelines reporter so the test results can be seen at one place (i.e. "Tests" tab) - TestRunNamePrefix should encode all the needed information for a test run to be identifiable.
* Scenarios property should use comma (not semi-colon) to work correctly on non-Windows.
* Specify timeout to test jobs (the numbers are taken from netci.groovy) - we would adjust them as soon as we get this running in each PR.
* Specify timeout for Helix work items (the number is taken from buildpipeline) - same as above.
* Specify helixType and helixRepo properties to the job and use _HelixType and _HelixSource variables in MSBuild project instead of defining them manually.
* Limit Pri0 Checked test jobs to running against pull requests. This also should be limited in the future to "default" build definition name - so when we have PR workload selection feature working we can distinguish between default PR validation and user triggered jobs.
* Remove "Prepare tests for helix" step - instead of archiving Core_Root and tests folders ourselves - directly specify them as correlation payload and work item payload directories and let the archiving be handled by Helix Sdk.
Commit migrated from https://github.com/dotnet/coreclr/commit/
ef7afc8e86eb1d8407a1c07ae735158efc5aca75
Carol Eidt [Thu, 13 Dec 2018 23:46:40 +0000 (15:46 -0800)]
Update var life for multireg local
When a multi-reg var is defined by a call, but doesn't currently reside in a register,
we must still update liveness.
Fix dotnet/coreclr#21500
Commit migrated from https://github.com/dotnet/coreclr/commit/
61bdd1c239ce0f0c575b3ecc62e2c29ce9e27ede
Mike McLaughlin [Thu, 13 Dec 2018 23:37:21 +0000 (15:37 -0800)]
Fixes issue dotnet/coreclr#21485 and dotnet/coreclr#21484 (dotnet/coreclr#21526)
Issue dotnet/coreclr#21485: fix EnumProcessModules hPseudoCurrentProcess bug.
Added handle reference.
Issue dotnet/coreclr#21484: createdump segfaults with ASP.NET app
The problem is the ClrDataModule Request faulted on a dynamic module
getting the file layout flag.
Fixed the Request code not get the file layout and in the crash dump
code skip any dynamic modules.
Commit migrated from https://github.com/dotnet/coreclr/commit/
a6403ba4d9187fc19af8e3dc64ec3e9e937d53eb
Andy Ayers [Thu, 13 Dec 2018 23:03:34 +0000 (15:03 -0800)]
JIT: avoid folding operations with relocatable immediates (dotnet/coreclr#21511)
In general, don't fold operations on relocatable immediates. Only allow EQ/NE folding, since relocation should preserve identity but not bit values or relative comparisons.
Closes dotnet/coreclr#21483.
Commit migrated from https://github.com/dotnet/coreclr/commit/
6b9e1dc685e55430d1471baa799db32bc2807a1c
Bruce Forstall [Thu, 13 Dec 2018 22:53:31 +0000 (14:53 -0800)]
Fix Python 3 issues
Fixes dotnet/coreclr#21433
Commit migrated from https://github.com/dotnet/coreclr/commit/
bba070bf2f7d975e9b0c6b45a601e0a43b6a6b38
Aaron Robinson [Thu, 13 Dec 2018 22:41:08 +0000 (14:41 -0800)]
Minor cleanup of the interoputil.h API (dotnet/coreclr#21476)
Commit migrated from https://github.com/dotnet/coreclr/commit/
8e297cb9baa0b3a7c361ab756184ccc368dca988
Aaron Robinson [Thu, 13 Dec 2018 22:36:24 +0000 (14:36 -0800)]
Suppress warning of obsolete API (dotnet/coreclr#21529)
Commit migrated from https://github.com/dotnet/coreclr/commit/
9106f834c09638dfd081b71452268a511a45c5da
Carol Eidt [Thu, 13 Dec 2018 21:18:29 +0000 (13:18 -0800)]
Merge pull request dotnet/coreclr#21527 from CarolEidt/FixIfdef
Fix HWIntrinsics ifdef
Commit migrated from https://github.com/dotnet/coreclr/commit/
ac2b5f341330807c4442c0ad0e25efbabf863dec
Carol Eidt [Thu, 13 Dec 2018 18:12:19 +0000 (10:12 -0800)]
Fix HWIntrinsics ifdef
Commit migrated from https://github.com/dotnet/coreclr/commit/
03bc2388dbf135b9f6a2ab3f929bf09b22ad3530
Fei Peng [Thu, 13 Dec 2018 17:00:16 +0000 (09:00 -0800)]
Fix hardware intrinsc API XML comments (dotnet/coreclr#21515)
* Fix AVX2 and SSE2 XML comments
* Fix ARM intrinsic XML comments
Commit migrated from https://github.com/dotnet/coreclr/commit/
fdef855fa1df3540ba632bfae850279d627bde66
Tanner Gooding [Thu, 13 Dec 2018 15:48:10 +0000 (07:48 -0800)]
Fixing up configEnableISA and Compiler::compSetProcessor to be consistent with EEJitManager::SetCpuInfo in how ISA support checks are done (dotnet/coreclr#21499)
Commit migrated from https://github.com/dotnet/coreclr/commit/
7455270acfbace8aa3f77c9cbec641952d51ab58
Carol Eidt [Thu, 13 Dec 2018 05:23:46 +0000 (21:23 -0800)]
Merge pull request dotnet/coreclr#21304 from CarolEidt/NonObjSIMD
Don't require BLK nodes for SIMD
Commit migrated from https://github.com/dotnet/coreclr/commit/
e3688902c9666362e79cff789ef36c5cdb4569b1
Stephen Toub [Thu, 13 Dec 2018 04:29:47 +0000 (23:29 -0500)]
Suppress unused warnings for events raised by the VM (dotnet/coreclr#21520)
Commit migrated from https://github.com/dotnet/coreclr/commit/
8abe4b0e06193001e123ffefab8e092cfbfcc568
Brian Sullivan [Thu, 13 Dec 2018 01:11:35 +0000 (17:11 -0800)]
Merge pull request dotnet/coreclr#21512 from briansull/fix_750014
Fix for PMI assert: 'vnWx != NoVN'
Commit migrated from https://github.com/dotnet/coreclr/commit/
36df5c596406245e9db944e2d14a1a818dfba920
Andy Ayers [Thu, 13 Dec 2018 00:56:07 +0000 (16:56 -0800)]
JIT: optimize unbox/unbox.any when type is known (dotnet/coreclr#21501)
Optimize away the unbox type test when the jit knows the type of object
being unboxed and can resolve the type comparison at jit time.
Closes dotnet/coreclr#14473.
Commit migrated from https://github.com/dotnet/coreclr/commit/
d279e47a9bc6a9d44484c3143a5f8dd9bc57579c
Andy Ayers [Thu, 13 Dec 2018 00:54:08 +0000 (16:54 -0800)]
JIT: handle byref-typed immediates in encoding (dotnet/coreclr#21477)
We may now retype some immediates (for instance RVA statics feeding into Spans)
as byrefs. These need to be tracked as such during encoding so that the encoder
GC liveness tracking stays current.
Fixes the assert seen in dotnet/coreclr#21466.
Commit migrated from https://github.com/dotnet/coreclr/commit/
962b1737249adcbf6eea9388463a042e4dc19288
Brian Sullivan [Wed, 12 Dec 2018 23:22:49 +0000 (15:22 -0800)]
Merge branch 'master' into fix_750014
Commit migrated from https://github.com/dotnet/coreclr/commit/
62ef56ee42808e746bbac44ce7f4f65677bba55a
Brian Sullivan [Wed, 12 Dec 2018 22:42:43 +0000 (14:42 -0800)]
Fix for PMI assert: 'vnWx != NoVN'
Commit migrated from https://github.com/dotnet/coreclr/commit/
d80bbeebc88117f3c2e696a1f4fcfeb844c02557
Pent Ploompuu [Wed, 12 Dec 2018 14:47:16 +0000 (16:47 +0200)]
Optimize number parsing (dotnet/coreclr#21365)
Commit migrated from https://github.com/dotnet/coreclr/commit/
4d7f7112efaf54a9634abf2f3a8fecc254301c85
Oded Hanson [Wed, 12 Dec 2018 00:42:17 +0000 (02:42 +0200)]
Added support for debugging a sandboxed app on Mac (dotnet/coreclr#21068)
* Fixed bug in StackString where the size is not initialized correctly to STACK_COUNT
* Added CharString and WCharString template classes and a generic CharStringFromLPCWSTR method
* Added support for debugging a sandboxed app on Mac
This change fixes the usage of IPC while debugging while running in a sandbox. When running in a sandbox, the temporary folder for each process will be different. Thus the pipes being created in TwoWayPipe right now would be created in different directories in the debugger process and the process being debugged.
This change configures the folder to be used based on the application group ID that the sandboxed app belongs to.
For the same reasons, the names sempahores being used to synchronize the debugger attach need to be prefixed with the application group ID. This change was abit more involved since the name of the semaphore is limited to 31 characters, so we had to encode the semaphore names differently to make them shorter.
Last, new APIs to the debugger shim were added to support this new feature. This change only handles the runtime side and the dbgshim. An additional change to vsdbg needs to be done to use the new APIs.
fixes dotnet/coreclr#21066
* Fixed build breaks on non Mac Unix platforms
* Fixed usage of gApplicationGroupId in non apple environments
* Fixed bug in semaphore names
* Got rid of usage of StackString
* Made PAL_GetApplicationGroupId Apple specific
* Added comment about pragma pack
* Fixed comment
* Added exported symbols
* Duplicated applicationGroupId so it can be used from another thread during register complete callback
* Renamed BitNum2ByteNum to GetExtraEncodedAreaSize to make intent clearer
* Fixed nit comments
* Removed redundant changes in StackString
* Fixed windows build break
* Fixed compilation switch from __APPLE to __APPLE__
* Added missing exports
Commit migrated from https://github.com/dotnet/coreclr/commit/
5b687cf51745790ff02c2de3f9f992ddc94bfae1
Andy Ayers [Tue, 11 Dec 2018 22:59:29 +0000 (14:59 -0800)]
JIT: capture failing inline observation in more cases (dotnet/coreclr#21471)
We were not capturing failing inline observations for failed inlines
that got reported by the runtime directly. Move the point of capture
up in the jitted code so it always happens regardless of reporting
obligations.
Commit migrated from https://github.com/dotnet/coreclr/commit/
fc90b973bf806410b836541a3d0af2293152c787
Tanner Gooding [Tue, 11 Dec 2018 21:11:00 +0000 (13:11 -0800)]
Moving the remaining Vector128/256 helper intrinsics to be implemented using other intrinsics (dotnet/coreclr#21451)
* Updating Vector256.Create(V128, V128) to be implemented using other intrinsics
* Updating Vector128.Create(T, ...) and Vector256.Create(T, ...) to be implemented using other intrinsics
* Renaming CreateSoftware to SoftwareFallback and adding clarifying comments to the helper method code
* Fixing Vector128.Create(int, int, int, int) to properly consume the elements for the Sse2 codepath
Commit migrated from https://github.com/dotnet/coreclr/commit/
aaa00748a9029dc23a3b5455e81a3133d91afe56
dotnet-maestro-bot [Tue, 11 Dec 2018 18:21:12 +0000 (10:21 -0800)]
Update CoreClr to preview-27211-02 (dotnet/coreclr#21488)
Commit migrated from https://github.com/dotnet/coreclr/commit/
f4060cacc908d76eb2051b86a8e84a961228f949
dotnet-maestro-bot [Tue, 11 Dec 2018 12:14:52 +0000 (04:14 -0800)]
Update CoreClr to preview-27211-01 (dotnet/coreclr#21481)
Commit migrated from https://github.com/dotnet/coreclr/commit/
1e042b90d1af94d9593ab087ed2b82b48290231f
Jan Kotas [Tue, 11 Dec 2018 12:12:12 +0000 (07:12 -0500)]
Delete unnecessary struct initialization (dotnet/coreclr#21482)
Commit migrated from https://github.com/dotnet/coreclr/commit/
fcbe7ce1f06aa7c84dcfb954eb8be2d3deba2483
Sung Yoon Whang [Tue, 11 Dec 2018 06:49:18 +0000 (22:49 -0800)]
make GC/GCHandle tracing pay-for-play (dotnet/coreclr#21479)
Commit migrated from https://github.com/dotnet/coreclr/commit/
b25304c757219d3103f691f615b5fa70ed22e92e
Sung Yoon Whang [Tue, 11 Dec 2018 06:49:03 +0000 (22:49 -0800)]
Fix for SetGCHandle event not getting emitted when running under Standalone GC (dotnet/coreclr#21478)
Commit migrated from https://github.com/dotnet/coreclr/commit/
d62143d4ae97833081c5f235a91dea95da4461a0
Julius R Friedman [Tue, 11 Dec 2018 05:42:06 +0000 (00:42 -0500)]
Eliminate GenTreeRegVar and GT_REG_VAR and RegVar (dotnet/coreclr#18317)
Issue dotnet/coreclr#18201 / Hackathon
Commit migrated from https://github.com/dotnet/coreclr/commit/
e1a5d0fca2ccd95ef8c21167343f4fdd017b53a6
Tanner Gooding [Tue, 11 Dec 2018 01:41:21 +0000 (17:41 -0800)]
Adding support for the 2-byte VEX encoding to the emitter (dotnet/coreclr#21453)
* Adding support for the 2-byte VEX encoding to the emitter
* Relocating and expanding the comment which explains the two-byte VEX encoding check
Commit migrated from https://github.com/dotnet/coreclr/commit/
9fe157072d6551781200a0ce3e3321fd3dafcc0d
Brian Sullivan [Tue, 11 Dec 2018 01:24:10 +0000 (17:24 -0800)]
Merge pull request dotnet/coreclr#21386 from briansull/issue_19925
Preserve the exception sets from child nodes when we create a new unique value number
Commit migrated from https://github.com/dotnet/coreclr/commit/
335804f565c0bb18792b7097b3a1258f6cf5224a
Egor Chesakov [Tue, 11 Dec 2018 00:53:40 +0000 (16:53 -0800)]
Specify HelixTargetQueues in yaml (dotnet/coreclr#21443)
* Parametrize test-job with helixQueues(Public|Internal) in eng/test-job.yml and specify them in eng/platform-matrix.yml
* Remove HelixTargetQueues property in tests/helixpublishwitharcade.proj
* Fix the error "unknown os: linux2" with Python script
Commit migrated from https://github.com/dotnet/coreclr/commit/
86ae71ac96ed44399de26bad3542fc5ddc04bbf9
Carol Eidt [Sat, 17 Nov 2018 01:48:46 +0000 (17:48 -0800)]
Don't require BLK nodes for SIMD
Eliminate most cases where an OBJ or BLK node is required for SIMD
values. The exception is the case where a value produced by an intrinsic
(SIMD or HWIntrinsic) is used as an argument but the argument is of a
different SIMD type (e.g. a different baseType),
Commit migrated from https://github.com/dotnet/coreclr/commit/
d57aca4b2f64942724bbfc0e40db6a125848df47
Jan Kotas [Mon, 10 Dec 2018 14:47:48 +0000 (06:47 -0800)]
Fix warnings as errors
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
9084476de3173deaf3c2c39549411fa55f500f72
Jan Kotas [Mon, 10 Dec 2018 21:34:03 +0000 (13:34 -0800)]
Refactor internal System.AppDomain out of CoreLib (dotnet/coreclr#21460)
Fixes dotnet/coreclr#21028
Commit migrated from https://github.com/dotnet/coreclr/commit/
64f76abbde7f3b7a91bbdbe66c9beebc63bb8f0c
Brian Sullivan [Mon, 10 Dec 2018 21:26:13 +0000 (13:26 -0800)]
Renamed VNCollectExc to VNUnionExcSet
Commit migrated from https://github.com/dotnet/coreclr/commit/
842f575fac8d64467bb4a15ef9fe893bedc536ad
Brian Sullivan [Mon, 10 Dec 2018 21:18:11 +0000 (13:18 -0800)]
Merge branch 'master' into issue_19925
Commit migrated from https://github.com/dotnet/coreclr/commit/
22af997e369e00e2f9ef6b8837c07f78def7d35b
Aaron Robinson [Mon, 10 Dec 2018 20:21:48 +0000 (12:21 -0800)]
Instead of using Win8+ api-sets use forwarder DLL to support downlevel versions of Windows. (dotnet/coreclr#21469)
Commit migrated from https://github.com/dotnet/coreclr/commit/
ab1529bb9bca98d8ebfce5461626cec14426ac53
dotnet-maestro-bot [Mon, 10 Dec 2018 16:20:17 +0000 (08:20 -0800)]
Update CoreClr to preview-27210-02 (dotnet/coreclr#21467)
Commit migrated from https://github.com/dotnet/coreclr/commit/
9dd701f69d68ebd8577adb91fd70e1ea38be7d9e
Jan Kotas [Mon, 10 Dec 2018 15:52:15 +0000 (07:52 -0800)]
Add support for RVA fields to crossgen/R2R (dotnet/coreclr#21463)
* Add support for RVA fields to crossgen/R2R
RVA fields are became more common with pre-inititialized ReadOnlySpan<byte>. Fix crossgen to deal with them for R2R.
* Fix tests, map new JIT helper for R2R
Commit migrated from https://github.com/dotnet/coreclr/commit/
32d8dfb65f2403c1cb628495ee944a9f35a0eb3a
dotnet-maestro-bot [Mon, 10 Dec 2018 11:43:04 +0000 (03:43 -0800)]
Update CoreClr, PgoData to preview-27210-01, master-
20181210-0037, respectively (dotnet/coreclr#21452)
Commit migrated from https://github.com/dotnet/coreclr/commit/
06da50019c25b1273a8df8e03fe8bc7b5d8288b9
Nick Craver [Mon, 10 Dec 2018 11:01:52 +0000 (06:01 -0500)]
Fix for dotnet/coreclr#21456 (Regressions in attribute allocations for non-generic attributes) (dotnet/coreclr#21462)
* Fix for dotnet/coreclr#21456 - restrict increased generic attribute allocations to only generic attributes
This is a trivial quick-fix for dotnet/coreclr#21456 where regressions between 2.1 and 3.0 were discovered on most attibute pathways due to the allocation overhead in the generic-supporting pathways. The workaround is to simply not take that slow/expensive path for non-generics.
While I'd like to optimize `RuntimeModule.ResolveMethod` further, there's a public surface area in play there that makes the changes non-trivial. There, we'll have to choose overhead on the public path (which may still be a net win), or duplication in code for another path.
* Update comments
Commit migrated from https://github.com/dotnet/coreclr/commit/
130cec3b15815ae023a7aac9dc96aa97b36117a0
Jan Kotas [Mon, 10 Dec 2018 10:57:57 +0000 (02:57 -0800)]
Delete vm/context.* (dotnet/coreclr#21459)
* Delete vm/context.*
Leftover from remoting
Commit migrated from https://github.com/dotnet/coreclr/commit/
49ca3db92a48da71d25c607af9716a30bafb3ff8
Oded Hanson [Mon, 10 Dec 2018 09:51:48 +0000 (11:51 +0200)]
Added Close On Exec Attribute for Mutex files (dotnet/coreclr#21455) (dotnet/coreclr#21458)
* Added Close On Exec Attribute for mutex files (dotnet/coreclr#21455)
Commit migrated from https://github.com/dotnet/coreclr/commit/
bc03ef9aeb467950f181a2e2d53fe4b92a98d0c9
Oded Hanson [Mon, 10 Dec 2018 09:49:39 +0000 (11:49 +0200)]
Fixed bug where "DCI_NUMA" was missing from debug channel names (dotnet/coreclr#21454) (dotnet/coreclr#21457)
In additional to adding "DCI_NUMA" to dbg_channel_names, a static assertion was added to verify that dbg_channel_names length is valid. Also added some comments to help developpers not to forget to add corresponding entries in dbg_channel_names.
FIxes dotnet/coreclr#21454
Commit migrated from https://github.com/dotnet/coreclr/commit/
9a59c40788d55aeb187df2319cd4450fdb01b6f9
dotnet-maestro-bot [Sun, 9 Dec 2018 01:02:09 +0000 (17:02 -0800)]
Update CoreClr, CoreFx, CoreSetup, PgoData to preview-27208-01, preview.18606.1, preview-27206-02, master-
20181208-0038, respectively (dotnet/coreclr#21374)
Commit migrated from https://github.com/dotnet/coreclr/commit/
a81680cc473a6620625815eb643c2f2fea771f2e
Michal Strehovský [Sat, 8 Dec 2018 21:48:06 +0000 (22:48 +0100)]
Fix regression in fat calls (dotnet/coreclr#21446)
This seems to fix an AV in RyuJIT.
Commit migrated from https://github.com/dotnet/coreclr/commit/
759116b3db4b0f6e2b4306062f33b517d532217a
Tarek Mahmoud Sayed [Sat, 8 Dec 2018 20:40:13 +0000 (12:40 -0800)]
Leap Seconds Support (dotnet/coreclr#21420)
* Leap Seconds Support
* Address Feedback
* More feedback addressing
Commit migrated from https://github.com/dotnet/coreclr/commit/
98e49952213ff29ee78cb9c33dd33927a88905c6
Aaron Robinson [Sat, 8 Dec 2018 18:41:29 +0000 (10:41 -0800)]
Remove `TryGetGuid()` and `GetDefaultInterfaceForCoclass()` from the (dotnet/coreclr#21447)
* Remove `TryGetGuid()` and `GetDefaultInterfaceForCoclass()` from the
stdinterfaces API surface.
Commit migrated from https://github.com/dotnet/coreclr/commit/
12fafad1c95a3379a0d8bd9e584a8161cb3f9fe1
Jeremy Koritzinsky [Sat, 8 Dec 2018 05:36:01 +0000 (21:36 -0800)]
Add PNSE CustomMarshaler tests (for Tlbimp compat) (dotnet/coreclr#21438)
Commit migrated from https://github.com/dotnet/coreclr/commit/
d26b3b538dae408635806bb86d14e6d64f6cbd80
Stephen Toub [Sat, 8 Dec 2018 04:49:29 +0000 (23:49 -0500)]
Use string.Create in ConvertFromUtf32 (dotnet/coreclr#21409)
* Use string.Create in ConvertFromUtf32
Removes the unsafe code from the method. Also happens to make it a bit faster.
* Improve Rune.ToString performance
Commit migrated from https://github.com/dotnet/coreclr/commit/
ca60cf7c507e73f3bb28de0f7781b201a66cf8d2
Stephen Toub [Sat, 8 Dec 2018 02:14:44 +0000 (21:14 -0500)]
Remove some unnecessary spinning (dotnet/coreclr#21437)
Most of the use of SpinWait in CoreLib involves waiting for some short-lived operation to complete on another thread, in which case the spinning thread should backoff as it's unable to make forward progress until the other operation completes. In a few cases, however, SpinWait is being used just around CompareExchange operations, such that at least one thread running this code path is guaranteed to make forward progress, and the backoff in the spinning doesn't actually help (in theory it could help to reduce contention if lots of threads were all trying to CompareExchange concurrently, but in such cases you'd actually want more randomized backoff, as otherwise it's likely all the threads would re-attempt at around the same time and similarly re-encounter contention).
Commit migrated from https://github.com/dotnet/coreclr/commit/
1cba6f8c32a74a7e7e20fad004be6796a7282c94
Tanner Gooding [Fri, 7 Dec 2018 23:01:23 +0000 (15:01 -0800)]
Moving various Vector128/256 helper method to be implemented using other intrinsics (dotnet/coreclr#21432)
* Updating Vector128.CreateScalar and Vector256.CreateScalar to be implemented using other intrinsics
* Updating Vector128.Equals and Vector256.Equals to be implemented using other intrinsics
* Updating Vector256.WithLower, Vector256.GetUpper, and Vector256.WithUpper to be implemented using other intrinsics
* Updating Vector128.Create(T) and Vector256.Create(T) to be implemented using other intrinsics
* Fixing the `NI_Base_Vector256_As` intrinsics to only fold the cast if AVX is supported and add a clarifying comment to the Vector128/256.Equals code
* Changing the various `*Software()` local functions in Vector128/256 to be `SoftwareFallback()`
Commit migrated from https://github.com/dotnet/coreclr/commit/
615a321f5226e0d9389741f4fcec9b6944e319cb
Aaron Robinson [Fri, 7 Dec 2018 22:31:24 +0000 (14:31 -0800)]
Add support for loading registered TLBs (dotnet/coreclr#21430)
* Add support for loading registered TLBs
Commit migrated from https://github.com/dotnet/coreclr/commit/
139bdfd2b9378a7370e8d771811c330488d29ea2
Davis Goodin [Thu, 6 Dec 2018 23:16:49 +0000 (17:16 -0600)]
Build Microsoft.NET.Sdk.IL in source-build
Commit migrated from https://github.com/dotnet/coreclr/commit/
d52df656f0a4c3dc6591698575cd598ea6d5272a
Tanner Gooding [Fri, 7 Dec 2018 21:00:35 +0000 (13:00 -0800)]
Adding a note to the genBaseIntrinsic function header about operand assumptions (dotnet/coreclr#21439)
Commit migrated from https://github.com/dotnet/coreclr/commit/
be913c781de85aa3f4e0b952262f0f081c93eacb
Jan Vorlicek [Fri, 7 Dec 2018 19:13:43 +0000 (20:13 +0100)]
Fix some SOS commands after SharedDomain removal (dotnet/coreclr#21401)
The recent removal of SharedDomain has broken some SOS commands, like
Name2EE or bpmd. There was a code that was enumerating domains and
obtaining some information on them. And the shared domain pointer from
DacpAppDomainStoreData was being included in the list of domains. As it
is NULL now, we have failed to get the information and the domain
iteration loop was exited prematurely.
I have made SOS resilient to the possibility of missing shared domain.
On older runtimes, the shared domain is still being reported.
Commit migrated from https://github.com/dotnet/coreclr/commit/
af46c514824aacd4d439eb1891d3d392c6894476
Stephen Toub [Fri, 7 Dec 2018 18:56:32 +0000 (13:56 -0500)]
Add CancellationToken parameter to GetAsyncEnumerator (dotnet/coreclr#21397)
Commit migrated from https://github.com/dotnet/coreclr/commit/
811e34bc945ca1e294d64320cd3aba7866f8aeee
Stephen Toub [Fri, 7 Dec 2018 18:55:53 +0000 (13:55 -0500)]
Factor new AsyncIteratorStateMachineAttribute into TryResolveStateMachineMethod (dotnet/coreclr#21396)
Commit migrated from https://github.com/dotnet/coreclr/commit/
372f18e8befffe3f4f1ccb3c21aeaf41af2aa763
Carol Eidt [Fri, 7 Dec 2018 18:11:30 +0000 (10:11 -0800)]
Merge pull request dotnet/coreclr#21361 from fiigii/x64tests
Improve hardware intrinsic tests
Commit migrated from https://github.com/dotnet/coreclr/commit/
02d37e4b3f7a8d26949a827f9b0d6c0422b3670c
Jeremy Koritzinsky [Fri, 7 Dec 2018 17:55:37 +0000 (09:55 -0800)]
Add PNSE implementations of unsupported built-in custom marshalers to enable good error messages on PIAs that could possibly directly use them. (dotnet/coreclr#21429)
Commit migrated from https://github.com/dotnet/coreclr/commit/
78de81cf619c6e06a26860763dea761d928febd0
Bruce Forstall [Fri, 7 Dec 2018 16:10:00 +0000 (08:10 -0800)]
Disable ObjectStackAllocationTests for ARM32 (dotnet/coreclr#21421)
Issue dotnet/coreclr#21376
Commit migrated from https://github.com/dotnet/coreclr/commit/
1e929c65e76778b18a888c46643a56cf6a740408
Stephen Toub [Fri, 7 Dec 2018 09:56:40 +0000 (04:56 -0500)]
Fix Microsoft.IO.Redist compilation string.Create compilation failure
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
ff199cc9ac6cef3679918d2e88d5c19f8090593e
Carol Eidt [Fri, 7 Dec 2018 14:20:49 +0000 (06:20 -0800)]
Merge pull request dotnet/coreclr#21431 from fiigii/fixbmi
Fix a bug that disabled Bmi1/2.X64
Commit migrated from https://github.com/dotnet/coreclr/commit/
77a5a729dd1ce008d4da2bc3f3b5775e4664dd75
Michal Strehovský [Fri, 7 Dec 2018 10:46:27 +0000 (11:46 +0100)]
Work around an MCG bug (dotnet/corertdotnet/coreclr#6658)
This is blocking TFS integrations.
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
13f8624a5526d9e71c6b8383c68be0afded8d596
Jan Vorlicek [Fri, 7 Dec 2018 09:32:59 +0000 (10:32 +0100)]
Fix SOS thread statics display (dotnet/coreclr#21426)
I've noticed that when dumping an object with thread locals using SOS
dumpobj command, I never get the thread locals. I've stepped through the
code in SOS that displays thread statics and found that for some strange
reason, it dismisses threads where DomainLocalModule doesn't have
"initialized" flag set for the given class. However, when runtime
accesses thread statics, it just checks "allocated" flag set for the
given class in the ThreadLocalModule. Removing the extra check for
DomainLocalModule fixed the problem and now thread statics are displayed
properly.
Commit migrated from https://github.com/dotnet/coreclr/commit/
add9f313447c44db85944cbff0d633f8852b5b9f
Jan Vorlicek [Fri, 7 Dec 2018 09:20:48 +0000 (10:20 +0100)]
Disable obsolete collectible corefx tests (dotnet/coreclr#21428)
Now that the COM interop support for collectible classes is in, we need
to disable couple of corefx tests that were checking that it fails.
Commit migrated from https://github.com/dotnet/coreclr/commit/
35b5555b96b57e9f5a969580abb5dfdfeb735732
Andy Ayers [Fri, 7 Dec 2018 08:12:04 +0000 (00:12 -0800)]
JIT: block general cloning of candidate calls (dotnet/coreclr#21418)
Follow-up from dotnet/coreclr#21270 and dotnet/coreclr#21414.
Block general cloning from inadvertently cloning a candidate call.
Add a separate path for cloning calls that are inline and guarded
devirtualization candidates for use by guarded devirtualization.
Callers need to take extra steps after cloning one of these calls
to properly fix everything up.
Also fix up some issues in the large comment for the fat calli
transformation.
Commit migrated from https://github.com/dotnet/coreclr/commit/
08be98cd4d13102958b21d8ad4b067f6fee1abb4
Fei Peng [Fri, 7 Dec 2018 01:42:17 +0000 (17:42 -0800)]
Fix a bug that disabled Bmi1/2.X64
Commit migrated from https://github.com/dotnet/coreclr/commit/
4c9b4f0537bfeb97c3f749bc0bd5c4560f090e9c
Tanner Gooding [Fri, 7 Dec 2018 01:15:03 +0000 (17:15 -0800)]
Moving CreateScalarUnsafe, ToScalar, Vector128.ToVector256Unsafe, and Vector256.GetLower to be intrinsics (dotnet/coreclr#21351)
* Moving CreateScalarUnsafe, ToScalar, Vector128.ToVector256Unsafe, and Vector256.GetLower to be intrinsics
* Adding containment support to the helper intrinsics
Commit migrated from https://github.com/dotnet/coreclr/commit/
1c18b3290b825e66e973e147eda8c7cca3e539c6
Carol Eidt [Thu, 6 Dec 2018 21:50:19 +0000 (13:50 -0800)]
Merge pull request dotnet/coreclr#21314 from CarolEidt/DontPromoteHwVector
Don't struct-promote opaque vectors
Commit migrated from https://github.com/dotnet/coreclr/commit/
61da68e56ab0b3dd4865d34aee0ca243cc702c09
Michelle McDaniel [Thu, 6 Dec 2018 21:18:28 +0000 (13:18 -0800)]
Revert "Move the perf jobs to Windows.10.Amd64.ClientRS4.DevEx.15.8.Open (dotnet/coreclr#21258)" (dotnet/coreclr#21412)
This reverts commit dotnet/coreclr@
5bb1b41dd19bca8f25b6d048c27d6708b86326cb.
Commit migrated from https://github.com/dotnet/coreclr/commit/
82693d8f088d2a3c0cc8e2d2f7de0a86b18b4df9
Stephen Toub [Thu, 6 Dec 2018 21:11:49 +0000 (16:11 -0500)]
Use Span instead of manual copy in MetadataImport.GetUserString (dotnet/coreclr#21405)
* Use Span instead of manual copy in MetadataImport.GetUserString
* Address PR feedback
Commit migrated from https://github.com/dotnet/coreclr/commit/
4ea2c295ac521272af399580006c55d295782b5a
Stephen Toub [Thu, 6 Dec 2018 21:11:33 +0000 (16:11 -0500)]
Remove char[] allocation from EventPipePayloadDecoder for strings (dotnet/coreclr#21407)
Commit migrated from https://github.com/dotnet/coreclr/commit/
5786b4b607038417a51c2990f7c3db4990126ef7
Stephen Toub [Thu, 6 Dec 2018 21:11:09 +0000 (16:11 -0500)]
Use string.Create in Path.GetRandomFilePath (dotnet/coreclr#21410)
* Use string.Create in Path.GetRandomFilePath
Removes a good chunk of the unsafe code.
* Address PR feedback
Commit migrated from https://github.com/dotnet/coreclr/commit/
18ef23757624db629f3a414c29b8a795e12b05ba