Egor Chesakov [Thu, 7 Feb 2019 17:58:32 +0000 (09:58 -0800)]
Merge pull request dotnet/coreclr#22435 from echesakovMSFT/TreatCLRTestExecutionArgumentsAsAnArrayInBash
Treat CLRTestExecutionArguments as an array in generated Bash scripts
Commit migrated from https://github.com/dotnet/coreclr/commit/
f340a5f9248bf90a9acb58231f8aebe0189eb6ef
Tanner Gooding [Thu, 7 Feb 2019 17:12:08 +0000 (09:12 -0800)]
Fixing Utf8Formatter.Float to support all the same format specifiers as the utf16 formatter. (dotnet/coreclr#22434)
* Fixing Utf8Formatter.Float to support all the same format specifiers as the utf16 formatter.
* Disabling some outdated CoreFX tests.
* Fixing TryFormatFloatingPoint to special-case format.IsDefault
Commit migrated from https://github.com/dotnet/coreclr/commit/
752c8f157c75e9530d2b0d6b0f52b05049849bd5
Michal Strehovský [Thu, 7 Feb 2019 16:48:09 +0000 (17:48 +0100)]
Fix delegate creation for default interface methods on structs (dotnet/coreclr#22427)
We only need to find an unboxing stub if we resolved the interface to a valuetype method. If we resolved to a default interface method implementation, unboxing is not necessary.
Commit migrated from https://github.com/dotnet/coreclr/commit/
ef48a432ae911b93cbdc384f9499190b010cbffa
Sinan Kaya [Thu, 7 Feb 2019 09:28:29 +0000 (04:28 -0500)]
Cleanup LLVM assumption (dotnet/coreclr#22456)
We want to support GNU compilation for CoreCLR. Luckily both LLVM
and GNU compilers define __GNUC__ and there are a lot of things
they can share.
Commit migrated from https://github.com/dotnet/coreclr/commit/
328f79f1d9c17dd1ac00901631cd90a41e788022
Stephen Toub [Thu, 7 Feb 2019 03:37:31 +0000 (22:37 -0500)]
Fix CoreLib to include PasteArguments.Unix.cs correctly (dotnet/coreclr#22453)
Commit migrated from https://github.com/dotnet/coreclr/commit/
8152fc3c8d42fd9e8b80872bef63a29baa64229e
Marek Safar [Thu, 7 Feb 2019 03:36:45 +0000 (04:36 +0100)]
Move Array to shared partition (dotnet/coreclr#22321)
Commit migrated from https://github.com/dotnet/coreclr/commit/
afb3bc8de4b7959558cbf3ae94c7d7dbc8531749
Marek Safar [Thu, 7 Feb 2019 03:34:48 +0000 (04:34 +0100)]
Implement ManifestBasedResourceGroveler::GetNeutralResourcesLanguageAttribute (dotnet/coreclr#22372)
* Implement ManifestBasedResourceGroveler::GetNeutralResourcesLanguageAttribute in shared managed code
* Remove native ::GetNeutralResourcesLanguage
Commit migrated from https://github.com/dotnet/coreclr/commit/
ca432e07ad9b187931da13fd63f4f5d2fd513d5e
Tarek Mahmoud Sayed [Wed, 6 Feb 2019 23:15:46 +0000 (15:15 -0800)]
Index and Range updates (dotnet/coreclr#22331)
* Index and Range updates
* Address @mikedn feedback
* Address Feedback
* more feedback
* Use Deconstruct in Range.GetOffsetAndLength
* Rename GetArrayRange to GetSubArray
* Temporary disable the old Corefx Range tests
* Return back the TimeSpan test disabling
* Fix Range jit test
* Exclude the jit test
* revert the changes in the jit Range test
* Address Suggested Feedback
Commit migrated from https://github.com/dotnet/coreclr/commit/
fe1185343cd02559824fcbfaf69967166978e8e5
Bruce Forstall [Wed, 6 Feb 2019 21:51:30 +0000 (13:51 -0800)]
Merge pull request dotnet/coreclr#22450 from BruceForstall/DisableFlakySystemNetTests
Disable flaky Linux/arm64 corefx System.Net.Sockets.Tests
Commit migrated from https://github.com/dotnet/coreclr/commit/
17f4677cd45e2feed716d2b63046fa24a66bf662
Jeremy Koritzinsky [Wed, 6 Feb 2019 21:05:28 +0000 (13:05 -0800)]
Throw an exception when passing strings by-value as out parameters. (dotnet/coreclr#21513)
* Throw an exception when passing strings by-value as out parameters.
* Fix encoding
* Don't use override in this PR.
* Clean up Marshal_In
Marshal_In was copied back into existence from Marshal_InOut. Clean it up a bit.
* Remove extraneous whitespace.
* Fix failing test.
* Remove out attribute in COM string tests.
* Add back attribute and check for exception thow in COM tests.
* Add block comment to explain the implementation of Reverse_LPWStr_OutAttr in the NETServer.
* Only throw in a CLR->Native marshalling situation.
* Fix asserts from changed code-paths used in ILWSTRMarshaler.
* Add comment and explicitly load in a null value (instead of leaving it uninitialized).
* Apply suggestions from code review
Co-Authored-By: jkoritzinsky <jkoritzinsky@gmail.com>
Co-authored-by: Jan Vorlicek <janvorli@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
2f88f32ffb6752c89e6751b4747f1b9cd971304d
Jarret Shook [Wed, 6 Feb 2019 21:00:54 +0000 (13:00 -0800)]
Allow lcl_var structs to be widened to primitive types on unix amd64. (dotnet/coreclr#22437)
* Allow lcl_var structs to be widened to primitive types on unix amd64. The already happens on armarch
* Apply format patch
Commit migrated from https://github.com/dotnet/coreclr/commit/
d5e903e7f8e881ef9fa8840df863422df4a7c62e
Bruce Forstall [Wed, 6 Feb 2019 20:33:43 +0000 (12:33 -0800)]
Disable flaky Linux/arm64 corefx System.Net.Sockets.Tests
Tracking: https://github.com/dotnet/coreclr/issues/21576
In general, any System.Net test that exhibits flakiness should be
disabled; we pay more in flakiness than we gain in coverage.
Commit migrated from https://github.com/dotnet/coreclr/commit/
13da374e247ad60b6dfc047697c6f52be304ebb7
Egor Chesakov [Tue, 5 Feb 2019 02:33:25 +0000 (18:33 -0800)]
Treat $(CLRTestExecutionArguments) as an array in Bash
Commit migrated from https://github.com/dotnet/coreclr/commit/
834e3fc269a46e1bb81a4782ccb14b83ed13fa05
Egor Chesakov [Tue, 5 Feb 2019 19:20:52 +0000 (11:20 -0800)]
Enable baseservices/threading/paramthreadstart/ThreadStartString_1
Commit migrated from https://github.com/dotnet/coreclr/commit/
213da952ee58568f16c21b10ae84cd127154dbaa
Jan Vorlicek [Wed, 6 Feb 2019 11:23:08 +0000 (12:23 +0100)]
Add option to run tests in unloadable context (dotnet/coreclr#22332)
This change adds new "runincontext" option to the tests/runtest.cmd that
allows running tests inside of an unloadable AssemblyLoadContext.
It also adds new property that allows tests to be marked as incompatible
with running this way. All known tests that have such issue are marked
in this PR too.
Commit migrated from https://github.com/dotnet/coreclr/commit/
40bee916727e7b2ef5f1aa99e7e5ce1d345711a8
Bruce Forstall [Wed, 6 Feb 2019 07:27:07 +0000 (23:27 -0800)]
Merge pull request dotnet/coreclr#22433 from BruceForstall/DisableFailingLinuxArm64Test
Disable failing constrainedcall test
Commit migrated from https://github.com/dotnet/coreclr/commit/
77535a6e1d839d82d461cbacc7940c0b88de7ab0
Bruce Forstall [Wed, 6 Feb 2019 07:26:18 +0000 (23:26 -0800)]
Merge pull request dotnet/coreclr#22438 from BruceForstall/DisableFailingXarchTests
Disable failing BestFitMapping tests
Commit migrated from https://github.com/dotnet/coreclr/commit/
9e9049aee5a7c6abc517f37f5a3d0ab2d17cfed4
Bruce Forstall [Wed, 6 Feb 2019 07:24:53 +0000 (23:24 -0800)]
Merge pull request dotnet/coreclr#22439 from BruceForstall/DisableWaitOne2
Disable baseservices\threading\mutex\misc\waitone2 test
Commit migrated from https://github.com/dotnet/coreclr/commit/
cca1ec9bb2ab690ee73427c77864443b1674907a
Bruce Forstall [Wed, 6 Feb 2019 07:24:01 +0000 (23:24 -0800)]
Merge pull request dotnet/coreclr#22444 from BruceForstall/DisableGThread23
Disable GThread23 test
Commit migrated from https://github.com/dotnet/coreclr/commit/
f4ec74cf12e5a55ef66df2d341f4e3f1cce15966
Bruce Forstall [Wed, 6 Feb 2019 03:00:16 +0000 (19:00 -0800)]
Disable GThread23 test
It fails regularly though randomly in the CI.
Tracking issue: https://github.com/dotnet/coreclr/issues/19339
Commit migrated from https://github.com/dotnet/coreclr/commit/
e71a489bbcf0653f42f555b8c1c3070ddc6ee5e0
Bruce Forstall [Tue, 5 Feb 2019 21:13:05 +0000 (13:13 -0800)]
Disable failing constrainedcall test on Linux
Tracked by https://github.com/dotnet/coreclr/issues/22423
Commit migrated from https://github.com/dotnet/coreclr/commit/
e0528e59485fb53e438c76009ba2aa0a2984ebb4
Bruce Forstall [Wed, 6 Feb 2019 01:15:35 +0000 (17:15 -0800)]
Disable baseservices\threading\mutex\misc\waitone2 test
This test has been failing randomly in the CI on all architectures
for a long, long time.
Tracking issue: https://github.com/dotnet/coreclr/issues/6397
Commit migrated from https://github.com/dotnet/coreclr/commit/
1236c858392fe3ccf9a463b00926e2fcce3dc86d
Bruce Forstall [Wed, 6 Feb 2019 00:55:30 +0000 (16:55 -0800)]
Disable failing BestFitMapping tests
Tests:
```
Interop\PInvoke\BestFitMapping\Char\AFT_PFT\AFT_PFT\AFT_PFT.cmd
Interop\PInvoke\BestFitMapping\Char\Assembly_False_False\Assembly_False_False\Assembly_False_False.cmd
Interop\PInvoke\BestFitMapping\LPStr\AFT_PFT\AFT_PFT\AFT_PFT.cmd
Interop\PInvoke\BestFitMapping\LPStr\Assembly_False_False\Assembly_False_False\Assembly_False_False.cmd
```
Tracked by https://github.com/dotnet/coreclr/issues/22436
Commit migrated from https://github.com/dotnet/coreclr/commit/
4bffe8c51e0d07eebb9b225e98345310cc2be2fc
Bruce Forstall [Tue, 5 Feb 2019 21:27:21 +0000 (13:27 -0800)]
Merge pull request dotnet/coreclr#22431 from BruceForstall/DisableCorefxFailingTests
Disable failing Linux/arm64 corefx tests
Commit migrated from https://github.com/dotnet/coreclr/commit/
a3073f2e280c8ad767d1f5b4f566cac07b3fec38
Bruce Forstall [Tue, 5 Feb 2019 20:46:35 +0000 (12:46 -0800)]
Merge pull request dotnet/coreclr#22432 from BruceForstall/DisableWindowsArm64CorefxCronJobs
Disable Windows arm64 corefx cron jobs
Commit migrated from https://github.com/dotnet/coreclr/commit/
9233c04d6dd3ca93d441cb3172642c2fb41274c9
Michal Strehovský [Tue, 5 Feb 2019 17:03:52 +0000 (18:03 +0100)]
Fix ProjectN build breaks (dotnet/corertdotnet/coreclr#6954)
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
e6edc905275636d56eed4e88b94b71eecbf8ba74
Filip Navara [Tue, 5 Feb 2019 20:29:01 +0000 (21:29 +0100)]
Avoid duplicate tree lookup in GetCollatorFromSortHandle (dotnet/coreclr#22390)
Commit migrated from https://github.com/dotnet/coreclr/commit/
49826b7454d967e860ec116866f8c0d7d9f3f8a0
Bruce Forstall [Tue, 5 Feb 2019 20:24:19 +0000 (12:24 -0800)]
Merge pull request dotnet/coreclr#22425 from BruceForstall/UploadMsbuildLogs
Configure MSBuild debug path and save any logs
Commit migrated from https://github.com/dotnet/coreclr/commit/
254eb202bdcdaf2eb2325d3ea20f96c319f0f947
Bruce Forstall [Tue, 5 Feb 2019 20:03:26 +0000 (12:03 -0800)]
Disable Windows arm64 corefx cron jobs
These currently all fail with timeout. They also take way too much time
to run. We have good Linux/arm64 corefx test coverage already.
The issue of these runs being slow is tracked by
https://github.com/dotnet/coreclr/issues/21236.
Commit migrated from https://github.com/dotnet/coreclr/commit/
fe661d2ae18c12ed04092a27f03f9c739834d2c8
Aditya Mandaleeka [Tue, 5 Feb 2019 20:21:50 +0000 (12:21 -0800)]
Merge pull request dotnet/coreclr#22415 from adityamandaleeka/pinvoke_eh
Disable PInvoke inlining within try regions on ARM64
Commit migrated from https://github.com/dotnet/coreclr/commit/
1e1f7d3a88cb91605a3c9716a5354a64ed707a4f
Egor Chesakov [Tue, 5 Feb 2019 20:04:40 +0000 (12:04 -0800)]
Use Jenkins for Linux/arm32 testing (dotnet/coreclr#22429)
Commit migrated from https://github.com/dotnet/coreclr/commit/
658e017cb3d1ca2938b41493fa54df6126f4463c
Bruce Forstall [Tue, 5 Feb 2019 19:52:22 +0000 (11:52 -0800)]
Disable failing Linux/arm64 corefx tests
Commit migrated from https://github.com/dotnet/coreclr/commit/
83520e91a5700f4887fa061884fc799d6f277fe3
Bruce Forstall [Tue, 5 Feb 2019 19:04:07 +0000 (11:04 -0800)]
Merge pull request dotnet/coreclr#22421 from BruceForstall/RestrictArm64XunitParallelism
Restrict arm64 parallelism to collections
Commit migrated from https://github.com/dotnet/coreclr/commit/
0455657252ed103e5e2ee5bf4fd537aaa647a34b
Bruce Forstall [Tue, 5 Feb 2019 19:02:50 +0000 (11:02 -0800)]
Merge pull request dotnet/coreclr#22416 from BruceForstall/FixRunTestOutput
Fix runtest.py output
Commit migrated from https://github.com/dotnet/coreclr/commit/
1d3199d7d8a03c753d98e2366cf959e70f82b3dd
Jeremy Koritzinsky [Tue, 5 Feb 2019 18:38:57 +0000 (10:38 -0800)]
Correctly error out gracefully on setup-stress-dependencies when libcoredistools isn't available. (dotnet/coreclr#22357)
Commit migrated from https://github.com/dotnet/coreclr/commit/
4052214dd4be021ed41680a43360fe886db73d61
Andy Ayers [Tue, 5 Feb 2019 08:43:23 +0000 (00:43 -0800)]
Notify dac when prejitted code is going to be used for a method (dotnet/coreclr#22296)
This allows sos bpmd breakpoints to work on prejitted methods.
Closes dotnet/coreclr#22265.
Commit migrated from https://github.com/dotnet/coreclr/commit/
98b0e9a2b67c668fc9c29f3c12ecb02a1a535154
Michal Strehovský [Tue, 5 Feb 2019 08:03:49 +0000 (09:03 +0100)]
Add draft default interface methods specification (dotnet/coreclr#21564)
Commit migrated from https://github.com/dotnet/coreclr/commit/
c4299d42ff04d67aa11c607f48bc4d70f3f9723b
Jeremy Koritzinsky [Tue, 5 Feb 2019 06:16:43 +0000 (22:16 -0800)]
Fix marshalling UTF8 string struct member from native to managed. (dotnet/coreclr#22408)
* Fix marshalling UTF8 string struct member from native to managed.
Fixes dotnet/coreclr#22394
* PR Feedback.
Commit migrated from https://github.com/dotnet/coreclr/commit/
b52d64f04f61889c4bb0eb4cd9a39d6899eace09
Carol Eidt [Tue, 5 Feb 2019 05:49:25 +0000 (21:49 -0800)]
Extract addressing mode analysis from gtSetEvalOrder (dotnet/coreclr#22387)
* Extract addressing mode analysis from gtSetEvalOrder
Commit migrated from https://github.com/dotnet/coreclr/commit/
8362be7ec4a8f4ca88ed151ace9a81d6f916508b
Bruce Forstall [Tue, 5 Feb 2019 04:37:18 +0000 (20:37 -0800)]
Merge pull request dotnet/coreclr#22417 from BruceForstall/ExtractRuntestTimeout
Extract setting __TestTimeout in runtest.py
Commit migrated from https://github.com/dotnet/coreclr/commit/
ea2e49c42b71bebf79d86f5f859aaeec71840eee
Ben Adams [Tue, 5 Feb 2019 04:04:30 +0000 (05:04 +0100)]
Fix string.strlen (dotnet/coreclr#22397)
* Add explanation comment
Fixes dotnet/coreclr#22393
Commit migrated from https://github.com/dotnet/coreclr/commit/
cc8bcb2523c549c6a0cd069b22e3e99d89f3158f
Marek Safar [Tue, 5 Feb 2019 03:43:10 +0000 (04:43 +0100)]
Move SynchronizationContext to shared partition (dotnet/coreclr#22389)
* Move SynchronizationContext to shared partition
* Move WaitHelperNative to WaitHandle
Commit migrated from https://github.com/dotnet/coreclr/commit/
382dbe4ba82f57a138484e0c5052c3b8606c1294
Bruce Forstall [Tue, 5 Feb 2019 03:00:39 +0000 (19:00 -0800)]
Configure MSBuild debug path and save any logs
We have had many problems in the CI with MSBuild failing, and not
capturing the failure logs.
See https://github.com/dotnet/coreclr/issues/20236.
So, for all msbuild invocations, set MSBUILDDEBUGPATH to a new,
distinguished, subdirectory of the bin\Logs directory, named
"MsbuildDebugLogs". Change the CI to upload any log files found
there.
Commit migrated from https://github.com/dotnet/coreclr/commit/
f471342cc072546edf84bb110aa3d2765ad2bb76
Bruce Forstall [Mon, 4 Feb 2019 23:20:09 +0000 (15:20 -0800)]
Fix runtest.py output
1. Fix extra newline output
2. Remove extra output of failed logs
3. Catch errors with Unicode conversion
Commit migrated from https://github.com/dotnet/coreclr/commit/
718e651e7ede620ef1ecbfc8ebe838db8f3dfa2f
Bruce Forstall [Tue, 5 Feb 2019 00:21:43 +0000 (16:21 -0800)]
Restrict arm64 parallelism to collections
Attempt to reduce test timeout failures by restricting test parallelism.
Attempts to address https://github.com/dotnet/coreclr/issues/22419
Commit migrated from https://github.com/dotnet/coreclr/commit/
a7ffb5d1d13639e4fc97d340b8c2df700ed0d4ca
Steve MacLean [Mon, 4 Feb 2019 18:36:52 +0000 (13:36 -0500)]
Handle SPC in GetLoadContext
GetBindingContext() returns NULL for System.Private.CoreLib. Add support
for this special case.
Commit migrated from https://github.com/dotnet/coreclr/commit/
7e20b6fa7b2253511b6f0a7d76c955360e040df6
Bruce Forstall [Mon, 4 Feb 2019 23:41:29 +0000 (15:41 -0800)]
Extract setting __TestTimeout
Avoid setting or reporting setting it twice
Commit migrated from https://github.com/dotnet/coreclr/commit/
27484220f295ab15151aeea8e7b4141e9d923026
Aditya Mandaleeka [Mon, 4 Feb 2019 23:21:05 +0000 (15:21 -0800)]
Re-enable tests blocked by 21964.
Commit migrated from https://github.com/dotnet/coreclr/commit/
db2faf25d287fff2654af044503a5e97b2cef83e
Aditya Mandaleeka [Mon, 4 Feb 2019 23:12:33 +0000 (15:12 -0800)]
Disable PInvoke inlining within try regions on ARM64.
Commit migrated from https://github.com/dotnet/coreclr/commit/
95c84623ce5d4338a4706dd989cbb5de3b51a12f
Bruce Forstall [Mon, 4 Feb 2019 22:38:12 +0000 (14:38 -0800)]
Merge pull request dotnet/coreclr#22411 from BruceForstall/AlwaysArchiveLogs
Always archive build logs
Commit migrated from https://github.com/dotnet/coreclr/commit/
5ede2e7a290f770eb1fc04f11f84e3e3afb22fae
Bruce Forstall [Mon, 4 Feb 2019 21:30:12 +0000 (13:30 -0800)]
Always archive build logs
Even if the build fails. Add archiving in more cases where it was missing.
Commit migrated from https://github.com/dotnet/coreclr/commit/
34003a54a06c3530d34676a54a35c9a6b55eec33
Egor Chesakov [Mon, 4 Feb 2019 17:54:47 +0000 (09:54 -0800)]
Disable JIT/SIMD/Vector3Interop_ro on x64 Unix platforms
Related issue: https://github.com/dotnet/coreclr/issues/22401
Commit migrated from https://github.com/dotnet/coreclr/commit/
23dfb8f822c24c7cef9ae40e9e4e70574abb1ea6
Egor Chesakov [Mon, 4 Feb 2019 17:45:38 +0000 (09:45 -0800)]
Disable JIT/Regression/CLR-x86-JIT/v2.1/b152292 on all Unix platforms
Related issue: https://github.com/dotnet/coreclr/issues/20358
Commit migrated from https://github.com/dotnet/coreclr/commit/
ebd3683abf3c3ca93e2d7298147baea35ae40b4f
Jan Kotas [Mon, 4 Feb 2019 19:36:06 +0000 (11:36 -0800)]
More compact implementation of Marshal.GenerateProgIdForType (dotnet/coreclr#22395)
Commit migrated from https://github.com/dotnet/coreclr/commit/
9aa68da7d3dcd24761d03c4f41720194ab3638b8
Sergey Andreenko [Mon, 4 Feb 2019 19:13:24 +0000 (11:13 -0800)]
Reenable corefx System.Linq.Expressions.Tests. (dotnet/coreclr#22362)
Commit migrated from https://github.com/dotnet/coreclr/commit/
7253eab7d4a2e602b1cd547fb954bba79a343d30
Sergey Andreenko [Mon, 4 Feb 2019 17:45:03 +0000 (09:45 -0800)]
Delete exclusions that reference fixed issues. (dotnet/coreclr#22355)
* Delete exclusions for the issue that were fixed.
* Change the issue number for ThreadStartString_1
Commit migrated from https://github.com/dotnet/coreclr/commit/
e78994d9d8f2d55bf6b06fb4daaec316a020bcf5
Andy Ayers [Mon, 4 Feb 2019 16:47:48 +0000 (08:47 -0800)]
Fix arm32 unwind for large methods (dotnet/coreclr#22381)
* Fix arm32 unwind for large methods
For arm32, the unwinder bails out with an error if the method offset is not
within the fragment range. And the jit copies prolog unwind codes to all
fragments, so there's no need to walk back and find the root unwind record.
Closes dotnet/coreclr#22260.
* re-enable test
Commit migrated from https://github.com/dotnet/coreclr/commit/
75dfe5cfff56ad028bcf256ae0857bf64e4197e9
Filip Navara [Mon, 4 Feb 2019 13:09:20 +0000 (14:09 +0100)]
Remove code that was moved to System.Native (dotnet/corertdotnet/coreclr#6932)
* Remove code that was already moved from System.Private.CoreLib.Native to System.Native.
* Move Interop files for System.Native to shared Interop directory.
* Add FeaturePortableThreadPool conditions to csproj files.
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
cee7a5596992f2c25a262c1f081d29c2951cac19
Jan Kotas [Mon, 4 Feb 2019 04:33:56 +0000 (20:33 -0800)]
Merge pull request dotnet/coreclr#22378 from filipnavara/native_cpp_to_C
Convert System.Globalization.Native to C
Commit migrated from https://github.com/dotnet/coreclr/commit/
a51af0838709ca81b51bee236865a39b31f68f41
Michal Strehovský [Sun, 3 Feb 2019 18:22:32 +0000 (19:22 +0100)]
Throw the right exception when interface dispatch is ambiguous (dotnet/coreclr#22295)
Throw the approved exception per dotnet/corefxdotnet/coreclr#34124.
Commit migrated from https://github.com/dotnet/coreclr/commit/
bbd79053fffa3bee7ce06df30115f077c077082a
Jan Kotas [Sun, 3 Feb 2019 17:07:09 +0000 (09:07 -0800)]
Use unsigned index extension in muldi-dimensional array stubs (dotnet/coreclr#22376)
Delete unnecessary parallel logic that kept track of the total multiplier
Fixes dotnet/coreclr#22348
Commit migrated from https://github.com/dotnet/coreclr/commit/
cab949098dcdab9d458f102eb59e81311bac45c4
Tamás Csala [Sun, 3 Feb 2019 13:53:18 +0000 (13:53 +0000)]
Rename DevDiv_754566.ilprog to DevDiv_754566.ilproj (dotnet/coreclr#22375)
Typo in file name
Commit migrated from https://github.com/dotnet/coreclr/commit/
21f9d692bf51d0d6ae25dbd5ba791b092b8e0fd4
Filip Navara [Sun, 3 Feb 2019 09:59:55 +0000 (10:59 +0100)]
Prefix enums, remove DLLEXPORT from GetResultCode
Move SortHandle out of public API header, it is opaque structure
Commit migrated from https://github.com/dotnet/coreclr/commit/
772b2da3a105a08e133e3b50342b47fe1b4ba047
Filip Navara [Sun, 3 Feb 2019 09:26:27 +0000 (10:26 +0100)]
Fix inconsistent usage of various bool types
Convert u_charsToUChars_safe to ICU style error handling
Unify error handling code across functions to use the same patterns
Add static modifier to functions that are used only from single C file
Commit migrated from https://github.com/dotnet/coreclr/commit/
c152ba92901a3345a58a42f2a4c5ac5634cfbd3e
Filip Navara [Sun, 3 Feb 2019 07:46:33 +0000 (08:46 +0100)]
Update static_assert usage to c_static_assert_msg
Commit migrated from https://github.com/dotnet/coreclr/commit/
5875f89361938c51cc1943901007aa362e828fae
Filip Navara [Sun, 3 Feb 2019 02:37:19 +0000 (03:37 +0100)]
Avoid memory allocation in EnumSymbols for small buffers
Commit migrated from https://github.com/dotnet/coreclr/commit/
91df8d26a01cc50672ac4f7f71359cd19e8e2db2
Filip Navara [Sun, 3 Feb 2019 02:20:45 +0000 (03:20 +0100)]
Fix error handling in GetLocaleIso639LanguageTwoLetterName
Commit migrated from https://github.com/dotnet/coreclr/commit/
1edbceb16f7f54c535d4a8416cf2c34691e484bc
Filip Navara [Sun, 3 Feb 2019 01:02:24 +0000 (02:02 +0100)]
Update one more place to use version.c instead of version.cpp
Commit migrated from https://github.com/dotnet/coreclr/commit/
bea81cdfa6b0aaeb26f28780b72c04b1838c43d1
Filip Navara [Sun, 3 Feb 2019 00:50:56 +0000 (01:50 +0100)]
Simplify and fix error handling
Commit migrated from https://github.com/dotnet/coreclr/commit/
a7f13657cf6bdb27fb51f6ad57835378857a5059
Filip Navara [Sun, 3 Feb 2019 00:19:29 +0000 (01:19 +0100)]
Change NormalizationForm to address feedback.
Commit migrated from https://github.com/dotnet/coreclr/commit/
39c5ffdbe835acb0208a7c24e76886ce423e4b97
kasper3 [Sun, 1 Jul 2018 09:51:09 +0000 (09:51 +0000)]
Fix enum alignment
Commit migrated from https://github.com/dotnet/coreclr/commit/
08bc2bf9b7de78ae8f80fdb08b7e1bf0cb8c1615
kasper3 [Fri, 29 Jun 2018 15:15:56 +0000 (15:15 +0000)]
Address feedback
Commit migrated from https://github.com/dotnet/coreclr/commit/
6cd0d928a55d8eae12d7eeaf77d02440d3443deb
kasper3 [Mon, 25 Jun 2018 20:05:58 +0000 (20:05 +0000)]
Convert version.cpp to C
Commit migrated from https://github.com/dotnet/coreclr/commit/
db8dbe8a005beec124eaac1adcfa30d4715338bd
kasper3 [Mon, 25 Jun 2018 14:39:57 +0000 (14:39 +0000)]
Address feedback
Commit migrated from https://github.com/dotnet/coreclr/commit/
35326c66500cb6f5a54000c26f31f145eb09780e
kasper3 [Fri, 22 Jun 2018 15:54:55 +0000 (15:54 +0000)]
Convert System.Globalization.Native to C
Commit migrated from https://github.com/dotnet/coreclr/commit/
63d5bab7d06056d36e7f474666954ea2b86abf10
kasper3 [Fri, 22 Jun 2018 15:45:26 +0000 (15:45 +0000)]
Rename files
Commit migrated from https://github.com/dotnet/coreclr/commit/
7d97abd6099fe3b572ff1f5923655852c0e04b76
Filip Navara [Sun, 3 Feb 2019 01:35:39 +0000 (02:35 +0100)]
Move Interop.GetTimestamp.cs to shared CoreLib partition. (dotnet/coreclr#35031)
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
4dc930ea7b1aa429eb30f2ee0b460d5edf5a244f
Carol Eidt [Sat, 2 Feb 2019 22:33:30 +0000 (14:33 -0800)]
Spill tree temp large vectors around calls (dotnet/coreclr#22311)
* Spill tree temp large vectors around calls
The code was there to handle lclVars, but there was an implicit assumption that non-lclVar large vector tree temps would never be live across a call.
Fixes the GitHub_20657 failure in dotnet/coreclr#22253
Commit migrated from https://github.com/dotnet/coreclr/commit/
070b5d7a403e991777ead838975d58e66aec1264
Stephen Toub [Sat, 2 Feb 2019 18:31:31 +0000 (13:31 -0500)]
Avoid delegate/work item allocations when setting async continuation (dotnet/coreclr#22373)
When awaiting a task, there's a race between seeing whether the task has completed (in which case we just continue running synchronously), finding the task hasn't completed (in which case we hook up a continuation), and then by the time we try to hook up the continuation finding the task has already completed. In that final case, we don't want to just execute the callback synchronously, as we risk a stack dive, so we queue it. That queueing currently entails two allocations in the common case: one for the work item object, and one for the Action delegate we force into existence for the state machine box's MoveNext method (in the common case it's now never allocated because you only await Tasks and ValueTasks known to the runtime, which bypasses its creation). We can instead just queue the box itself, and avoid both allocations.
Commit migrated from https://github.com/dotnet/coreclr/commit/
a98189a1ac9fbfe462776eed4d99e0cfa883afe6
Jan Kotas [Sat, 2 Feb 2019 17:14:47 +0000 (09:14 -0800)]
Rename ResourceManager fields to follow conventions (dotnet/coreclr#22371)
Commit migrated from https://github.com/dotnet/coreclr/commit/
c3c07ece61dc18454d0aad985dc7004b9ce63c26
Carol Eidt [Sat, 2 Feb 2019 14:37:34 +0000 (06:37 -0800)]
Propagate preferences (dotnet/coreclr#19429)
* Propagate preferences
Instead of selecting a single relatedInterval for preferencing,
follow the chain of relatedIntervals (preferenced intervals).
Change when preferences are propagated to the relatedInterval;
do it in allocateRegisters, so that we can update it when we see a last use.
Also tune when and how intervals are preferenced, including allowing multiple
uses on an RMW node to have the target as their preference.
Fixes dotnet/coreclr#11463
Contributes to dotnet/coreclr#16359
Commit migrated from https://github.com/dotnet/coreclr/commit/
0f8b7e89ca98134e393369671bc902834a2a6fe9
Egor Chesakov [Sat, 2 Feb 2019 05:01:53 +0000 (21:01 -0800)]
Make Import of Helix.Sdk conditional in tests/helixpublishwitharcade.proj (dotnet/coreclr#22360)
Commit migrated from https://github.com/dotnet/coreclr/commit/
ef7aab761c42819c5c2fa9d9953909b4511b3708
Marek Safar [Sat, 2 Feb 2019 03:48:58 +0000 (04:48 +0100)]
Move Marshal::UnsafeAddrOfPinnedArrayElement to shared partition (dotnet/coreclr#22359)
Commit migrated from https://github.com/dotnet/coreclr/commit/
26e517fa7f5d7554218f655946ee963342d922e1
Jan Kotas [Sat, 2 Feb 2019 03:47:52 +0000 (19:47 -0800)]
Make Exception._HResult private (dotnet/coreclr#22354)
Commit migrated from https://github.com/dotnet/coreclr/commit/
c6db4c75edf52b9a7b2875e94485630fc962d9bf
Bruce Forstall [Sat, 2 Feb 2019 00:09:10 +0000 (16:09 -0800)]
Fix the scratch register used for arm64 stack probing (dotnet/coreclr#22313)
* Fix the scratch register used for arm64 stack probing
In some circumstances, genFnProlog might pick a callee-saved
register to be the initReg. This doesn't work for stack probing
since we might need a scratch register before we save the
callee-save regs. So, always use R9 (REG_SCRATCH) instead.
Fixes dotnet/coreclr#22284
* Formatting
Commit migrated from https://github.com/dotnet/coreclr/commit/
53e367b7f9a2ca799e0510f9420567848e7c0e8b
Carol Eidt [Fri, 1 Feb 2019 23:35:28 +0000 (15:35 -0800)]
Preserve Vector Arg registers on Arm64 (dotnet/coreclr#22257)
* Preserve Vector Arg registers on Arm64
Fix dotnet/coreclr#14371
Commit migrated from https://github.com/dotnet/coreclr/commit/
f10d5bec97e722c5ed54a1ce5f357d99dea60ff7
Stephen Toub [Fri, 1 Feb 2019 22:26:36 +0000 (17:26 -0500)]
Remove stale warning 420 pragmas (dotnet/coreclr#22352)
It used to be that the CS0420 warning ("a reference to a volatile field will not be treated as volatile") would fire when a volatile was used with an Interlocked.* operation. That warning was unnecessary, as Interlocked.* would itself provide the relevant barriers, and these functions were special cased in Roslyn a long time ago. But there are still lots of places where pragmas disabling the warning have stuck around. I'm deleting them all.
Commit migrated from https://github.com/dotnet/coreclr/commit/
7ca73bcfa0ce072617b068393b7ed66919097bc1
Filip Navara [Fri, 1 Feb 2019 22:25:56 +0000 (23:25 +0100)]
Move ResourceManager to shared CoreLib. (dotnet/coreclr#22249)
* Move ResourceManager to shared CoreLib.
* Split UAP code out of ResourceManager.cs into separate files.
* Remove ResourceManager.NonUap.cs.
* Do not access internal field (CoreRT build fix).
* Fix non-Windows builds (CoreRT).
* Remove obsolete Debug code.
Commit migrated from https://github.com/dotnet/coreclr/commit/
a6155cedca904208f28c9c1e998029a6c6e5ba62
Sergey Andreenko [Fri, 1 Feb 2019 20:20:51 +0000 (12:20 -0800)]
Exclude RecursiveException and MultipleException from GCStress runs. (dotnet/coreclr#22340)
Fixes dotnet/coreclr#20460.
See issue dotnet/coreclr#22339.
Commit migrated from https://github.com/dotnet/coreclr/commit/
b64ec23b3cb68106e16657d68ee4f06271365247
Tanner Gooding [Fri, 1 Feb 2019 19:58:35 +0000 (11:58 -0800)]
Update the double/float formatters to return the shortest roundtrippable string. (dotnet/coreclr#22040)
* Updating Number.Formatting to always compute a round-trippable number by default.
* Adding a third-party notice entry for the Grisu3 reference implementation
* Fixing up the Grisu3 algorithm to better match the reference implementation (including comments, etc)
* Porting the Grisu3 implementation that generates the shortest roundtrippable sequence.
* Updating the Dragon4 algorithm to support printing the shortest roundtrippable string.
* Fixing the double/float formatters to ignore precision specifiers for 'R'
* Fixing the double/float formatters to handle +0.0 and -0.0
* Fix the casing of `point` in THIRD-PARTY-NOTICES
Co-Authored-By: tannergooding <tagoo@outlook.com>
* Fixing the double/float formatting code to consider a precision specifier of 0 to be the same as default.
* Fixing the double/float formatter so that nMaxDigits is set appropriately.
* Changing the double/float formatting logic to account for the format when determining the correct precision to request.
* Updating the double/float formatter to take the format specifier into account when determining the number of digits to request.
* Fixing the double/float formatting code to continue handling zero correctly.
* Disabling some outdated CoreFX tests.
* Responding to various feedback from the PR
Commit migrated from https://github.com/dotnet/coreclr/commit/
a21b1513db19eb6e77ab71843b8f0e046eb88933
Egor Chesakov [Fri, 1 Feb 2019 19:49:39 +0000 (11:49 -0800)]
Refactor helixpublishwitharcade.proj (dotnet/coreclr#22346)
Commit migrated from https://github.com/dotnet/coreclr/commit/
d7c49329ad75e160460ddb32f18d150c072a8002
Andy Ayers [Fri, 1 Feb 2019 19:34:31 +0000 (11:34 -0800)]
Ensure method is active in PrepareMethod (dotnet/coreclr#22351)
Fixes an assert when first call to PrepareMethod for an assembly
is an interop method.
Commit migrated from https://github.com/dotnet/coreclr/commit/
7a453d4b05d3514b5c5c3b22411e3d2d9f16c017
Michal Strehovský [Thu, 31 Jan 2019 21:51:45 +0000 (13:51 -0800)]
Annotate types moved from S.R.Extensions
Testing how much hate this is going to bring me.
These annotations let ProjectN deal with the fact that we now have two
definitions of System.Environment in the system. This is needed as long
as Project N is stuck on 2.1-level version of the framework.
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
c1fabb9120d39ff7b7b9fb00e43ff6a4dd6ccfd6
Russ Keldorph [Fri, 1 Feb 2019 04:23:21 +0000 (20:23 -0800)]
Revert "Re-point Jenkins to new Ubuntu ARM64 queue"
This reverts commit dotnet/coreclr@
193d5da27fecb7bf95e7342f1c4b9e2b63ce5313.
Commit migrated from https://github.com/dotnet/coreclr/commit/
d617f96303c4b65b7b77ff5fa0d7aee38ebc19f8
Sinan Kaya [Fri, 1 Feb 2019 15:27:39 +0000 (10:27 -0500)]
Coreclr gnuport (dotnet/coreclr#22129)
* Abstract away NOINLINE statement
MSVC and GNU compilers use different attributes for noinline.
Abstract away compiler differences.
* Replace __sync_swap with __atomic_exchange_n
__sync_swap doesn't exist on GNU. Replacing with __atomic_exchange_n
which is universally available.
* Define CDECL for GNUC
__cdecl is not defined by default on GNU compilers.
* Define gcc version of __declspec(thread)
* Correct pointer casting
A pointer value is usually unsigned long on most platforms.
Casting it to integer causes signedness issues. Use size_t
to be efficient on all 32 and 64 bit architectures.
* Put quotes around the error string
Correct error statement. GNU G++ is picky about the string
following the error statement with ' character in it. It needs
to be enclosed with double quotes.
* Fix casting problem
Seeing these warnings with GNU G++ compiler
src/pal/src/sync/cs.cpp: In function ‘void CorUnix::InternalInitializeCriticalSectionAndSpinCount(PCRITICAL_SECTION, DWORD, bool)’:
src/pal/src/sync/cs.cpp:630:48: warning: converting to non-pointer type ‘SIZE_T {aka long unsigned int}’ from NULL [-Wconversion-null]
pPalCriticalSection->OwningThread = NULL;
^
src/pal/src/sync/cs.cpp: In function ‘void CorUnix::InternalLeaveCriticalSection(CorUnix::CPalThread*, _CRITICAL_SECTION*)’:
src/pal/src/sync/cs.cpp:880:43: warning: converting to non-pointer type ‘SIZE_T {aka long unsigned int}’ from NULL [-Wconversion-null]
pPalCriticalSection->OwningThread = NULL;
^
* Abstract optnone compiler attribute
GNU compiler doesn't support optnone attribute.
pal/src/exception/seh-unwind.cpp:449:77: warning: ‘optnone’ attribute directive ignored [-Wattributes]
* Set the aligned attribute for GNU compiler
* Make __rotl and __rotr functions portable
GNU compiler doesn't have an intrinsic for these. Open code them
using the provided implementation.
* Define deprecated attribute for gcc
* Add throw specifier for GCC
/usr/include/string.h:43:28: error: declaration of ‘void* memcpy(void*, const void*, size_t) throw ()’ has a different exception specifier
size_t __n) __THROW __nonnull ((1, 2));
Commit migrated from https://github.com/dotnet/coreclr/commit/
fc7a8fbbc1754c8dd49f66f9b59c1ff12a5f842e
Tanner Gooding [Fri, 1 Feb 2019 06:52:01 +0000 (22:52 -0800)]
Fixing a GC hole in Number.BigInteger (dotnet/coreclr#22334)
Commit migrated from https://github.com/dotnet/coreclr/commit/
a8a05e8c595ae0b9e12333134f38e19acf981be4
Bruce Forstall [Fri, 1 Feb 2019 05:13:00 +0000 (21:13 -0800)]
Add -skipcrossarchnative option to build.cmd (dotnet/coreclr#22091)
* Add -skipcrossarchnative option to build.cmd
This allows you to skip building the cross-architecture native components.
* Add -skipcrossarchnative to build.sh
Commit migrated from https://github.com/dotnet/coreclr/commit/
c648dc79affa126d51c751d49cda2d3b5e86e3d4
Stephen Toub [Fri, 1 Feb 2019 04:20:14 +0000 (23:20 -0500)]
Replace several Nullable<T>.Value with .GetValueOrDefault() (dotnet/coreclr#22297)
The former does extra work that the latter doesn't do, and they're equivalent when we know it contains a value, such as immediately after a HasValue check.
Commit migrated from https://github.com/dotnet/coreclr/commit/
1b2810b1ad92d2671da76d88245198b62f5b964e
Andrew Au [Thu, 31 Jan 2019 17:07:09 +0000 (09:07 -0800)]
AsyncSteppingFix - Eagerly initialize the AsyncStateMachineBox to avoid expression evaluation in ProjectN async stepping.
[tfs-changeset: 1732745]
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
03bc819b69c50d37f48d795da80322253ffeb592
Sergey Andreenko [Fri, 1 Feb 2019 02:55:58 +0000 (18:55 -0800)]
Increase arm64 timeout. (dotnet/coreclr#22298)
* increase arm64 debug/checked timeout.
* Increase timeout only for corefx jobs.
Commit migrated from https://github.com/dotnet/coreclr/commit/
d66b6b7d9282b1757e3f4ff047268798d467af55