Brian Sullivan [Fri, 11 Jan 2019 00:29:42 +0000 (16:29 -0800)]
Merge pull request dotnet/coreclr#17733 from mikedn/cc-cond2
Expand GT_JCC/SETCC condition support
Commit migrated from https://github.com/dotnet/coreclr/commit/
459b58a7766707fb059a5762c7d72cb0af42a6ff
Bruce Forstall [Fri, 11 Jan 2019 00:29:25 +0000 (16:29 -0800)]
Merge pull request dotnet/coreclr#21937 from BruceForstall/RemoveAltJitJobs
Remove altjit jobs in CI
Commit migrated from https://github.com/dotnet/coreclr/commit/
a2e33937c7cbff1e5eebb7848d8ce7c039812749
Sung Yoon Whang [Thu, 10 Jan 2019 23:24:55 +0000 (15:24 -0800)]
disable dynamo test on arm32/64 (dotnet/coreclr#21940)
Commit migrated from https://github.com/dotnet/coreclr/commit/
06ab66cac5b687f26bf28e430d8a32a1e76a9004
Marek Safar [Thu, 10 Jan 2019 22:47:35 +0000 (23:47 +0100)]
Move public interface ISymDocumentWriter to shared location (dotnet/coreclr#21931)
Commit migrated from https://github.com/dotnet/coreclr/commit/
234bbb509e9ea8b08787fcd509edd6141e37d751
Marek Safar [Thu, 10 Jan 2019 19:01:43 +0000 (20:01 +0100)]
Move COMException to shared partition (dotnet/corertdotnet/coreclr#6803)
* Move COMException to shared partition
* Review feedback
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
15036527b060dccef9f3befe33af22346e6999cb
Carol Eidt [Thu, 10 Jan 2019 21:39:26 +0000 (13:39 -0800)]
Merge pull request dotnet/coreclr#21864 from fiigii/fixscalarmem
Fix CRC32 instruction encoding on containment form
Commit migrated from https://github.com/dotnet/coreclr/commit/
9fa4f2226c687317981f30eb1f49b82371c80bd6
Sergey Andreenko [Thu, 10 Jan 2019 19:53:32 +0000 (11:53 -0800)]
Add an exclusion for hugeexpr1 on arm32 under `JitOptimizationSensitive` . (dotnet/coreclr#21914)
Commit migrated from https://github.com/dotnet/coreclr/commit/
c37ac0eaa8d26ecf06b86b825e713316897ff470
Bruce Forstall [Thu, 10 Jan 2019 19:22:06 +0000 (11:22 -0800)]
Remove altjit jobs in CI
We have full native jobs for arm32 and arm64 for all scenarios, which
is a superset of everything we've run using altjit. So the altjit
jobs are no longer necessary. In addition, the altjit jobs,
especially the corefx jobs, have never run cleanly, for reasons
that have never been investigated or understood. Since we have
full native corefx runs, there is no reason to look into the altjit
failures.
Commit migrated from https://github.com/dotnet/coreclr/commit/
d6d214e61abfb5621d60e1d34abf48be4dea44a6
Carol Eidt [Thu, 10 Jan 2019 19:01:48 +0000 (11:01 -0800)]
Merge pull request dotnet/coreclr#21815 from CarolEidt/Fix752890
[x86] Make copies of odd-size struct arguments
Commit migrated from https://github.com/dotnet/coreclr/commit/
04c0dc71dfd15432ba5f8be9ad8947146bc58e55
Egor Chesakov [Thu, 10 Jan 2019 18:03:03 +0000 (10:03 -0800)]
Disable what fails and blocks transitioning to Azure DevOps (dotnet/coreclr#21926)
* Run on Debian.9.Amd64.* instead of Debian.8.Amd64.* since it's the minimum supported version of Debian
* Temporary remove Windows.10.Nano.Amd64.Open and Windows.7.Amd64.Open blocked by dotnet/coreclr#21693 dotnet/coreclr#21796
* Don't need a non-portable RHEL7 build and continue using centos7_x64_build_image for building linux-x64 packages (the same way as buildpipeline does)
* Skip submission to Helix if there is are queues to submit to
* Use static string for Helix Сreator property
* Increase timeout for official build test jobs
Commit migrated from https://github.com/dotnet/coreclr/commit/
4e6ff628eaebcf32c9ea599b2d47f3290860728e
Carol Eidt [Thu, 10 Jan 2019 17:41:46 +0000 (09:41 -0800)]
Merge pull request dotnet/coreclr#21888 from fiigii/fixVzeropper
Fix VZEROUPPER for HW intrinsic
Commit migrated from https://github.com/dotnet/coreclr/commit/
2f808a8558857a5e2ff6503a5279b9f5a0a3b5e6
Marek Safar [Thu, 10 Jan 2019 17:31:18 +0000 (18:31 +0100)]
Moves EnvironmentVariableTarget enum to shared partition (dotnet/coreclr#21930)
Commit migrated from https://github.com/dotnet/coreclr/commit/
4e032bc4cf862bca1668b12c6656b918467742b5
Sven Boemer [Thu, 10 Jan 2019 16:37:11 +0000 (08:37 -0800)]
Work around OSX native dependency install issue (dotnet/coreclr#21913)
"brew update" before "brew install"
To work around https://github.com/dotnet/coreclr/issues/21910
Commit migrated from https://github.com/dotnet/coreclr/commit/
e6504ac402a65283e2083ec8d28e8c90a743bd1a
Sven Boemer [Thu, 10 Jan 2019 16:29:39 +0000 (08:29 -0800)]
Re-enable publishing of transport packages (dotnet/coreclr#21922)
Commit migrated from https://github.com/dotnet/coreclr/commit/
f14a87808cd1e9612932486b8a191c439e558b15
Ben Adams [Thu, 10 Jan 2019 15:22:12 +0000 (16:22 +0100)]
Move restoring ExecutionContext out of generic methods (dotnet/coreclr#21909)
* Move restoring ExecutionContext out of generic methods
* Move one back
Commit migrated from https://github.com/dotnet/coreclr/commit/
15dc741ed6247257c0384dd4cba1499ffbe9a462
Chuck Ries [Thu, 10 Jan 2019 06:43:10 +0000 (22:43 -0800)]
Prevent AsyncIteratororMethodBuilder.ObjectIdForDebugger from gettingg trimmed (dotnet/coreclr#21920)
Commit migrated from https://github.com/dotnet/coreclr/commit/
83c87e2c23ad791b75da6818a0b32e687859f5d1
dotnet-maestro-bot [Thu, 10 Jan 2019 06:42:37 +0000 (22:42 -0800)]
Update CoreClr, CoreFx, PgoData to preview-27309-02, preview.19059.7, master-
20190109.7, respectively (dotnet/coreclr#21905)
Commit migrated from https://github.com/dotnet/coreclr/commit/
2555ff82c1c961c4c0c0e8c58209645a8d09fb41
Carol Eidt [Thu, 10 Jan 2019 05:27:55 +0000 (21:27 -0800)]
PR Feedback
Commit migrated from https://github.com/dotnet/coreclr/commit/
ebcd9d20f5e6b454a4efb0675610fac998c7c8f6
Andy Ayers [Thu, 10 Jan 2019 02:07:08 +0000 (18:07 -0800)]
Merge pull request dotnet/coreclr#21893 from AndyAyersMS/ReconcileInlineBudgetUsingSizeOfImportedIL
JIT: modify inline budget update to use estimated imported IL size
Commit migrated from https://github.com/dotnet/coreclr/commit/
a658a8d51307cf619da538519893bd29d3be0d62
Andy Ayers [Thu, 10 Jan 2019 01:41:39 +0000 (17:41 -0800)]
Merge pull request dotnet/coreclr#21779 from mazong1123/fix-19166-checkproj-opt
Check the optimize settings of JIT test projects.
Commit migrated from https://github.com/dotnet/coreclr/commit/
15fbd7d1d118252b2c9077ff56786e071053a2d6
Jeremy Koritzinsky [Thu, 10 Jan 2019 00:02:36 +0000 (16:02 -0800)]
Implement AssemblyDependencyResolver (dotnet/coreclr#21896)
* Implementation of ComponentDependencyResolver
PInvokes into hostpolicy.dll (which should live next to the runtime and thus always be reachable).
If the PInvoke fails (missing hostpolicy.dll) we will fail for now.
Adds tests for the API into CoreCLR repo. The main reason is that with corerun
we can easily mock the hostpolicy.dll since there's none to start with.
Writing the same tests in CoreFX or any other place which starts the runtime through
hostpolicy would require test-only functionality to exist in either the class itself
or in the hostpolicy.
* Fix test project file to work outside of VS
* Better test cleanup to not leave artifacts on disk.
* CDR native resolution tests
Add native resolution tests
* Implements detailed error reporting for ComponentDependencyResolver.
Registers error writer with the hostpolicy to receive detailed errors. Uses that in the exception.
Modifications to the mock and the tests to be able to verify the functionality.
* Revert overly eager cleanup
* Change public API surface naming to match the approved API surface.
* Fix nits.
* Fix renames.
Commit migrated from https://github.com/dotnet/coreclr/commit/
dbf50d82754a894ba53781dbb839198a46605c9f
Fei Peng [Wed, 9 Jan 2019 23:56:24 +0000 (15:56 -0800)]
Fix CRC32 instruction encoding on containment form
Commit migrated from https://github.com/dotnet/coreclr/commit/
80566c08ddc93fa6af2e673f0a72eb070346ed4f
Egor Chesakov [Wed, 9 Jan 2019 23:18:47 +0000 (15:18 -0800)]
Specify the minimum supported version of macOS (dotnet/coreclr#21816)
* Pass the minimum supported version of macOS option to both compile and link stages in configurecompiler.cmake
* Enable OSX.1012.Amd64.* open and internal queues and add OSX.1014.Amd64 queue in eng/platform-matrix.yml
Commit migrated from https://github.com/dotnet/coreclr/commit/
fe5f8d64ae098900eb6bd8b83bf19a7e60e06270
Jeremy Koritzinsky [Wed, 9 Jan 2019 23:03:43 +0000 (15:03 -0800)]
Add tests for our layout-class marshalling (dotnet/coreclr#20867)
* Add simple test for the LayoutClassMarshaler (most of the code is already covered by the struct marshalling tests).
* Add test for blittable layout class.
* Apparently layout classes are passed by value when passed as struct fields instead of byref.
Commit migrated from https://github.com/dotnet/coreclr/commit/
9b3ace68d678b52ccff163fdcf1332be20ecd17f
Levi Broderick [Wed, 9 Jan 2019 21:58:59 +0000 (13:58 -0800)]
Move OperationStatus into shared source (dotnet/coreclr#21912)
This is the first step to moving OperationStatus from corefx into coreclr. It'll be used by the transcoding APIs which live in System.Private.CoreLib.
Commit migrated from https://github.com/dotnet/coreclr/commit/
5c480a4a83339564d4631762c100a5e12ed87357
José Rivero [Wed, 9 Jan 2019 21:48:30 +0000 (13:48 -0800)]
Addressing https://github.com/dotnet/coreclr/issues/21461 (dotnet/coreclr#21771)
- Increase the polling interval to 20 seconds.
- Provide an opt-out option to the EventPipe file polling.
Commit migrated from https://github.com/dotnet/coreclr/commit/
6d00b98abc0be4bac8ec7c9fadd7a4a67e13f284
Jan Vorlicek [Wed, 9 Jan 2019 21:21:03 +0000 (22:21 +0100)]
Fix DynamicMethodDesc memory leak (dotnet/coreclr#21891)
The DynamicMethodTable::AddMethodsToList was incorrectly allocating the
MethodDescChunk from the domain's LoaderAllocator instead of the context
specific one. Thus the allocated memory was leaking after a collectible
AssemblyLoadContext was collected.
There was also a problem with the DynamicMethodDesc::Destroy being
called twice for collectible classes - once by
RuntimeMethodHandle::Destroy() and once when the DomainFile destructor
was called. Due to the primary issue, this problem was not visible,
since the domain's LoaderAllocator is never unmapped. But it started to
cause AV after the primary issue was fixed.
Commit migrated from https://github.com/dotnet/coreclr/commit/
660eb0018871a88049ed66a17817dcf72278c9d4
Fadi Hanna [Wed, 9 Jan 2019 21:19:04 +0000 (13:19 -0800)]
Change CoreLib native image to be R2R by default on all platforms (dotnet/coreclr#21497)
Commit migrated from https://github.com/dotnet/coreclr/commit/
5478a2f17f58033c32a810526b4868cba7952f32
Michelle McDaniel [Wed, 9 Jan 2019 20:56:30 +0000 (12:56 -0800)]
Fix perf-prep to pass the branch name (dotnet/coreclr#21911)
For the release branches, we need to specify the branch name when pulling down coreclr test artifacts, and not just pull down from master. This change modifies perf-prep.sh to allow us to specify the branch name, which we will then port to the release branches.
Commit migrated from https://github.com/dotnet/coreclr/commit/
92daaffee502293162b03f74f923ad6ecf1075a0
Bruce Forstall [Wed, 9 Jan 2019 19:07:20 +0000 (11:07 -0800)]
Merge pull request dotnet/coreclr#20772 from mikedn/ir-cleanup
Some IR cleanup
Commit migrated from https://github.com/dotnet/coreclr/commit/
867d7c93ea9dbabfc7262e747ecb3823983606e3
Jeremy Koritzinsky [Wed, 9 Jan 2019 18:06:25 +0000 (10:06 -0800)]
Remove extraneous eightbytes check for native structures and add tests. (dotnet/coreclr#21590)
* Remove extraneous eightbytes check and add tests.
* Interger -> Integer
* Missed Helper.cs
* Handle field sizes larger than 8 bytes in AssignClassifiedEightByteTypes
* Move CoreFX test case into CoreCLR. Fix the SystemV eightbyte classifier to correctly classify the second eightbyte when a single field crosses the eightbyte boundary (such as an in-place array of three 4-byte enums).
* Enable passing user defined structs in in-place arrays in a structure if SystemV ABI expects it.
* Correctly handle a field spanning two full eightbytes.
* Just directly assign 0 to accumulatedSizeForEightByte
* Change multi-eightbyte field handling to be a loop as per PR feedback.
* Remove extraneous whitespace.
Commit migrated from https://github.com/dotnet/coreclr/commit/
03e2c029f7bbd36e06bcad3822b1dd3866772170
Omair Majid [Wed, 9 Jan 2019 17:28:48 +0000 (12:28 -0500)]
Support building with python3 on unix (dotnet/coreclr#19356)
The windows build scripts try finding python in order of python3,
python2 and then python. The unix build scripts dont. They just try
python2 variants and then fail. This change makes brings them closer
together by letting users build using only python3.
Commit migrated from https://github.com/dotnet/coreclr/commit/
7e0608fee5cacbf5bf7d0c3886e2fcb1a9d10754
Jan Kotas [Wed, 9 Jan 2019 12:17:49 +0000 (04:17 -0800)]
More DispatchWrapper tweaks
Commit migrated from https://github.com/dotnet/coreclr/commit/
f76e33e6100e5c2b5cc1b0007829aa99d7199cb3
Marek Safar [Wed, 9 Jan 2019 09:44:46 +0000 (10:44 +0100)]
Removes PNSE version of DispatchWrapper and keep only single version with ifdef
Commit migrated from https://github.com/dotnet/coreclr/commit/
006771e3e7d2037a66093008b9c17e4927cd4745
Jan Kotas [Wed, 9 Jan 2019 06:55:58 +0000 (22:55 -0800)]
Delete files moved to shared partition
Commit migrated from https://github.com/dotnet/coreclr/commit/
b2ea27c2959f2d50702cffb6cb0698a36da8167e
Marek Safar [Wed, 9 Jan 2019 01:27:26 +0000 (02:27 +0100)]
Moves common COM type to shared corelib partition (dotnet/corertdotnet/coreclr#6782)
* Moves common COM type to shared corelib partition
* Moves GetHRForException to PInvokeMarshal
* Add temporary CORECLR ifdef to ArrayWithOffset
* Apply cleanup from CoreCLR
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
c44b38fec5db8c0957cd15dd17164084b4af4011
Tomas Weinfurt [Wed, 9 Jan 2019 10:53:35 +0000 (02:53 -0800)]
fix DateTime overflow on ARM32 (dotnet/coreclr#21902)
Commit migrated from https://github.com/dotnet/coreclr/commit/
3c81b68ca399f16077c159e838da38968494f3a7
Mike Danes [Wed, 9 Jan 2019 06:42:02 +0000 (08:42 +0200)]
Update gtLclILoffs related comments
Commit migrated from https://github.com/dotnet/coreclr/commit/
4b68c59aa18e0af3c770e1bdf22993a252d19a46
Aditya Mandaleeka [Wed, 9 Jan 2019 03:43:18 +0000 (19:43 -0800)]
Merge pull request dotnet/coreclr#21867 from adityamandaleeka/fix_writebarrier_bounds_check
Fix write barrier bounds checks for ARM64 Unix.
Commit migrated from https://github.com/dotnet/coreclr/commit/
c119bd7fae8359fe49e9234ae47315ca74c7dea1
Andy Ayers [Wed, 9 Jan 2019 02:42:59 +0000 (18:42 -0800)]
Merge pull request dotnet/coreclr#21857 from AndyAyersMS/RangeCheckSmallTypes
JIT: infer ranges from small int type operations
Commit migrated from https://github.com/dotnet/coreclr/commit/
eaf9823a0ba090826ed6cb3763fdce93f16199f0
Jan Vorlicek [Wed, 9 Jan 2019 02:00:36 +0000 (03:00 +0100)]
Enable FinalizeQueue SOS command for Unix (dotnet/coreclr#21876)
The command is very useful and there seems to be no reason for it to not to be enabled on Unix.
Commit migrated from https://github.com/dotnet/coreclr/commit/
5a0144e70f412178615e3e69f2256ffd695d2189
Carol Eidt [Wed, 9 Jan 2019 01:46:17 +0000 (17:46 -0800)]
Copy address-taken SIMD intrinsic (dotnet/coreclr#21884)
* Copy address-taken SIMD intrinsic
This occurs, for example, when boxing the result of a SIMD intrinsic. This was being handled for the HW intrinsic case, but not the SIMD Vector intrinsics. Also, eliminate `OperIsSimdHWIntrisic` since it redundantly checks for the case of a SIMD result, even though it was always called in a context where the result is known to be a struct type.
Fix dotnet/coreclr#21854
Commit migrated from https://github.com/dotnet/coreclr/commit/
687ba57ae4e3df6aaa539898dea99ac2d918554a
Stephen Toub [Wed, 9 Jan 2019 01:01:36 +0000 (20:01 -0500)]
Expose string.Concat(ReadOnlySpan, ...) (dotnet/coreclr#21882)
* Expose string.Concat(ReadOnlySpan, ...)
* Add String.Empty fast path to string.Concat(ReadOnlySpan, ...)
Commit migrated from https://github.com/dotnet/coreclr/commit/
d31cd214adbb14724a829f577b6861ed2239a03b
Swaroop Sridhar [Wed, 9 Jan 2019 00:01:20 +0000 (16:01 -0800)]
Update Test exclusion for NativeLibraryTests in official builds. (dotnet/coreclr#21858)
Update issues.targets, to reflect the change in location of
NativeLibray tests.
Fixes https://github.com/dotnet/coreclr/issues/21844
Commit migrated from https://github.com/dotnet/coreclr/commit/
26b686eb8604b40c1fef9bf526061c6b77a1158c
Sergey Andreenko [Tue, 8 Jan 2019 23:40:50 +0000 (15:40 -0800)]
Use `saveNext` unwind opcode on arm64. (dotnet/coreclr#21683)
* Use `saveNext` opcode on arm64.
* Support using of `save_next` on int/float border.
* Delete the extra requirement that an epilog sequences can't start from `save_next`.
* response feedback
Commit migrated from https://github.com/dotnet/coreclr/commit/
62298e66c2cdd5f7ef237aa0584decb3ae71947a
Fei Peng [Tue, 8 Jan 2019 23:22:52 +0000 (15:22 -0800)]
Fix VZERoUPPER for HW intrinsic
Commit migrated from https://github.com/dotnet/coreclr/commit/
5aadcfd27a215174234ec9e025d824de927b8943
Andy Ayers [Tue, 8 Jan 2019 23:19:42 +0000 (15:19 -0800)]
check for valid IL offsets before computing block ILsize
Commit migrated from https://github.com/dotnet/coreclr/commit/
c3a132086e32ddd237a8fa6cca79941c678d5857
Jeremy Koritzinsky [Tue, 8 Jan 2019 22:50:42 +0000 (14:50 -0800)]
Extract cleanup changes from dotnet/coreclr#21793. (dotnet/coreclr#21852)
* Cleanup changes from dotnet/coreclr#21793.
* Emit the data pointer offset directly into the IL stream (and calculate it as needed instead of passing it through)
* Fix broken assumption that OverrideProcArgs::na::m_pMT is the array type instead of the element type (which it was).
Commit migrated from https://github.com/dotnet/coreclr/commit/
41dfe19d1ffe00edfdaa837a3b46aea5a8036617
Andy Ayers [Tue, 8 Jan 2019 19:27:32 +0000 (11:27 -0800)]
JIT: modify inline budget update to use estimated imported IL size
The inliner keeps a time budget to try and avoid pathological runaway inline
behavior (see dotnet/coreclr#4375). The jit estimates the time impact of an inline using a
simple projection based on IL size. If an prospective inline would put the jit
over the time budget, the inline is blocked -- and note even aggressive inlines
can be blocked this way.
We now have a fair number of aggressive inline methods like
`Vector256<T>.IsSupported` where the IL is optimized early on by the jit and the
actual impact on the calling method is much less than the initial IL size would
suggest. For instance `IsSupported` is 286 bytes of IL, but the net contribution
of this method at jit time is either a constant 0 or 1, and so the effective size
is more like 2 bytes of IL.
This set of changes updates the jit to estimate the imported IL size of a method
when updating the budget.
Closes dotnet/coreclr#21794.
Commit migrated from https://github.com/dotnet/coreclr/commit/
3f182cfcf80af6500217673d920c52ccf6919661
Charles Milette [Tue, 8 Jan 2019 22:16:34 +0000 (17:16 -0500)]
Fix consistency between `-` and prefixless args in build.cmd (dotnet/coreclr#20248)
* Fix consistency between `-` and prefixless args in build.com
* Remove -generatelayout
Already PR'd by someone else
Commit migrated from https://github.com/dotnet/coreclr/commit/
f27337157392bbafd0cf69835d7ec3045a1dc08b
Bruce Forstall [Tue, 8 Jan 2019 22:02:15 +0000 (14:02 -0800)]
Merge pull request dotnet/coreclr#20409 from lol768/patch-1
Add a note to clarify debugging w/ dotnet is fine
Commit migrated from https://github.com/dotnet/coreclr/commit/
d73e20f6cb12d7cf4c9909ff70a8920c978a1ce3
Günther Foidl [Tue, 8 Jan 2019 21:15:48 +0000 (22:15 +0100)]
Updated "Viewing JIT Dumps" for .NET Core 3.0 (dotnet/coreclr#21687)
* Updated "Viewing JIT Dumps" for .NET Core 3.0
plus some minor wording change
* Incorporated changes from https://github.com/dotnet/coreclr/pull/21859
Commit migrated from https://github.com/dotnet/coreclr/commit/
2d2caa80996562936b146fbf81ab228a21b1f7b7
dotnet-maestro-bot [Tue, 8 Jan 2019 21:00:27 +0000 (13:00 -0800)]
Update CoreClr, CoreFx to preview-27308-03, preview.19058.1, respectively (dotnet/coreclr#21877)
Commit migrated from https://github.com/dotnet/coreclr/commit/
937fa6ca4323f7ea6a8eb7a9aaf1667ea48a5a21
Aditya Mandaleeka [Tue, 8 Jan 2019 02:52:10 +0000 (18:52 -0800)]
Fix write barrier bounds checks for ARM64 Unix
Commit migrated from https://github.com/dotnet/coreclr/commit/
f9f2458a6130085e90130b7497aff25f4cf0f922
Bruce Forstall [Tue, 8 Jan 2019 19:36:43 +0000 (11:36 -0800)]
Merge pull request dotnet/coreclr#21880 from BruceForstall/FixTestReportsArchiving
Update test reports archiving
Commit migrated from https://github.com/dotnet/coreclr/commit/
9037c3d8e224b5121bc103383d20b67be846a14a
Bruce Forstall [Tue, 8 Jan 2019 19:02:40 +0000 (11:02 -0800)]
Update test reports archiving
Two things:
1. Turn "echo" back on after runtests.cmd, so we see in the log file
the testReports.zip compression.
2. Change the archiving of testReports.zip to not occur even if the
test run fails (this is actually the most interesting case), and don't
fail if there is nothing to archive.
Commit migrated from https://github.com/dotnet/coreclr/commit/
491c4ad85ba6cdfde84a45ee00b7b1ea823cd7a3
Mike McLaughlin [Tue, 8 Jan 2019 17:35:12 +0000 (09:35 -0800)]
Fix issue dotnet/coreclr#20585 createdump explicitly uses /tmp. (dotnet/coreclr#21866)
Changed to PAL's GetTempPathA to get the temp path.
Commit migrated from https://github.com/dotnet/coreclr/commit/
bd5ea1c46ca21631194610f88f2ba420e8982d5b
Oded Hanson [Tue, 8 Jan 2019 17:34:25 +0000 (19:34 +0200)]
Fixed potential memory leak (dotnet/coreclr#21872)
Commit migrated from https://github.com/dotnet/coreclr/commit/
d6bf5ed160e99b9a66087dcc8738f22a9a370121
dotnet-maestro-bot [Tue, 8 Jan 2019 14:06:58 +0000 (06:06 -0800)]
Update CoreClr, CoreFx, PgoData to preview-27308-01, preview.19057.3, master-
20190108-0040, respectively (dotnet/coreclr#21830)
Commit migrated from https://github.com/dotnet/coreclr/commit/
7e5e65d212ef727918e7ad329f65ccf4ae38a865
Viktor Hofer [Tue, 8 Jan 2019 13:13:48 +0000 (14:13 +0100)]
Attempt to fix paths with spaces again (dotnet/coreclr#21837)
Commit migrated from https://github.com/dotnet/coreclr/commit/
b3498fd9788651659b478ce4aad7c9b6bf4eafc2
Dan Moseley [Tue, 8 Jan 2019 06:25:27 +0000 (22:25 -0800)]
Fix path length 255 (dotnet/coreclr#21838)
* Fix path length 255
* Fix assert
* Dead code
Commit migrated from https://github.com/dotnet/coreclr/commit/
c885564832facf8a9cdcbe9baa1c7a18321cb9bd
Will Cohen [Tue, 8 Jan 2019 06:19:28 +0000 (17:19 +1100)]
Update ceemain.cpp (dotnet/coreclr#21869)
Commit migrated from https://github.com/dotnet/coreclr/commit/
13c3af5bae229d426cfcd607e1bfecfb071df4a1
Jan Kotas [Tue, 8 Jan 2019 02:18:03 +0000 (18:18 -0800)]
CoreRT updates for files moved to shared partition
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
b7f67c967a1acb311e7873b515edc92f74b658af
Marek Safar [Tue, 8 Jan 2019 00:57:44 +0000 (01:57 +0100)]
Moves ComTypes to shared partition (dotnet/coreclr#21861)
Commit migrated from https://github.com/dotnet/coreclr/commit/
0a2ceb3fd146d9171b8c362aa8679d996d3e5bde
Tanner Gooding [Tue, 8 Jan 2019 00:57:34 +0000 (16:57 -0800)]
Fixing ContainCheckHWIntrinsic to ensure that scalar integer operands are the appropriate size (dotnet/coreclr#21641)
* Fixing ContainCheckHWIntrinsic to ensure that scalar integer operands are the appropriate size
* Adding a regression test for issue 21625
* Fixing IsContainableHWIntrinsicOp to use the containing node type (rather than the simd base type) for Scalar intrinsics
* Fixing the containment check for `Sse41.Insert(V128<float>, V128<float>, byte)`
* Cleaning up the isContainableHWIntrinsicOp logic in lowerxarch.cpp
* Restrict containment to genActualType(baseType)
* Formatting
* Removing some comments and simplifying the supportsContainment checks for various HWIntrinsics that take a scalar operand
* Applying formatting patch
Commit migrated from https://github.com/dotnet/coreclr/commit/
ccaf35e1e0dc6bbfb86e4fe6b8c24fe8fe346e55
Stephen Toub [Tue, 8 Jan 2019 00:22:14 +0000 (19:22 -0500)]
Check GenerateGuidForType argument for null (dotnet/coreclr#21851)
* Check GenerateGuidForType argument for null
* Also check for RuntimeType
Commit migrated from https://github.com/dotnet/coreclr/commit/
c2ac0f95ae6d453634dbe42159ad1f740cbe0958
Bruce Forstall [Mon, 7 Jan 2019 22:14:33 +0000 (14:14 -0800)]
Collect Windows test run logs into testReports.zip file (dotnet/coreclr#21813)
* Collect Windows test run logs into testReports.zip file
And upload these to Jenkins, so we can see how the tests ran.
* Archive test Reports even if the test run fails
* Need to use "call" when invoking runtest.cmd batch file
Commit migrated from https://github.com/dotnet/coreclr/commit/
59a2e255348ede17f1b57a88abc9fa04eeb2b556
Jeremy Koritzinsky [Mon, 7 Jan 2019 22:11:12 +0000 (14:11 -0800)]
Fix CharSet on StringBuilder hidden null terminator test (dotnet/coreclr#21853)
Commit migrated from https://github.com/dotnet/coreclr/commit/
fee8d6ad6fc27073f88755dbc066d1aea8da5517
Mike McLaughlin [Mon, 7 Jan 2019 21:33:29 +0000 (13:33 -0800)]
Actually fix issue dotnet/coreclr#21484 reported by the customer. (dotnet/coreclr#21850)
GC heap globals like ephemeral_heap_segment and finalize_queue are
null/invalid for a server GC. Add a check to skip the workstation GC
memory enumeration if server. The server memory enumeration already
skips if workstation GC.
Commit migrated from https://github.com/dotnet/coreclr/commit/
101c99fdfe6c0c348fea615f6388d23a6e397fc6
Andy Ayers [Mon, 7 Jan 2019 21:15:27 +0000 (13:15 -0800)]
JIT: infer ranges from small int type operations
Have range check use the ranges for small int types if it has no better
information.
Fixes dotnet/coreclr#21481
Commit migrated from https://github.com/dotnet/coreclr/commit/
eef4174805ccf8ae17f1f4e6170590a037122ddd
Andy Ayers [Mon, 7 Jan 2019 21:12:39 +0000 (13:12 -0800)]
JIT: encapsulate general checks for optimization (dotnet/coreclr#21822)
* JIT: encapsulate general checks for optimization
Add methods that answer the general question of whether or not
the jit is optimizing the code it produces.
Use this to replace composite checks for minopts and debug
codegen (the two modes where the jit is not optimizing).
* inline keyword cleanup
Commit migrated from https://github.com/dotnet/coreclr/commit/
7d54c590315ad682ed74f9491654720d83532ae7
David Mason [Mon, 7 Jan 2019 20:53:52 +0000 (12:53 -0800)]
Respect the instrumented code maps passed by the profiler in a rejit (dotnet/coreclr#21786)
We currently do not respect the rejit provided instrumentation maps in DebuggerJitInfo::SetBoundaries, this change updates it to use the rejit map if one exists.
Commit migrated from https://github.com/dotnet/coreclr/commit/
e8b934f0b52ecc019fee8ffaa48e658451a84996
Ben Adams [Mon, 7 Jan 2019 19:53:41 +0000 (20:53 +0100)]
Improve CustomAttribute (dotnet/coreclr#21832)
* Reduce local scopes in AddCustomAttributes
* CustomAttribute.cs tidy up
* Less struct copies
Commit migrated from https://github.com/dotnet/coreclr/commit/
e5cb6c35fc18dcf2221f56ecb6a78f194c7fcd0c
Jan Vorlicek [Mon, 7 Jan 2019 18:21:40 +0000 (19:21 +0100)]
Remove invalid test b21296 (dotnet/coreclr#21507)
This test was doing in-place modification of a managed string using
unsafe code which breaks string interning.
Commit migrated from https://github.com/dotnet/coreclr/commit/
b3d8246ed6618dd5b291acc9347b07c0ed3a27da
Sven Boemer [Mon, 7 Jan 2019 16:51:13 +0000 (08:51 -0800)]
Publish symbol packages (dotnet/coreclr#21769)
Commit migrated from https://github.com/dotnet/coreclr/commit/
364ea875bbfb9065b15b1496e710c1baca03c1e8
Marek Safar [Mon, 7 Jan 2019 16:07:37 +0000 (17:07 +0100)]
Moves StackTrace to shared partition (dotnet/coreclr#21757)
* Moves StackTrace to shared partition
* Remove obsolete comment
* StackFrame::GetFileName behaves like property, remove SecurityException
* Adjust CoreRT ifdefs, fix names for consistency
Commit migrated from https://github.com/dotnet/coreclr/commit/
d5c10c97f827354a83ef2915d31ac4e1c212662f
Sven Boemer [Mon, 7 Jan 2019 15:56:04 +0000 (07:56 -0800)]
Fix missing project error in official build (dotnet/coreclr#21767)
In response to https://github.com/dotnet/arcade/pull/1567.
This uses an empty project to work around the new behavior that requires a project file even for restore operations.
Commit migrated from https://github.com/dotnet/coreclr/commit/
c0d778417449b2e44ba2fedacd3046f1af755744
Tomáš Rylek [Mon, 7 Jan 2019 12:32:04 +0000 (13:32 +0100)]
Fix incorrect assignment of READYTORUN_HELPER_[Dbl|Flt][Rem/Round] (dotnet/coreclr#21836)
Turns out there's a long-standing typo in CoreCLR that reverses
the helper enumeration values for DBL and FLT. This doesn't seem
to be a problem in the CoreCLR repo as such because it solely
uses the legacy identifiers CORINFO_HELP_DBLREM et al. We have
however ported the incorrect helper enumeration values into R2RDump
and ILCompiler. This change immediately fixes R2RDump as it resides
in the same repo, I'll send out the ILCompiler change in
a separate PR.
Commit migrated from https://github.com/dotnet/coreclr/commit/
bcbb84df02d73a89dd13ea7fa2257f542202dd81
Filip Navara [Mon, 7 Jan 2019 03:16:50 +0000 (04:16 +0100)]
Remove CAS era security checks around resource loads (dotnet/coreclr#21825)
Commit migrated from https://github.com/dotnet/coreclr/commit/
ee8bc3272391e46862dd8d27d3e086dc3bf953cf
Jan Kotas [Sun, 6 Jan 2019 19:15:43 +0000 (11:15 -0800)]
Revert "Fix ilasm exec on paths with spaces (dotnet/coreclr#21819)" (dotnet/coreclr#21835)
This reverts commit dotnet/coreclr@
b188e9d354e37e512c5b95bec38f0f06efb4161e.
Commit migrated from https://github.com/dotnet/coreclr/commit/
c3a4a5b292d516ea214006ca1b00feb04e40ec1d
Jan Kotas [Sun, 6 Jan 2019 16:47:06 +0000 (08:47 -0800)]
Delete redundant S.R.InteropServices.PInvokeMap and S.R.InteropServices.PInvokeMarshal (dotnet/coreclr#21831)
Commit migrated from https://github.com/dotnet/coreclr/commit/
fcf2805fd887857ea727b7dd2658848427daaf9c
Ben Adams [Sun, 6 Jan 2019 04:25:02 +0000 (05:25 +0100)]
Remove redundant casts in TypeBuilder.CreateTypeNoLock (dotnet/coreclr#21824)
Commit migrated from https://github.com/dotnet/coreclr/commit/
c239af7f3cfe1a62137a1c24a4228a69dd2df654
Ben Adams [Sun, 6 Jan 2019 04:24:35 +0000 (05:24 +0100)]
Maintain left.Equals(right) order for equality for compat (dotnet/coreclr#21829)
Commit migrated from https://github.com/dotnet/coreclr/commit/
dda6df6ceaf0785c7bfd52fce3084b7f157c9588
dotnet-maestro-bot [Sun, 6 Jan 2019 02:04:27 +0000 (18:04 -0800)]
Update BuildTools, CoreClr, CoreFx, PgoData to preview1-03603-01, preview-27305-02, preview.19055.1, master-
20190105-0042, respectively (dotnet/coreclr#21749)
Commit migrated from https://github.com/dotnet/coreclr/commit/
da2fe0efcb1f022087108abb9c6000561aee8751
Ben Adams [Sun, 6 Jan 2019 01:49:58 +0000 (02:49 +0100)]
(Cdotnet/coreclr#7) Use pattern matching `is` rather than `as` with null check (dotnet/coreclr#21828)
* Use pattern matching `is` rather than `as` with null check
Commit migrated from https://github.com/dotnet/coreclr/commit/
d0cdf8813ef099deec3b6940e34f20d1bba054b8
Andy Ayers [Sun, 6 Jan 2019 01:28:24 +0000 (17:28 -0800)]
inline keyword cleanup
Commit migrated from https://github.com/dotnet/coreclr/commit/
a24b7a75d2f0b262564c10d69d0db27e3062c61a
Swaroop Sridhar [Sun, 6 Jan 2019 00:40:59 +0000 (16:40 -0800)]
Move Native Library APIs to NativeLibrary class (dotnet/coreclr#21821)
Move APIs that manipulate native libraries from
System.Runtime.InteropServices.Marshal class to the new
System.Runtime.InteropServices.NativeLibrary class.
In API review: dotnet/coreclr#32015,
The LoadLibrary APIs were originally Approved to live in
System.Runtime.InteropServices.Marshal class.
However, recently the decision was changed such that the APIs are
in a new NativeLibrary class.
Commit migrated from https://github.com/dotnet/coreclr/commit/
110835b1b818b333f27ab76db3f223a03027698a
Ben Adams [Sun, 6 Jan 2019 00:34:25 +0000 (01:34 +0100)]
Remove redundant unsafe contexts (dotnet/coreclr#21826)
Commit migrated from https://github.com/dotnet/coreclr/commit/
dcf9f36c21022b8fce374559ec5fea8d11a0852b
Viktor Hofer [Sat, 5 Jan 2019 07:39:18 +0000 (08:39 +0100)]
Fix ilasm exec on paths with spaces (dotnet/coreclr#21819)
Commit migrated from https://github.com/dotnet/coreclr/commit/
b188e9d354e37e512c5b95bec38f0f06efb4161e
Andy Ayers [Sat, 5 Jan 2019 01:18:18 +0000 (17:18 -0800)]
JIT: encapsulate general checks for optimization
Add methods that answer the general question of whether or not
the jit is optimizing the code it produces.
Use this to replace composite checks for minopts and debug
codegen (the two modes where the jit is not optimizing).
Commit migrated from https://github.com/dotnet/coreclr/commit/
4c68562cbd2f7a33bad60705db9b11e3121d40c2
Matt Galbraith [Fri, 4 Jan 2019 23:38:40 +0000 (15:38 -0800)]
Fix misspelling (dotnet/coreclr#21640)
Commit migrated from https://github.com/dotnet/coreclr/commit/
83bd6ca494971c399b3fbebee4623d9bf294731d
Filip Navara [Fri, 4 Jan 2019 23:31:36 +0000 (00:31 +0100)]
Remove stack marks from GetSatelliteAssembly. (dotnet/coreclr#21812)
Commit migrated from https://github.com/dotnet/coreclr/commit/
6e986f5ed76701109f83d50df1da53ddb23624ab
Carol Eidt [Fri, 4 Jan 2019 22:32:34 +0000 (14:32 -0800)]
[x86] Make copies of odd-size structs
PR dotnet/coreclr#21304 inadvertently disabled this code for x86.
This led to AV failures on desktop, but the same code silently loads
the larger size on coreclr without AV'ing.
Add an assert that we don't see this kind of node in x86 codegen.
Commit migrated from https://github.com/dotnet/coreclr/commit/
1ac4b90ffbb741da2d2166cf880415aab6028ec1
Jan Kotas [Fri, 4 Jan 2019 22:55:56 +0000 (14:55 -0800)]
Delete unused fFullReset argument (dotnet/coreclr#21814)
Commit migrated from https://github.com/dotnet/coreclr/commit/
2301baeda250ecbc557430dca7ea70afdc968d52
Filip Navara [Fri, 4 Jan 2019 22:54:06 +0000 (23:54 +0100)]
Avoid passing stack crawl mark unnecessarily deep in the call stack. (dotnet/coreclr#21783)
* Avoid passing stack crawl mark unnecessarily deep in the call stack.
* Move stack crawl from TypeName::GetTypeManaged to RuntimeTypeHandle::GetTypeByName.
Commit migrated from https://github.com/dotnet/coreclr/commit/
2ee2cb3a35fe1fa8d2d3b54c6839368ab8c89b73
Andrew Au [Fri, 4 Jan 2019 22:15:55 +0000 (14:15 -0800)]
If the debugger is stopped on a garbage collection event, resuming the threads during detach should simply be setting the event (dotnet/coreclr#21764)
Commit migrated from https://github.com/dotnet/coreclr/commit/
509419356160fc419a6bbf1b70f5efb8e1dc4d10
Bruce Forstall [Fri, 4 Jan 2019 22:14:47 +0000 (14:14 -0800)]
Merge pull request dotnet/coreclr#21806 from BruceForstall/CheckTestEnvCall
Check result of call to TestEnv script
Commit migrated from https://github.com/dotnet/coreclr/commit/
0234d6bcfe3c7cf98ba6dbd9d23cdbdcdd0d4a04
Ben Adams [Fri, 4 Jan 2019 19:38:22 +0000 (20:38 +0100)]
Support faster null checks (dotnet/coreclr#21765)
Commit migrated from https://github.com/dotnet/coreclr/commit/
4e82a5801bd804bff0bf6294d7135bbb63df92f6
Andy Ayers [Fri, 4 Jan 2019 19:05:43 +0000 (11:05 -0800)]
JIT: don't optimize struct copies for call args in debug or minopts (dotnet/coreclr#21792)
The jit will opportunistically optimize away copies for some struct call
arguments, if that argument is a "last use" for the struct (and some other
conditions apply).
In cases like dotnet/coreclr#21544 this leads to confusing debug experiences as inputs
to a call appear to be modified by the call.
Also we really should not be optimizing the code this way in debug or in
minopts codegen modes. So, block this optimization for debug and minopts.
Closes dotnet/coreclr#21544.
Commit migrated from https://github.com/dotnet/coreclr/commit/
df4a1854aa42c1e97874b00fe49339e216e30af9
Bruce Forstall [Fri, 4 Jan 2019 19:03:25 +0000 (11:03 -0800)]
Fix Windows arm32/arm64 testing (dotnet/coreclr#21809)
* Fix Windows arm32/arm64 testing
After the conversion to runtest.py, we were not getting any
JIT or GC stress mode testing:
1. The generated test env batch file didn't have a ".bat" extension,
so Windows wouldn't execute it.
2. The Python generated temp file was locked, so couldn't be read.
Added more logging.
Commit migrated from https://github.com/dotnet/coreclr/commit/
f0c969a072c05c0d602d16d68bc6e130fd17be88