Levi Broderick [Tue, 4 Feb 2020 18:43:20 +0000 (10:43 -0800)]
Remove unneeded type SecureStringHasher (#31707)
string.GetHashCode is already randomized on .NET Core, no need for a custom hashing routine
Egor Bogatov [Tue, 4 Feb 2020 17:52:00 +0000 (20:52 +0300)]
Merge pull request #2393 from EgorBo/fix-mono-sample
Add RunSample target to mono.proj
Egor Bogatov [Tue, 4 Feb 2020 16:52:57 +0000 (19:52 +0300)]
Optimize `box + isinst + unbox.any` as `nop` (#1817)
Extend box pattern match to cover `box + isinst + unbox.any` .
monojenkins [Tue, 4 Feb 2020 16:42:34 +0000 (11:42 -0500)]
Bump version to 6.13 (#31715)
Co-authored-by: Jo Shields <directhex@apebox.org>
Levi Broderick [Tue, 4 Feb 2020 16:14:45 +0000 (08:14 -0800)]
Libraries code should not mutate string instances (#31700)
Egor Bogatov [Tue, 4 Feb 2020 15:06:20 +0000 (18:06 +0300)]
Update src/mono/mono.proj
Co-Authored-By: Alexander Köplinger <alex.koeplinger@outlook.com>
Egor Bogatov [Tue, 4 Feb 2020 15:06:10 +0000 (18:06 +0300)]
Update src/mono/mono.proj
Co-Authored-By: Alexander Köplinger <alex.koeplinger@outlook.com>
Jan Vorlicek [Tue, 4 Feb 2020 15:03:47 +0000 (16:03 +0100)]
Remove AppDomain usage from stack walk and related places (#31708)
This is yet another cleanup removal of the AppDomain.
EgorBo [Tue, 4 Feb 2020 14:59:03 +0000 (17:59 +0300)]
Address feedback
monojenkins [Tue, 4 Feb 2020 14:40:20 +0000 (09:40 -0500)]
[interp] Remove goto for code_type unknown | interp | compiled. (#31667)
[interp] Remove goto for code_type unknown | interp | compiled.
The goto kinda implies a loop, but it is really just handling one case
before the other, but the source misorders the checks, perhaps for perf,
which maybe, can be done equivalently with G_UNLIKELY, and also remove
some possible extra memory reads.
Co-authored-by: Jay Krell <jay.krell@cornell.edu>
Anton Firszov [Tue, 4 Feb 2020 13:18:19 +0000 (14:18 +0100)]
Implement Socket.DuplicateAndClose() for Windows (#1858)
* reimplement socket duplication, fix #1760
* additional cleanup
* ungroup PNSE tests, no RemoteExecutor timeout
* address review findings
* fix path for Interop.WSADuplicateSocket.cs
* remove swallowing in Socket(SocketInformation)
* review suggestions
* make sure duplicate socket is not inheritable
* remove debug code leftover
* harden SocketPal.CreateSocket()
* blittable WSAPROTOCOL_INFOW
* additional naming fixes,
default System.Net.Sockets.sln configurations to Windows_NT again
* disposal on errors, improve comments, more tests
* nits
* handle GetSockName() error
Marek Safar [Tue, 4 Feb 2020 13:01:52 +0000 (14:01 +0100)]
Update ILLinkTasksVersion dependency (#2334)
EgorBo [Tue, 4 Feb 2020 12:07:07 +0000 (15:07 +0300)]
Clean up
monojenkins [Tue, 4 Feb 2020 12:02:42 +0000 (07:02 -0500)]
When the interpreter does recurse, use a different function (#31635)
for each call site, so you can tell from a WebAssembly stack
which case it is. i.e. with function names but no line numbers.
With this, we can see that call_varargs contributes to the problem
here: https://github.com/mono/mono/issues/18646
Also, do not inline the interpreter, it probably/hopefully never was.
Co-authored-by: Jay Krell <jay.krell@cornell.edu>
EgorBo [Tue, 4 Feb 2020 11:59:44 +0000 (14:59 +0300)]
Don't require Checked config for coreclr tests
Zoltan Varga [Tue, 4 Feb 2020 08:51:32 +0000 (03:51 -0500)]
[runtime] Fix the --enable-minimal=aot build. (#31684)
Fixes https://github.com/mono/mono/issues/18675.
Levi Broderick [Tue, 4 Feb 2020 08:22:44 +0000 (00:22 -0800)]
Remove remaining libraries references to string.Copy (#31706)
Jan Kotas [Tue, 4 Feb 2020 08:08:50 +0000 (00:08 -0800)]
Revert "Revert "Optimize typeof(T1).IsAssignableFrom(typeof(T2))" (#31643)" (#31705)
This reverts commit
729276d30fbafdc28cd9813f74c0bb49702d775c.
Andy Ayers [Tue, 4 Feb 2020 07:45:48 +0000 (23:45 -0800)]
Merge pull request #31699 from AndyAyersMS/Fix31665
JIT: remove assert from postorder return value optimizations
Next Turn [Tue, 4 Feb 2020 07:24:17 +0000 (15:24 +0800)]
Remove unused locals in System.ServiceProcess.ServiceController (#31704)
* Remove unused locals in System.ServiceProcess.ServiceController
* Inline status variable
* Apply suggestions from code review
Co-Authored-By: Stephen Toub <stoub@microsoft.com>
Co-authored-by: Stephen Toub <stoub@microsoft.com>
monojenkins [Tue, 4 Feb 2020 06:26:50 +0000 (01:26 -0500)]
[interp]Fix the type of clause_args. (#31651)
Co-authored-by: Jay Krell <jay.krell@cornell.edu>
Andy Ayers [Tue, 4 Feb 2020 05:30:56 +0000 (21:30 -0800)]
Fix logic in compareTypesForCast (#31681)
We weren't careful enough with `__Canon` in some cases, which lead to unsafely
returning `MustNot` when the cast outcome was not determined at jit time.
Add an extra check, update comments, and add some test cases.
Addresses the failures seen in #1195 (which was reverted).
Mike McLaughlin [Tue, 4 Feb 2020 05:04:27 +0000 (21:04 -0800)]
Fix issue 1871 exception test failing (#31696)
Don't adjust the offset by 1 instead of the architecture instruction size (STACKWALK_CONTROLPC_ADJUST_OFFSET).
Kevin Jones [Tue, 4 Feb 2020 04:03:21 +0000 (23:03 -0500)]
Allow null IV for Create{Encryptor,Decryptor}.
The IV is permitted to be null for most ciphers when in ECB
mode.
Levi Broderick [Tue, 4 Feb 2020 03:19:14 +0000 (19:19 -0800)]
Add missing nullability annotation to string ctor (#31702)
Yaroslav Yamshchikov [Tue, 4 Feb 2020 02:46:54 +0000 (05:46 +0300)]
set THUMB_CODE bit (#21180)
Zoltan Varga [Tue, 4 Feb 2020 02:35:04 +0000 (21:35 -0500)]
[aot] Avoid inflating gparams with byreflike types during generic sharing. (#31670)
Fixes https://github.com/mono/mono/issues/18676.
Egor Chesakov [Tue, 4 Feb 2020 01:47:14 +0000 (17:47 -0800)]
[Arm64] Update execution characteristics for crc32b, crc32h, facge, facgt (#8500)
* Add execution characteristics for Crc32 instructions in emitarm64.cpp
* Update execution characteristics for DV_3B instructions in emitarm64.cpp
* Add execution characteristics for DV_3D instructions in emitarm64.cpp
* Update comment in emitIns_R_R_R in emitarm64.cpp
Fadi Hanna [Tue, 4 Feb 2020 01:09:30 +0000 (20:09 -0500)]
Save stack arguments size in InlinedCallFrame.m_Datum on x86 to handle callee's popping of arguments (#26834)
* Save stack arguments size in InlinedCallFrame.m_Datum on x86 to handle callee's popping of arguments
* Move stack arguments sizes logic to Windows-only
Santiago Fernandez Madero [Tue, 4 Feb 2020 00:44:33 +0000 (16:44 -0800)]
Fix package testing run name prefix (#31690)
Andy Ayers [Tue, 4 Feb 2020 00:34:34 +0000 (16:34 -0800)]
JIT: remove assert from postorder return value optimizations
We were trying to assert that we weren't losing side effects when folding
return value trees. But this seems to be more trouble than it is worth as
the set of side effects can also change.
Also re-enable the disabled tests, and make one of them Pri0.
Fixes #31665.
Tomáš Rylek [Tue, 4 Feb 2020 00:19:59 +0000 (01:19 +0100)]
Disable two JIT tests failing with known issue tracked under #31665 (#31674)
* Disable two JIT tests failing with known issue tracked under #31665
* Address Andy's PR feedback - make the exclusion clauses global
Jan Kotas [Tue, 4 Feb 2020 00:14:05 +0000 (16:14 -0800)]
Delete unnecessary netstandard builds (#31641)
* Delete unnecessary netstandard builds and NuGet packages of inbox components
- Delete netstandard builds and NuGet packages for System.Reflection.Emit.*
- Delete netstandard builds and NuGet packages for System.Reflection.TypeExtensions
- Delete netstandard build for System.Buffers\ref
- Delete clrcompression UAP build support
Contributes to #2138
* Remove packages from the baseline
Drew Scoggins [Tue, 4 Feb 2020 00:08:52 +0000 (16:08 -0800)]
Merge pull request #31694 from DrewScoggins/anscoggi/FixArch
* Update Arch and add RunKind variable
* Fix up Linux script as well
Drew Scoggins [Mon, 3 Feb 2020 23:58:12 +0000 (15:58 -0800)]
Fix up Linux script as well
Eric Erhardt [Mon, 3 Feb 2020 23:48:01 +0000 (17:48 -0600)]
Add Single and Double overloads to BinaryPrimitives (#6864)
* Add Single and Double overloads to BinaryPrimitives
Fix #2365
Eugene Rozenfeld [Mon, 3 Feb 2020 23:40:18 +0000 (15:40 -0800)]
Remove popped trees more aggressively. (#31677)
When processing CEE_POP the importer sometimes created trees
like
ASG(tmp1, expr)
followed by
COMMA(ADDR(tmp1), NOP))
and that was causing some CQ issues.
LocalAddressVisitor was then marking tmp1 as address-exposed
and we never get rid of the dead ASG(tmp1, expr). What's worse, we
then were adding a zero-initialization for tmp1 in the prolog.
The fix here is to create a NOP instead of a COMMA is there are
no side-effects in the first operand of the COMMA.
This addresses the first example in #2325.
Drew Scoggins [Mon, 3 Feb 2020 23:39:42 +0000 (15:39 -0800)]
Update Arch and add RunKind variable
Drew Scoggins [Mon, 3 Feb 2020 23:38:14 +0000 (15:38 -0800)]
Merge branch 'master' of https://github.com/dotnet/runtime
Tomáš Rylek [Mon, 3 Feb 2020 23:19:21 +0000 (00:19 +0100)]
Initial Crossgen2 fixes for composite R2R support (#31652)
With initial local changes to enable composite R2R I have finally
been able to compile a CoreCLR unit test in this mode. It doesn't
yet work at runtime, these changes just fix initial compiler issues
I hit during the build:
1) Delegate constructor signature was missing some comparison logic
that ended up asserting in the node comparer in the composite
build.
2) I have removed two seeminly superfluous parameters to
CreateMethodEntrypointNodeHelper.
3) I have removed an assertion related to multi-file RVA fields
that I believe to be no longer relevant after the refactorings
to copy the RVA fields around properly.
Thanks
Tomas
Santiago Fernandez Madero [Mon, 3 Feb 2020 21:53:39 +0000 (13:53 -0800)]
Link System.Globalization.Native into coreclr (#6928)
* Link System.Globalization.Native into coreclr
* Add more paths to coreclr subset filters
* Fix linux build
* PR Feedback
* PR Feedback 2
* Fix build (pass -DREPO_ROOT_DIR only on coreclr atm), System.IO.Ports.Native needs to be built first
* Remove version header file from static libs
* Remove CORECLR_BUILD variable definition
Anton Firszov [Mon, 3 Feb 2020 21:08:59 +0000 (22:08 +0100)]
handle GetSockName() error
monojenkins [Mon, 3 Feb 2020 21:05:51 +0000 (16:05 -0500)]
[mini] Add method-triggered printing for runtime stats (#2355)
This work extends the `--stats` command to take in an optional method name. When a matching method is compiled or transformed, the stats will be printed out at that point in addition to after program execution. This is useful for products looking to measure startup time and activity, as well as for ourselves to track any loader performance regressions.
Once this lands, we should see about running it on a cadence, ideally on both desktop and Android. Additionally, more work needs to be done to the counters to expose them in a way more friendly to consumption on Android/wasm (including a callback). We should also update the website to document this additional behavior.
Co-authored-by: Ryan Lucia <ryan@luciaonline.net>
Co-authored-by: Kyle Markland <v-kymark@microsoft.com>
Co-authored-by: Rene Garcia <v-regarc@microsoft.com>
Steve MacLean [Mon, 3 Feb 2020 20:42:16 +0000 (15:42 -0500)]
Libraries native renames (#31668)
Match coreclr & cross compilation naming conventions
Rename BIT64 -> TARGET_64BIT in src/libraries/Native
Rename BIT32 -> TARGET_32BIT in src/libraries/Native
Rename FEATURE_PAL -> TARGET_UNIX in src/libraries/Native
Rename PLATFORM_UNIX -> TARGET_UNIX in src/libraries/Native
Rename PLATFORM_WINDOWS -> TARGET_WINDOWS in src/libraries/Native
Rename PLATFORM_OSX -> TARGET_OSX in src/libraries/Native
Rename _ARM_ -> TARGET_ARM in src/libraries/Native
Rename _ARM64_ -> TARGET_ARM64 in src/libraries/Native
Rename _AMD64_ -> TARGET_AMD64 in src/libraries/Native
Rename _X86_ -> TARGET_X86 in src/libraries/Native
Rename ARM -> TARGET_ARM in src/libraries/Native
Rename ARM64 -> TARGET_ARM64 in src/libraries/Native
Rename AMD64 -> TARGET_AMD64 in src/libraries/Native
Rename X86_ -> TARGET_X86 in src/libraries/Native
Anton Firszov [Mon, 3 Feb 2020 19:51:04 +0000 (20:51 +0100)]
nits
Stephen Toub [Mon, 3 Feb 2020 19:19:38 +0000 (14:19 -0500)]
Catch ObjectDisposedException in SmtpClient.Abort (#22867)
* Catch ObjectDisposedException in SmtpClient.Abort
* Address PR feedback
* Apply suggestions from code review
Co-Authored-By: Cory Nelson <phrosty@gmail.com>
Co-authored-by: Cory Nelson <phrosty@gmail.com>
EgorBo [Mon, 3 Feb 2020 18:24:47 +0000 (21:24 +0300)]
Clean up
Jan Vorlicek [Mon, 3 Feb 2020 18:16:19 +0000 (19:16 +0100)]
Fix x86 InlinedCallFrame popping during EH (#2215)
* Fix x86 InlinedCallFrame popping during EH
There is a bug in InlinedCallFrame popping on x86 during EH with R2R
compiled code. The code is popping this frame if it is at the top of
the explicit frames stack before executing catch handler. But it
is missing a check to see if the frame was actually in the unwound part
of the stack. So in some corner cases, it can end up popping a frame
that belongs to an active pinvoke somewhere up the call chain.
The fix is to do the popping only if the InlinedCallFrame is located at
an address smaller than the ESP of the caller of the method that
contains the exception handler.
* Fix typos in a comment close to my change
* Remove workaround for the original issue
buyaa-n [Mon, 3 Feb 2020 18:11:04 +0000 (10:11 -0800)]
Annotate System.ComponentModel.Composition for nullable (#1842)
* Annotating System.ComponentModel.Composition for nullable
EgorBo [Mon, 3 Feb 2020 18:07:46 +0000 (21:07 +0300)]
Clean up
Andrew Au [Mon, 3 Feb 2020 18:05:51 +0000 (10:05 -0800)]
Make fixup decoding lazy (#31646)
EgorBo [Mon, 3 Feb 2020 15:57:18 +0000 (18:57 +0300)]
Update mono.proj
EgorBo [Mon, 3 Feb 2020 15:43:54 +0000 (18:43 +0300)]
Fix RunCoreClrTest on *nix
Eirik Tsarpalis [Mon, 3 Feb 2020 15:17:28 +0000 (15:17 +0000)]
Nullable annotate System.Security.Principal.Windows (#2347)
* annotate System.Security.Principal.Windows
* enable nullable for ref assembly
* Update src/libraries/System.Security.Principal.Windows/src/System/Security/Principal/SID.cs
Co-Authored-By: Stephen Toub <stoub@microsoft.com>
* Update src/libraries/System.Security.Principal.Windows/src/System/Security/Principal/SID.cs
Co-Authored-By: Stephen Toub <stoub@microsoft.com>
* address feedback
* address feedback
* remove dead code
* remove ComVisibleAttribute
* Make domainSid optional in Sid constructor
* add omitted nullable annotation
* address feedback
* work around annotation issue
* try fixing build
* Update src/libraries/System.Security.Principal.Windows/src/System/Security/Principal/WindowsIdentity.cs
Co-Authored-By: Stephen Toub <stoub@microsoft.com>
* Update src/libraries/System.Security.Principal.Windows/src/System/Security/Principal/WindowsIdentity.cs
Co-Authored-By: Stephen Toub <stoub@microsoft.com>
* address feedback
Co-authored-by: Stephen Toub <stoub@microsoft.com>
Marek Safar [Mon, 3 Feb 2020 14:40:45 +0000 (15:40 +0100)]
Add missing method dependency to Mono SPC (#2338)
* Add missing method dependency to Mono SPC
Fixes #2227
* Reenable ILLinkTrimAssembly
* Fix entries in linker xml that used wrong names
* Add more entries to linker xml from CoreCLR
Co-authored-by: Alexander Köplinger <alex.koeplinger@outlook.com>
Anton Firszov [Mon, 3 Feb 2020 14:34:10 +0000 (15:34 +0100)]
disposal on errors, improve comments, more tests
EgorBo [Mon, 3 Feb 2020 14:27:49 +0000 (17:27 +0300)]
Add run-sample-coreclr rule
EgorBo [Mon, 3 Feb 2020 13:53:26 +0000 (16:53 +0300)]
Improve RunCoreClrTests target
monojenkins [Mon, 3 Feb 2020 13:46:10 +0000 (08:46 -0500)]
[build] Check for Python 3 in configure.ac (#2372)
* [build] Check for Python 3 in configure.ac
I fear this causing packaging problems, but as-is we require Python 3 for most of our Python files but don't actually check for that in configure. We should be consistent about this. Some projects (notably wasm) also use the Python version detected here, so bumping this will also bump the version used in those cases (a good thing, since there are some known bugs when using the scripts with Python 2).
* Update docker images to reflect py3 inclusion
* Update centos-7 image
Co-authored-by: Ryan Lucia <ryan@luciaonline.net>
Co-authored-by: Alexander Köplinger <alex.koeplinger@outlook.com>
EgorBo [Mon, 3 Feb 2020 12:38:45 +0000 (15:38 +0300)]
Address feedback
EgorBo [Mon, 3 Feb 2020 12:36:33 +0000 (15:36 +0300)]
fix build
EgorBo [Mon, 3 Feb 2020 12:30:31 +0000 (15:30 +0300)]
Address feedback
Vlad Brezae [Mon, 3 Feb 2020 11:08:05 +0000 (03:08 -0800)]
[interp] Fix enum constrained calls on netcore (#31618)
We were failing to dereference a managed pointer to the enum, due to incorrect checks, when doing a constrained call.
Fixes https://github.com/mono/mono/issues/18530
EgorBo [Mon, 3 Feb 2020 11:04:14 +0000 (14:04 +0300)]
Add RunCoreClrTests target
monojenkins [Mon, 3 Feb 2020 10:17:03 +0000 (05:17 -0500)]
Fix ppc64 build by fixing -mminimal-toc more correctly. (#31636)
The original fix back at mono/mono#18554 did not work quite right, which was missed for lack of CI.
Reworked this check to instead test for `-mminimal-toc` on all powerpc hosts, and to only do the ELF version check on FreeBSD.
Fixes mono/mono#18554 mono/mono#18578 current CI build failures on AIX
Co-authored-by: Phil Jaenke <prj@rootwyrm.com>
EgorBo [Mon, 3 Feb 2020 07:48:06 +0000 (10:48 +0300)]
Add RunCoreClrTest target
Jan Kotas [Mon, 3 Feb 2020 06:12:13 +0000 (22:12 -0800)]
Revert "Optimize typeof(T1).IsAssignableFrom(typeof(T2))" (#31643)
Elinor Fung [Mon, 3 Feb 2020 05:56:51 +0000 (21:56 -0800)]
Split binder tracing tests into separate test projects (#3855)
* Split binder tracing tests into separate test projects
* Stop using specific time when waiting for events
* Don't run tests in a separate process under GC stress
Ben Adams [Mon, 3 Feb 2020 04:18:06 +0000 (04:18 +0000)]
Skip EqualityComparer<TKey>.Default creation in Dictionary .ctor (#31629)
* Skip EqualityComparer<TKey>.Default creation in Ditctionary .ctor
* Update src/libraries/System.Private.CoreLib/src/System/Collections/Generic/Dictionary.cs
Co-Authored-By: Stephen Toub <stoub@microsoft.com>
EgorBo [Sun, 2 Feb 2020 23:55:18 +0000 (02:55 +0300)]
Fix build
EgorBo [Sun, 2 Feb 2020 23:36:37 +0000 (02:36 +0300)]
Fix build
EgorBo [Sun, 2 Feb 2020 23:21:48 +0000 (02:21 +0300)]
Merge branch 'master' of github.com:dotnet/runtime into fix-mono-sample
EgorBo [Sun, 2 Feb 2020 23:21:34 +0000 (02:21 +0300)]
Clean up
EgorBo [Sun, 2 Feb 2020 22:34:10 +0000 (01:34 +0300)]
Move more things from Makefile to mono.proj
Yoh Deadfall [Sun, 2 Feb 2020 19:56:18 +0000 (22:56 +0300)]
Eliminated info creation for non-public properties (#2278)
Andy Ayers [Sun, 2 Feb 2020 18:52:45 +0000 (10:52 -0800)]
Optimize typeof(T1).IsAssignableFrom(typeof(T2)) (#1195)
* Optimize Type.IsAssignableFrom
* Add TypeIntrinsics.IsAssignableFrom to TypeIntrinsics.csproj
* Formatting
* Add License header
* Remove assert
* fix "mustexpand assert"
* Add tests for Arrays of vt
EgorBo [Sun, 2 Feb 2020 18:35:40 +0000 (21:35 +0300)]
Merge branch 'master' of github.com:dotnet/runtime into fix-mono-sample
monojenkins [Sun, 2 Feb 2020 16:29:45 +0000 (11:29 -0500)]
Adjust mono_class_init_internal to no longer bypass cleanup when a fa… (#21964)
…ilure is detected.
This fixes: https://issuetracker.unity3d.com/issues/unity-physics-collisions-do-not-work-and-errors-are-thrown-when-entering-play-mode
<!--
Thank you for your Pull Request!
If you are new to contributing to Mono, please try to do your best at conforming to our coding guidelines http://www.mono-project.com/community/contributing/coding-guidelines/ but don't worry if you get something wrong. One of the project members will help you to get things landed.
Does your pull request fix any of the existing issues? Please use the following format: Fixes #issue-number
-->
Co-authored-by: Alex Thibodeau <alexthibodeau@unity3d.com>
Carol Eidt [Sun, 2 Feb 2020 14:28:43 +0000 (06:28 -0800)]
Allow type mismatch for struct single field (#6102)
On Arm64, we can have an HVA or HFA with a single scalar or SIMD field. When it is the destination of an assigment to a call result, the assignment may be re-typed to the non-struct type. It may be ideal in the long run to defer this re-typing until Lowering, but allow this case for now.
Fix #2182
Loosen assert
monojenkins [Sun, 2 Feb 2020 06:18:23 +0000 (01:18 -0500)]
[llvm] Enable jump threading with LLVM JIT. (#25687)
See https://github.com/mono/mono/issues/16243. This will allow elision of redundant bounds checks. This pass is already used during AOT (as part of opt -O2).
Here's `FirstOrDefault` (from mono/mono#16243) with this change:
```
0000000000000000 <gram_FirstOrDefault__int___>:
<BB>:1
0: 31 c0 xor %eax,%eax
2: 48 85 ff test %rdi,%rdi
5: 74 09 je 10 <gram_FirstOrDefault__int___+0x10>
7: 83 7f 18 01 cmpl $0x1,0x18(%rdi)
b: 7e 03 jle 10 <gram_FirstOrDefault__int___+0x10>
d: 8b 47 24 mov 0x24(%rdi),%eax
10: c3 retq
***
```
Co-authored-by: imhameed <imhameed@microsoft.com>
Ben Adams [Sun, 2 Feb 2020 06:01:51 +0000 (06:01 +0000)]
Highlight directory (#31625)
Andy Ayers [Sat, 1 Feb 2020 19:41:47 +0000 (11:41 -0800)]
JIT: fold trees after inline return expression updates (#1751)
Aggressively fold as we substitute inline return value trees in for the return
value placeholders. Notice when this folding leads to branch simplification,
and make the associated flow graph update.
The recently added early flow opt pass will then transitively remove any
newly unreachable code.
Resolves dotnet/coreclr#27395.
EgorBo [Sat, 1 Feb 2020 19:27:27 +0000 (22:27 +0300)]
Add tests for Arrays of vt
EgorBo [Sat, 1 Feb 2020 19:13:47 +0000 (22:13 +0300)]
Merge branch 'master' of github.com:dotnet/runtime into type-isassignedfrom
Jan Kotas [Sat, 1 Feb 2020 18:38:50 +0000 (10:38 -0800)]
Revert "Improve call counting mechanism (#1457)" (#30105)
* Revert "Revert "Disable test based on #129 (#130)" (#2310)"
This reverts commit
427cd918a027aed167b1c4bedb52c7ca50731aba.
* Revert "Fail FuncEval if slot backpatching lock is held by any thread (#2380)"
This reverts commit
fc06054a774e28a5a47bbe862adcf03251abb43c.
* Revert "Improve call counting mechanism (#1457)"
This reverts commit
3a457cb4b552d9b32fbf844389ad2a08bcb2a7a6.
EgorBo [Sat, 1 Feb 2020 11:39:08 +0000 (14:39 +0300)]
Merge branch 'master' of github.com:dotnet/runtime into type-isassignedfrom
# Conflicts:
# src/coreclr/tests/src/JIT/Intrinsics/TypeIntrinsics.cs
# src/libraries/System.Private.CoreLib/src/System/Type.Helpers.cs
Fadi Hanna [Sat, 1 Feb 2020 05:33:38 +0000 (00:33 -0500)]
Emit DebugDirectory section and all DebugDirectory entries (#2398)
* Emit DebugDirectory section and all DebugDirectory entries
- Add new RELOC type for raw data points
- Emit native DebugDirectory entry with proper MD5 hash of the output image
- Fix determinism issue: timestamp has to be copied from input IL image
Jan Kotas [Sat, 1 Feb 2020 03:17:23 +0000 (19:17 -0800)]
Cleanup NETCOREAPP ifdef usage in System.Runtime.Tests (#22224)
Fixes #21827
Jeremy Barton [Sat, 1 Feb 2020 01:47:45 +0000 (17:47 -0800)]
Disable macOS 10.15 from fullMatrix runs
This OS was just enabled a couple of days ago, and isn't testing so hot.
Turning it off until it can come back on in a passing state.
Carol Eidt [Sat, 1 Feb 2020 01:11:41 +0000 (17:11 -0800)]
Fix UpperVector save asserts (#2268)
Not all helper calls have standard kill sets.
Fix #2181
Steve MacLean [Sat, 1 Feb 2020 00:36:44 +0000 (19:36 -0500)]
Rename cross compilation related defines (#2256)
* Rename identifiers to be more consistent
This patch was a machine generated search and replace of
identifiers. The replacement was done in the order listed
for the path specified.
A regex was used to find the identifiers.
s/(^|[^A-CE-Za-z0-9_])${find}($|[^A-Za-z0-9_])
The 'D' character was specifically allowed a s a prefix
to catch add_definitions(-D${find}).
The patch also reverts all managed code changes after replacement.
_ARM_ -> HOST_ARM in src/coreclr
_ARM64_ -> HOST_ARM64 in src/coreclr
_AMD64_ -> HOST_AMD64 in src/coreclr
_X86_ -> HOST_X86 in src/coreclr
_HOST_UNIX_ -> HOST_UNIX in src/coreclr
_HOST_AMD64_ -> HOST_AMD64 in src/coreclr
_HOST_ARM64_ -> HOST_ARM64 in src/coreclr
_HOST_ARM_ -> HOST_ARM in src/coreclr
_HOST_X86_ -> HOST_X86 in src/coreclr
DBG_TARGET_AMD64 -> TARGET_AMD64 in src/coreclr
DBG_TARGET_ARM64 -> TARGET_ARM64 in src/coreclr
DBG_TARGET_ARM -> TARGET_ARM in src/coreclr
DBG_TARGET_X86 -> TARGET_X86 in src/coreclr
_TARGET_AMD64_ -> TARGET_AMD64 in src/coreclr
_TARGET_ARM_ -> TARGET_ARM in src/coreclr
_TARGET_ARM64_ -> TARGET_ARM64 in src/coreclr
_TARGET_X86_ -> TARGET_X86 in src/coreclr
_TARGET_ARMARCH_ -> TARGET_ARMARCH in src/coreclr
_TARGET_XARCH_ -> TARGET_XARCH in src/coreclr
_HOST_64BIT_ -> HOST_64BIT in src/coreclr
BIT64 -> HOST_64BIT in src/coreclr
_TARGET_64BIT_ -> TARGET_64BIT in src/coreclr
DBG_TARGET_64BIT -> TARGET_64BIT in src/coreclr
HOST_IS_WINDOWS_OS -> HOST_WINDOWS in src/coreclr
PLATFORM_UNIX -> HOST_UNIX in src/coreclr/*.cmake
PLATFORM_WINDOWS -> HOST_WINDOWS in src/coreclr/*.cmake
_TARGET_MAC64 -> TARGET_OSX in src/coreclr
FEATURE_PAL -> TARGET_UNIX in src/coreclr
_TARGET_UNIX_ -> TARGET_UNIX in src/coreclr
_TARGET_WINDOWS_ -> TARGET_WINDOWS in src/coreclr
PLATFORM_UNIX -> TARGET_UNIX in src/coreclr
PLATFORM_WINDOWS -> TARGET_WINDOWS in src/coreclr
* Miscellaneous manual fixes to fix compilation
Remove unused defines
Remove BIT32
Remove DBG_TARGET_AMD64_UNIX
Remove DBG_TARGET_ARM64_UNIX
Remove DBG_TARGET_ARM_UNIX
Remove DBG_TARGET_32BIT
Fixes for HOST_<arch> rename
Move TARGET_<Arch> and TARGET_<bit>
Move from clrdefinitions.cmake
to configurecompiler.cmake so it is used globally.
More jit.h
* Whitespace by clang-format
Yaroslav Yamshchikov [Fri, 31 Jan 2020 22:57:09 +0000 (01:57 +0300)]
crossgen2 ARM support misc (#21109)
Jared Parsons [Fri, 31 Jan 2020 22:11:05 +0000 (14:11 -0800)]
Fix handling of missing ConfigurationGroup property (#24077)
* Account for missing ConfigurationGroup
Our logic for setting the CoreCLR and Mono runtime configurations didn't
properly account for cases where only `$(Configuration)` was passed down
as a build property. It expects that both `$(Configuration)` and
`$(ConfigurationGroup)` are passed down as a pair.
This change guards against us accidentially setting the runtime
configuration to the current library definition of configuration which
is more like a target framework than Debug or Release.
Related to #23800
* Test for missing ConfigurationGroup
monojenkins [Fri, 31 Jan 2020 21:41:20 +0000 (16:41 -0500)]
Abort cmov optimization, when one of the out blocks is try block (#2373)
Fixes mono/mono#17733
Co-authored-by: Fan Yang <52458914+fanyang-mono@users.noreply.github.com>
David Mason [Fri, 31 Jan 2020 21:01:10 +0000 (13:01 -0800)]
Add profiler APIs for writing EventPipe events (#2173)
* Profiler APIs for writing events
* Code review feedback
* Change EVENTPIPE_EVENTID to EVENTPIPE_EVENT to avoid confusion with EventID
* have the runtime pack the arguments instead of the profiler
* Add more checks in asserts
David Wrighton [Fri, 31 Jan 2020 20:56:47 +0000 (12:56 -0800)]
New pgo format for crossgen2 (#2314)
* Adjust compilation model to support trace based profile guided optimization data in a new format
- Add parser for new format
- Adjust program startup and options parsing to make it simpler for the profiler guided logic to be aware of version bubbles
- Use CompilationModuleGroup and version bubble in parsing and handling of profile data
* Handle malformed and incorrect IBC data
Ivan Diaz Sanchez [Fri, 31 Jan 2020 20:30:05 +0000 (12:30 -0800)]
Referred GC Benchmarking Infra in the GC Performance testing docs (#5532)
Yaroslav Yamshchikov [Fri, 31 Jan 2020 19:49:01 +0000 (22:49 +0300)]
import thunks for ARM just from zapper (#21072)
buyaa-n [Fri, 31 Jan 2020 19:15:37 +0000 (11:15 -0800)]
Key should be non null (#5072)
Santiago Fernandez Madero [Fri, 31 Jan 2020 18:26:33 +0000 (10:26 -0800)]
Add runtime flavor to test run name for libraries outerloop runs (#12715)
* Add runtime flavor to test run name for libraries outerloop runs
* Bring Windows_x64 back