Aditya Mandaleeka [Tue, 7 Aug 2018 22:17:52 +0000 (15:17 -0700)]
Make VM-side changes for ARM64 Windows calling convention.
Commit migrated from https://github.com/dotnet/coreclr/commit/
87174a2fdf97938b0ee8d64a0b784f1c01bf2932
Egor Chesakov [Tue, 17 Jul 2018 23:22:27 +0000 (16:22 -0700)]
Enable CoreFx tests disabled in https://github.com/dotnet/coreclr/issues/17753 (dotnet/coreclr#18967)
Commit migrated from https://github.com/dotnet/coreclr/commit/
a113b1c803783c9d64f1f0e946ff9a853e3bc140
Pent Ploompuu [Tue, 17 Jul 2018 21:59:00 +0000 (00:59 +0300)]
Clean-up number.cpp (dotnet/coreclr#18964)
Commit migrated from https://github.com/dotnet/coreclr/commit/
4b618d9dfe1690c9df9e3c5ce351ae18d1a7c239
Jan Kotas [Tue, 17 Jul 2018 19:11:33 +0000 (12:11 -0700)]
Add pooling for JIT scratch memory (dotnet/coreclr#18924)
Fixes dotnet/coreclr#3408
Commit migrated from https://github.com/dotnet/coreclr/commit/
eaf111b08dce413738f9133748e302248359c5e9
dotnet-maestro-bot [Tue, 17 Jul 2018 19:10:53 +0000 (12:10 -0700)]
Update CoreClr, CoreFx, PgoData to preview1-26717-04, preview1-26717-04, master-
20180717-0139, respectively (master) (dotnet/coreclr#18961)
* Update CoreClr, CoreFx, PgoData to preview1-26717-04, preview1-26717-04, master-
20180717-0139, respectively
* Disabled outdated tests
Commit migrated from https://github.com/dotnet/coreclr/commit/
83ee28ed75a94e6fd4e1c81c27fc9acf947d92a3
Aaron Robinson [Tue, 17 Jul 2018 18:12:02 +0000 (11:12 -0700)]
Update NativeCallable attribute tests (dotnet/coreclr#18946)
* Update NativeCallable attribute tests
Commit migrated from https://github.com/dotnet/coreclr/commit/
f69989e353d11a906bdbc4989b901fe82d7ca0bc
Vance Morrison [Tue, 17 Jul 2018 17:42:28 +0000 (10:42 -0700)]
Merge pull request dotnet/coreclr#18938 from vancem/EventSourceShutdown
Add back in code deleted in .NET Core port.
Commit migrated from https://github.com/dotnet/coreclr/commit/
f4145a147aa40639747c08ec6eeac6ddcc788e36
Carol Eidt [Tue, 17 Jul 2018 15:54:42 +0000 (08:54 -0700)]
Merge pull request dotnet/coreclr#18891 from CarolEidt/Fix18153
Ensure BuildUse uses the correct reg number
Commit migrated from https://github.com/dotnet/coreclr/commit/
d25bcb8e27c5e583d6abfe6d59d3f32316ac7733
Pent Ploompuu [Tue, 17 Jul 2018 15:41:39 +0000 (18:41 +0300)]
Move Decimal to shared (dotnet/coreclr#18948)
* Move Decimal to shared
* Remove DecimalCanonicalize{Internal}
Commit migrated from https://github.com/dotnet/coreclr/commit/
2b50bba8131acca2ab535e144796941ad93487b7
Stephen Toub [Tue, 17 Jul 2018 13:00:11 +0000 (06:00 -0700)]
Improve throughput of {U}Int32/64.{Try}Parse for hex (dotnet/coreclr#18952)
* Improve throughput of {U}Int32/64.{Try}Parse for hex
- Copies/modifies the recently added TryParse32/64IntegerStyle routines for hex in order to provide more optimized parsing.
- Since AllowHexSpecifier can't be used with any other styles (other than allowing leading/trailing whitespace), deletes existing code paths for parsing hex.
- As I was copying code around, I kept getting bitten by different names used for the same thing, so I also standardized some parameter names in various helper functions.
* Clean up
- Remove a bunch of unnecessary 'unsafe' keywords
- Rephrase some while(true) loops as do/while loops for consistency and to avoid some repetition
- Remove an unnecessary wrapper function
Commit migrated from https://github.com/dotnet/coreclr/commit/
624f72d55a92e49aef3c3cd6e69150fa3b085fac
dotnet-maestro-bot [Tue, 17 Jul 2018 11:27:23 +0000 (04:27 -0700)]
Update BuildTools, CoreClr, CoreFx, PgoData to preview1-03013-03, preview1-26716-04, preview1-26717-02, master-
20180716-0324, respectively (master) (dotnet/coreclr#18927)
* Update BuildTools, CoreClr, CoreFx, PgoData to preview1-03013-03, preview1-26716-04, preview1-26717-02, master-
20180716-0324, respectively
* Update EventPipe StackWalker usage to specify ALLOW_INVALID_OBJECTS.
Commit migrated from https://github.com/dotnet/coreclr/commit/
f22e633a63c3fb2bc2c69110aa3deab350d98ad9
Jan Kotas [Tue, 17 Jul 2018 08:51:57 +0000 (01:51 -0700)]
Delete redundant broken offsetof definitions (dotnet/coreclr#18947)
Fixes build breaks with latest Visual Studio Preview.
Fixes dotnet/coreclr#18338
Commit migrated from https://github.com/dotnet/coreclr/commit/
cc3e7d05c9248c0951beef289c48909066d27345
Koundinya Veluri [Tue, 17 Jul 2018 05:04:07 +0000 (22:04 -0700)]
Apply tiering's call counting delay more broadly (dotnet/coreclr#18610)
Apply tiering's call counting delay more broadly
Issues
- When some time passes between process startup and first significant use of the app, startup perf with tiering can be slower because the call counting delay is no longer in effect
- This is especially true when the process is affinitized to one cpu
Fixes
- Initiate and prolong the call counting delay upon tier 0 activity (jitting or r2r code lookup for a new method)
- Stop call counting for a called method when the delay is in effect
- Stop (and don't start) tier 1 jitting when the delay is in effect
- After the delay resume call counting and tier 1 jitting
- If the process is affinitized to one cpu at process startup, multiply the delay by 10
No change in benchmarks.
Commit migrated from https://github.com/dotnet/coreclr/commit/
6b403ca4422f2bf3df9d25a32790cc4c0d4b6ee4
Carol Eidt [Tue, 17 Jul 2018 04:45:47 +0000 (21:45 -0700)]
Use `FEATURE_ARG_SPLIT` to qualify handling of `GT_PUTARG_SPLIT`
Commit migrated from https://github.com/dotnet/coreclr/commit/
8a6fe594c1f85c762ad94c3dd9b9828d3ae0459c
Andy Ayers [Tue, 17 Jul 2018 01:48:24 +0000 (18:48 -0700)]
JIT: fix value numbering to handle GT_NULLCHECK more generally (dotnet/coreclr#18942)
With the advent of dotnet/coreclr#18819 we may now see GT_NULLCHECK nodes with operands
that also can cause exceptions.
Handle this in value numbering.
Closes dotnet/coreclr#18937.
Commit migrated from https://github.com/dotnet/coreclr/commit/
2a4db3b265eccb9d56e3706d260237b3687da9ca
Carol Eidt [Mon, 16 Jul 2018 23:31:00 +0000 (16:31 -0700)]
PR Feedback
Commit migrated from https://github.com/dotnet/coreclr/commit/
c296f061a50c91bebad767aa1e5421d1646ce6a6
Tanner Gooding [Sun, 15 Jul 2018 15:04:45 +0000 (08:04 -0700)]
Adding tests for the Avx2 AlignRight, Blend, and ConvertTo* hwintrinsics.
Commit migrated from https://github.com/dotnet/coreclr/commit/
15ed066869dd7cddf3c7afb6b989c05229cda8b7
Tanner Gooding [Thu, 12 Jul 2018 14:40:30 +0000 (07:40 -0700)]
Implementing the Avx2 AlignRight, Blend, and ConvertTo* hwintrinsics.
Commit migrated from https://github.com/dotnet/coreclr/commit/
71a9d8bbb0d80bb9b998c9df2ab2170027b796e3
Bruce Forstall [Mon, 16 Jul 2018 21:41:19 +0000 (14:41 -0700)]
Merge pull request dotnet/coreclr#18917 from BruceForstall/dev/unix_test_workflow
Enable Windows ARM64 corefx jobs in the CI
Commit migrated from https://github.com/dotnet/coreclr/commit/
84643e6cff9c17651fbcf2bdccbd1a1aaab536a3
Noah Falk [Mon, 16 Jul 2018 20:48:37 +0000 (13:48 -0700)]
Add no tiered compilation test jobs (dotnet/coreclr#18864)
* Add no tiered compilation test jobs
With the upcoming switch to make tiered compilation on by default we want to preserve some JIT testing that will not enable tiered compilation.
1) Add 'no_tiered_compilation_pri0' jit stress job, logically the non-tiered variant of current 'Innerloop' jobs
- This job will run on all PRs for Checked x (Windows x86, Windows x64, Ubuntu arm) - but not scheduled that way for the moment so it can be tested post-checkin
2) Add 'no_tiered_compilation' jit stress job, logically the non-tiered variant of the current 'normal' job
- This job has the same periodic schedule as other jit stress jobs
3) Add 'r2r_no_tiered_compilation' r2r stress job, logically the non-tiered variant of the current 'r2r' job
- This job has the same periodic schedule as other r2r stress jobs
Misc adjustments - Added isPri0TestScenario because 'innerloop' is no longer the only scenario name which has this property + eliminated various comments that implied 'innerloop' IFF pri0
Commit migrated from https://github.com/dotnet/coreclr/commit/
37322ac660acffa1543d8338c118417d48571f1c
Carol Eidt [Thu, 12 Jul 2018 19:51:06 +0000 (12:51 -0700)]
Ensure BuildUse uses the correct reg number
`BuildUse` was setting the regNumber for all of the uses of a multi-reg node to the main/first regNum. This was missed because this results in a def/use conflict on that reg (the def was set correctly), which is generally resolved in favor of the def. The exception is when there is a kill of the register in between, in which case the use tries to allocate the register its been assigned, causing the `farthestRefPhysRegRecord != nullptr` assert (aka "a register can't be found to spill").
This fixes the specific issue, and adds additional asserts to identify future/additional such issues.
The new asserts depend upon all the regNums being appropriately when/if any are set, which wasn't always the case prior to register allocation.
Fix dotnet/coreclr#18153
Commit migrated from https://github.com/dotnet/coreclr/commit/
b4470d75fa6ab4461607f2a0135cd118f466c2ef
Matt Warren [Mon, 16 Jul 2018 18:50:49 +0000 (19:50 +0100)]
Fixing markdown list formatting (dotnet/coreclr#18936)
Commit migrated from https://github.com/dotnet/coreclr/commit/
c389865009b7f000a7d477edf7a3f3fe6c877d77
Jan Kotas [Mon, 16 Jul 2018 18:40:26 +0000 (11:40 -0700)]
Fix disabled test name (dotnet/coreclr#18932)
System.ComponentModel.Composition.Tests use friends visibility. The fixed drop does not work well for testing of the live bits.
Commit migrated from https://github.com/dotnet/coreclr/commit/
d3fe9a89a769df0bfcfa65a4e97eeb6b081626a7
Eugene Rozenfeld [Mon, 16 Jul 2018 18:24:54 +0000 (11:24 -0700)]
Improve narrowing of GT_AND nodes. (dotnet/coreclr#18916)
This is a follow-up to to dotnet/coreclr#18816 which resulted in a 6 byte regression in one of the
desktop SuperPMI methods. This change removes that regression and adds a number
of improved diffs.
If we are narrowing GT_AND to an unsigned type and one of the operands can be narrowed
into that type, the result of the GT_AND will also fit into that type and can be narrowed.
The same is true if one of the operands is an int const and can be narrowed into 'dsst'.
The change also ensures that we don't call optNarrowTree(false) more than once on each of the
GT_AND operands.
Commit migrated from https://github.com/dotnet/coreclr/commit/
c0bad3c66218f61dd3e4f151b9d2eae22c6d88d2
Egor Chesakov [Mon, 16 Jul 2018 16:41:25 +0000 (09:41 -0700)]
Mark RuntimeEventSourceTest as GCStressIncompatible (dotnet/coreclr#18911)
Commit migrated from https://github.com/dotnet/coreclr/commit/
d9641a0f78aaa6bf68156888ce95755f16c07dbf
Vance Morrison [Mon, 16 Jul 2018 16:40:31 +0000 (09:40 -0700)]
Add back in code deleted in .NET Core port.
This fixes shutdown race bug that CoreCLR port reintroduced.
Basically the fix needed some Appdomain APIs that were probably
not in .NET Core 1.0 so they were removed. However they are
back in .NET Core 2.0 so it is trivial to simply 'do the right thing', and
put the shutdown logic back.
See comment in front of DisposeOnShutdown for more.
Commit migrated from https://github.com/dotnet/coreclr/commit/
f4b36aa998ead4dddea6c29de6ac0a393fb138a8
Stephen Toub [Mon, 16 Jul 2018 13:59:55 +0000 (06:59 -0700)]
Improve throughput of UInt32/UInt64 integer parsing (dotnet/coreclr#18930)
As was recently done for Int32/Int64, ports the Utf8Parser approach to parsing to UInt32/UIn64.{Try}Parse, specifically for NumberStyles.Integer (the default).
Also fixes an issue discovered in the previous Int32/Int64 changes, where if the input both has an overflow and has a formatting error (e.g. Int32.Parse("12345678910blah"), we would end up throwing whichever error was hit first, which is a change from .NET Core 2.1 and netfx. The FormatException needs to be preferred over the OverflowException, which just means we can't bail early when overflow is detected.
Commit migrated from https://github.com/dotnet/coreclr/commit/
ce0a2617d40bc217b8e0a2137e340afe585afcb1
Jan Kotas [Mon, 16 Jul 2018 13:45:17 +0000 (06:45 -0700)]
CoreFX test fixes (dotnet/coreclr#18929)
- Unify Windows and Unix exclusion files to avoid duplication
- Disable outdated tests against live CoreFX
Commit migrated from https://github.com/dotnet/coreclr/commit/
309e9054841f71cbbfad3c9a091724f2978eef3d
Stephen Toub [Sun, 15 Jul 2018 19:44:54 +0000 (15:44 -0400)]
Remove unused resource strings from System.Private.CoreLib (dotnet/coreclr#18808)
Commit migrated from https://github.com/dotnet/coreclr/commit/
ca6c32e70be1491ace0b7241a2bfe71eac15f831
Koundinya Veluri [Sun, 15 Jul 2018 18:18:06 +0000 (11:18 -0700)]
Expose SpinWait.SpinOnce(int sleep1Threshold) overload (dotnet/coreclr#18204)
Expose SpinWait.SpinOnce(int sleep1Threshold) overload
To allow customizing the spin count threshold for Sleep(1) usage, and to allow disabling the use of Sleep(1).
API review: https://github.com/dotnet/corefx/issues/29623
Part of fix for https://github.com/dotnet/corefx/issues/29595
Commit migrated from https://github.com/dotnet/coreclr/commit/
28a8d423efc79c1cb2b23fa21747c5f7c5f7a057
Stephen Toub [Sun, 15 Jul 2018 17:39:12 +0000 (13:39 -0400)]
Temporarily allow combase.dll!RoGetActivationFactory (dotnet/coreclr#18922)
Commit migrated from https://github.com/dotnet/coreclr/commit/
2af68c4ae38d6a46eb12a6a8de0ffb5eddf8169c
Russ Keldorph [Sat, 14 Jul 2018 23:44:49 +0000 (16:44 -0700)]
Revert "Fix some failures when using build-test.sh"
This reverts commit dotnet/coreclr@
2bffb76443919b0ad0be8bff398d9a962a3a5f6d.
Commit migrated from https://github.com/dotnet/coreclr/commit/
184c3504e763ea7147505a8d49cb54b43cc82d78
russ [Fri, 6 Jul 2018 21:49:47 +0000 (21:49 +0000)]
Fix some failures when using build-test.sh
1) Remove a workaround for broken msbuild RelativePath API that is
apparently no longer necessary and doesn't seem to work anymore anyway.
2) Fix a casing issue in some test projects. I'm not sure why this hasn't
been fixed yet.
Commit migrated from https://github.com/dotnet/coreclr/commit/
2bffb76443919b0ad0be8bff398d9a962a3a5f6d
Wraith2 [Sat, 14 Jul 2018 19:13:38 +0000 (20:13 +0100)]
Remove version increment from Dictionary<K,V>.Remove overloads (dotnet/coreclr#18854)
* remove version increment from Remove overloads
* add temporary test exclusions
* fixup test exclusion names
* modify test exclusions
Commit migrated from https://github.com/dotnet/coreclr/commit/
a6b9bbbf284496f87c02555aca29ff8f2b762805
Bruce Forstall [Thu, 12 Jul 2018 20:34:06 +0000 (13:34 -0700)]
Enable 'jitnosimd' job for Linux/arm64 (dotnet/coreclr#18890)
Fixes dotnet/coreclr#18174
Commit migrated from https://github.com/dotnet/coreclr/commit/
716227cf1eba3d16d91199a48dfdc23a189d18c1
Bruce Forstall [Wed, 11 Jul 2018 18:32:41 +0000 (11:32 -0700)]
Enable Windows ARM64 corefx jobs
Disable various tests that currently fail, tagged with issues
describing the failures.
Commit migrated from https://github.com/dotnet/coreclr/commit/
827b5f15e2fd9d642491ebb21bce8013d9937083
Stephen Toub [Fri, 13 Jul 2018 21:43:34 +0000 (17:43 -0400)]
Improve Int32/Int64 {Try}Parse performance for NumberStyles.Integer (dotnet/coreclr#18897)
Special-case the default NumberStyles.Integer format to improve the throughput of Int32/Int64.{Try}Parse. Ports the implementation from Utf8Parser, modifying it to accomodate the additional cases needed for Int32/Int64, e.g. culture impact on positive and negative signs, trailing zeros, leading and trailing whitespace, prohibiting additional characters at the end, etc.
Commit migrated from https://github.com/dotnet/coreclr/commit/
78fc03b0755ac3c428d5f6c8f30b50af65d0e0a8
Andy Ayers [Fri, 13 Jul 2018 20:21:27 +0000 (13:21 -0700)]
JIT: optimize some cases of unused structs (dotnet/coreclr#18819)
In some cases CSC will use `ldobj; pop` to null check a pointer to
struct. This change avoids copying the struct value for such constructs.
Codegen may still redundantly null check, if there are multiple such checks
in a method.
Fixes dotnet/coreclr#18710
Commit migrated from https://github.com/dotnet/coreclr/commit/
dc7492e227f0ff1a5054337091c5ce7105e82491
Bruce Forstall [Fri, 13 Jul 2018 18:02:48 +0000 (11:02 -0700)]
Remove unnecessary R2R jobs (dotnet/coreclr#18902)
Commit migrated from https://github.com/dotnet/coreclr/commit/
454dcdad0b04980e1085acb1c16f386c4b450a60
Andon Andonov [Fri, 13 Jul 2018 16:57:38 +0000 (09:57 -0700)]
Enable logs (dotnet/coreclr#18881)
Commit migrated from https://github.com/dotnet/coreclr/commit/
552a24d2dbdb9f51f1aa7fe51302e07947bdb1cd
Egor Chesakov [Fri, 13 Jul 2018 16:10:25 +0000 (09:10 -0700)]
Remove System.Security.Cryptography.X509Certificates.Tests from Windows arm exclusion list (dotnet/coreclr#18807)
Commit migrated from https://github.com/dotnet/coreclr/commit/
4bd9b33790ca8be557f3cdc6771e61c890a1a60a
Mike McLaughlin [Fri, 13 Jul 2018 06:45:39 +0000 (23:45 -0700)]
Add prefix to DAC's PAL exports for alpine (dotnet/coreclr#18873)
Added some cmake logic to create assembly include mapping files. One that maps the
prefixed name (DAC_foo) to the actual name (foo) which is included in the DAC module
and another that maps the actual name to the prefixed name that is included in the SOS,
DBI and createdump modules.
The data exports like IID_IUnknown are not prefixed and don't need to be (immutable static data).
There were some C++ exports functions exported with their decorated names in
the CatchHardwareExceptionHolder and NativeExceptionHolderBase classes. Created
PAL_* style export functions that implements the code.
Fix lldb plugin cmake file to use LLDB_H/LLDB_LIB env vars to build it.
Commit migrated from https://github.com/dotnet/coreclr/commit/
b89e2305a2c953272c997242d01b66b1bb1e661e
Bruce Forstall [Fri, 13 Jul 2018 05:31:48 +0000 (22:31 -0700)]
Disable 3 long-running tests and 1 failing test (dotnet/coreclr#18896)
The following tests exceed the default timeout, especially on Debug builds:
```
GC\Features\LOHCompaction\lohcompactapi\lohcompactapi.cmd
GC\API\NoGCRegion\NoGC\NoGC.cmd
GC\API\GC\GetAllocatedBytesForCurrentThread\GetAllocatedBytesForCurrentThread.cmd
```
Mark them LONG_RUNNING.
The following test asserts in the JIT currently:
```
JIT\HardwareIntrinsics\Arm64\Simd\Simd.cmd
```
Disable it with issue dotnet/coreclr#18895
Commit migrated from https://github.com/dotnet/coreclr/commit/
0e22b107e811bc8ab7f3c1caf0943ef760d9f53d
Egor Chesakov [Fri, 13 Jul 2018 00:41:17 +0000 (17:41 -0700)]
Remove dead/unreachable code from ARM32 and ARM64 emitters (dotnet/coreclr#18878)
Commit migrated from https://github.com/dotnet/coreclr/commit/
47e106edc305c68651291d3862891ec6ad9f3ad6
Brian Sullivan [Fri, 13 Jul 2018 00:12:52 +0000 (17:12 -0700)]
Merge pull request dotnet/coreclr#18887 from briansull/atomic-fix
Include the processor atomic operations in the OperIsStore category
Commit migrated from https://github.com/dotnet/coreclr/commit/
f3ab7e073a2c7720791b44638a99c43647da0a0a
Eugene Rozenfeld [Thu, 12 Jul 2018 20:42:00 +0000 (13:42 -0700)]
Fixes for bugs in fgMorphCast and optNarrowTree. (dotnet/coreclr#18816)
The fix under NARROW_IND prevents transformation of, e.g.,
CAST int <- ushort <- int
CLS_VAR byte
into
CLS_VAR byte.
With the fix the CAST is not removed.
The fix under GT_CAST prevents transformation of, e.g.,
CAST int <- ushort <- long
CAST long <- int
expr short
into
expt short.
With the fix it gets transformed into
CAST int <- ushort <- int
expr short
Block cast optimizations in fgMorphCast if the cast expression is an
active CSE candidate.
Update cast expression value numbers when a cast is removed.
Fixes dotnet/coreclr#18238, dotnet/coreclr#18850.
No diffs in frameworks and tests (pmi and crossgen, x64 and x86), except for the added test cases.
Commit migrated from https://github.com/dotnet/coreclr/commit/
4929ebab22bcef4f6ff39acbcdb333ffeb98f24a
Brian Sullivan [Thu, 12 Jul 2018 19:49:08 +0000 (12:49 -0700)]
Added the repro test case
Commit migrated from https://github.com/dotnet/coreclr/commit/
89968de88fa5d036f86a95772cd292d44ab4b23c
Brian Sullivan [Thu, 12 Jul 2018 18:11:31 +0000 (11:11 -0700)]
Include the processor atomic operations in the OperIsStore category
THe atomic operations are GT_CMPXCHG, GT_LOCKADD, GT_XCHG, GT_XADD
Commit migrated from https://github.com/dotnet/coreclr/commit/
8747e2dc98d46d8fbc3c0677cf5d40c05533b3ce
Brian Robbins [Thu, 12 Jul 2018 17:26:12 +0000 (10:26 -0700)]
Don't trim compiler-generated anonymous types. (dotnet/coreclr#18835)
Commit migrated from https://github.com/dotnet/coreclr/commit/
5d8b97af6d781a00d2e5da47b43db6879b98ae71
Andon Andonov [Thu, 12 Jul 2018 04:39:57 +0000 (21:39 -0700)]
CoreFX CI Unix (dotnet/coreclr#18753)
* Full Unix test support
* Remove Test helper build from build-test
Add msg prefix
Change if condition
* Change Linux URL
* Syntax error
* Fix Merge Conflict
* Address PR Feedback
* Remove duplicate generate_testhost call
* Address PR comments
* Clean up exclusion list
* Disable Client_ReadWriteCancelledToken_Throws_OperationCanceledException
* Disable all flavors of CancelledToken_Throws_OperationCanceledException
* Disable X509StoreTests.Constructor_DefaultStoreName - flaky on OSX
* Update documentation with Linux instructions and workflow
* Disable EventWaitHandleTests.Ctor_InvalidMode - failing on OSX
* Disable Server_ReadWriteCancelledToken_Throws_OperationCanceledException
Commit migrated from https://github.com/dotnet/coreclr/commit/
e3ccef1c21978fa682bc76fd7626dd7ae9871cc0
Fei Peng [Wed, 11 Jul 2018 22:55:37 +0000 (15:55 -0700)]
Fix VEX.vvvv encoding for AVX.BlendVariable
Commit migrated from https://github.com/dotnet/coreclr/commit/
a03b08ab38186db8bb30a412bc73165810140119
Stephen Toub [Thu, 12 Jul 2018 02:30:56 +0000 (22:30 -0400)]
Remove TODO comment from CancellationTokenRegistration.Unregister (dotnet/coreclr#18880)
Commit migrated from https://github.com/dotnet/coreclr/commit/
dd32971158d5309179df93adfce62140bdc79fbd
Bruce Forstall [Thu, 12 Jul 2018 00:17:50 +0000 (17:17 -0700)]
Merge pull request dotnet/coreclr#18862 from BruceForstall/DisableLongRunningGCStress3Tests
Disable tests for Windows/arm64 with GCStress=3 that take too long
Commit migrated from https://github.com/dotnet/coreclr/commit/
af2bddef830d858160d19dc2aab6fb790f4c5020
Juan Hoyos [Wed, 11 Jul 2018 22:36:41 +0000 (15:36 -0700)]
Merge pull request dotnet/coreclr#18859 from hoyosjs/fix-debug-gscookie-check
GS cookie check fix for debugger stackwalks port
Commit migrated from https://github.com/dotnet/coreclr/commit/
c82bd22d4bab4369c0989a1c2ca2758d29a0da36
Jan Kotas [Wed, 11 Jul 2018 06:46:39 +0000 (23:46 -0700)]
Optimize Double/Single.IsNegative
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
874b694fa31c1ce92491f2191ed4a006c51ae2d4
Egor Bogatov [Wed, 11 Jul 2018 06:04:06 +0000 (09:04 +0300)]
Make Number.Parsing.cs BigEndian friendly (dotnet/coreclr#18853)
* Make Number.Parsing.cs BigEndian friendly
* Get rid of DoubleHelper
Commit migrated from https://github.com/dotnet/coreclr/commit/
b3c98d54b3aba980c4ed38e87fd3f7a13e2598ee
Bruce Forstall [Wed, 11 Jul 2018 03:55:39 +0000 (20:55 -0700)]
Merge pull request dotnet/coreclr#18861 from BruceForstall/FixShowLocalloc
Fix ShowLocallocAlignment test for x86
Commit migrated from https://github.com/dotnet/coreclr/commit/
9cd6e82f210aadbc4335f00263dd80fa8dcb44b3
Bruce Forstall [Wed, 11 Jul 2018 03:55:02 +0000 (20:55 -0700)]
Merge pull request dotnet/coreclr#18860 from BruceForstall/ReEnable13731Tests
Re-enable tests for dotnet/coreclr#13731 which was closed long ago
Commit migrated from https://github.com/dotnet/coreclr/commit/
b2abf26c41d1c56a6f86a4241713333e6fd8dd69
Noah Falk [Wed, 11 Jul 2018 01:33:57 +0000 (18:33 -0700)]
Adjust JIT automated testing for tiered compilation (dotnet/coreclr#18828)
Make it explicit that most JIT testing does not use tiered compilation regardless of the runtime default
Clone jitstress1/2 and r2r_jitstress1/2 test modes both with and without tiering.
Move the existing tieredcompilation test modes to have the same periodic scheduling as other jit test runs.
Commit migrated from https://github.com/dotnet/coreclr/commit/
d5db5acff13e973bbe1764ba4cbaff5912df6fba
Bruce Forstall [Wed, 11 Jul 2018 00:39:37 +0000 (17:39 -0700)]
Disable tests for Windows/arm64 with GCStress=3 that take too long
Fixes dotnet/coreclr#15381
Commit migrated from https://github.com/dotnet/coreclr/commit/
08cc9e0805bca1bff1e3b81e53eb3da971299398
Bruce Forstall [Tue, 10 Jul 2018 23:50:54 +0000 (16:50 -0700)]
Fix ShowLocallocAlignment test for x86
The required localloc alignment differs by platform. Teach the test
what the per-platform alignment requirement is.
Fixes dotnet/coreclr#7163
Commit migrated from https://github.com/dotnet/coreclr/commit/
164f9c55ce4fec7b8236ee5c7c1d87de708f394b
Bruce Forstall [Tue, 10 Jul 2018 23:22:48 +0000 (16:22 -0700)]
Re-enable tests for dotnet/coreclr#13731 which was closed long ago
Commit migrated from https://github.com/dotnet/coreclr/commit/
5635ab60e1b8c2cf582e549f6ee336ea6afafd3d
Egor Chesakov [Tue, 10 Jul 2018 23:15:15 +0000 (16:15 -0700)]
Remove random.NextDouble() from JIT/HardwareIntrinsics tests (dotnet/coreclr#18838)
* Add ProjectReference to CoreCLRTestLibrary.csproj in the corresponding C# project files
* Replace usages of random.NextDouble() from GenerateTests.csx with CoreCLRTestLibrary.Generator.GetSingle()/GetDouble()
* Regenerate test files
Commit migrated from https://github.com/dotnet/coreclr/commit/
a211090331c5e4830bb037fb078d199e2234b865
Tomáš Rylek [Tue, 10 Jul 2018 21:48:25 +0000 (23:48 +0200)]
Initial implementation of method fixup parser (dotnet/coreclr#18749)
* Initial implementation of method fixup parser
I'm working on this right now in the CoreRT R2R compiler so I'm
adding the relevant structures and algorithms to the dumper
to let me analyze various R2R files and their method fixups.
I have locally verified that this shows reasonable fixup info
for my Hello World repro compiled both using the CoreRT R2R
compiled and using crossgen.
Thanks
Tomas
* Improvements in signature dumping
Signature dumping was slightly imprecise - the signature field
was named "Section" in the dump and it was displaying a dword,
however signatures are logically arbitrary byte streams.
Sadly I'm aware of no easy way to detect the length of an
arbitrary signature without adding a multitude of dedicated
parsers for the different signature types used by different
fixup / helper types so for now I'm displaying an 8-byte sample.
I have also made the formatting of the import section entries
more compact to make the list easier to read in the presence
of a larger number of fixups and I added support for displaying
the entry offset (as this is what the method fixups indirectly
refer to via the fixup indices).
Thanks
Tomas
* Move NibbleReader into a separate source file
Based on Amy's PR feedback I'm moving NibbleReader into a separate
source file. After all, I have a counterpart NibbleWriter.cs
in the R2R compiler codebase.
Thanks
Tomas
* Remove unnecessary usings from the new NibbleReader.cs file
As an additional bit of cleanup I used the VS refactoring tool
to remove unnecessary usings from the new NibbleReader source file.
Thanks
Tomas
Commit migrated from https://github.com/dotnet/coreclr/commit/
f39809b6e560450daa299d7566ca6d861cb2c270
Tanner Gooding [Tue, 10 Jul 2018 04:46:41 +0000 (21:46 -0700)]
Fixing encodeXmmRegAsIval to ensure the result meets the "fits in imm8" check
Commit migrated from https://github.com/dotnet/coreclr/commit/
52d8382f819cdc66e01c2e2fdd6dd3c6c6cd4fee
Carol Eidt [Tue, 10 Jul 2018 20:33:02 +0000 (13:33 -0700)]
Merge pull request dotnet/coreclr#18805 from CarolEidt/Fix18746
Don't change PUTARG_REG spill type on arm64
Commit migrated from https://github.com/dotnet/coreclr/commit/
eb405392acacf6f5b72601521ec4ac5106d1e2ba
Stephen Toub [Tue, 10 Jul 2018 20:02:06 +0000 (16:02 -0400)]
Fix two issues in Marshal.SecureStringToBSTR (dotnet/coreclr#18851)
1. It wasn't synchronized, even though other operations on SecureString are in order to avoid concurrency problems leading to memory corruption issues (and it's synchronized on netfx).
2. It wasn't throwing an ObjectDisposedException if the instance was disposed.
Commit migrated from https://github.com/dotnet/coreclr/commit/
cb005bd771122d919587c646aaebfce7176b36db
Brian Sullivan [Tue, 10 Jul 2018 20:01:41 +0000 (13:01 -0700)]
Merge pull request dotnet/coreclr#18812 from briansull/fix_610014
Fix 610014
Commit migrated from https://github.com/dotnet/coreclr/commit/
75c64dc83879c87ff0a170eced907f7ed2b8fbd5
Amy [Tue, 10 Jul 2018 18:10:08 +0000 (11:10 -0700)]
Merge pull request dotnet/coreclr#18653 from acmyu/build
R2RDump - Build integration
Commit migrated from https://github.com/dotnet/coreclr/commit/
7920cf173d88bc5c56c7f8ab856dd91627dd0832
Juan Sebastian Hoyos Ayala [Mon, 9 Jul 2018 21:28:57 +0000 (14:28 -0700)]
GS cookie check fix for debugger stackwalks port
This bug fix is a port from the equivalent fix in framework. The
debugger tried performing a stackwalk in the epilog due to the JIT
incorrectly reporting epilogue information. This caused an invalid
GS cookie to be checked and caused the debugger to crash. A flag was
added to allow debug stackwalks to skip the cookie check.
Commit migrated from https://github.com/dotnet/coreclr/commit/
32741b9e97f901242394dfc682c228a5d810f454
Tanner Gooding [Tue, 10 Jul 2018 01:42:01 +0000 (18:42 -0700)]
Regenerating the x86 HWIntrinsic tests to cover struct field scenarios
Commit migrated from https://github.com/dotnet/coreclr/commit/
6de41e2f4ffd8971d767e2aadb195f8c51286479
Tanner Gooding [Tue, 10 Jul 2018 01:41:28 +0000 (18:41 -0700)]
Updating the x86 HWIntrinsic test templates to test struct field scenarios
Commit migrated from https://github.com/dotnet/coreclr/commit/
2d7baf26bcb149610f261b7eeee5d59c19cfc1be
Jan Kotas [Tue, 10 Jul 2018 11:13:04 +0000 (04:13 -0700)]
Move BinaryReader to shared CoreLib partition (dotnet/coreclr#18845)
Commit migrated from https://github.com/dotnet/coreclr/commit/
dab0d7108e8b0091e1d7f526cab7dc9bcb71710a
Amy [Tue, 10 Jul 2018 08:49:54 +0000 (01:49 -0700)]
Exclude failing CoreFx test (dotnet/coreclr#18844)
Commit migrated from https://github.com/dotnet/coreclr/commit/
39229d58944ce415108e1f6e59a4ab5c77e93226
Brian Sullivan [Fri, 6 Jul 2018 21:33:36 +0000 (14:33 -0700)]
Updated fix for VSO 610014
Commit migrated from https://github.com/dotnet/coreclr/commit/
295e24c01618ff3196e7bd7df60c21099ef28872
Tanner Gooding [Sat, 7 Jul 2018 20:02:32 +0000 (13:02 -0700)]
Fixing a call to emitIns_SIMD_R_R_AR_R to pass arguments in the correct order
Commit migrated from https://github.com/dotnet/coreclr/commit/
23f7cb061460fc238992845e5757b1516f64c5cb
Amy Yu [Mon, 9 Jul 2018 23:36:39 +0000 (16:36 -0700)]
Exclude failing CoreFx test
Commit migrated from https://github.com/dotnet/coreclr/commit/
0cde2fb55bf7a809b207dbf04612bc9db808df62
Tanner Gooding [Sat, 7 Jul 2018 14:11:51 +0000 (07:11 -0700)]
Updating InstructionSet_BMI1/2 to be controlled by the COMPlus_EnableAVX flag and fixing formatting issues
Commit migrated from https://github.com/dotnet/coreclr/commit/
52f9c8a5258267168c97ebb54bce729b26ea3c30
Tanner Gooding [Fri, 6 Jul 2018 16:29:33 +0000 (09:29 -0700)]
Adding tests for the ParallelBitDeposit and ParallelBitExtract Bmi2 HWIntrinsics
Commit migrated from https://github.com/dotnet/coreclr/commit/
d5901fb25c06cfbf01961486f736f90ad254a06d
Tanner Gooding [Fri, 6 Jul 2018 15:31:10 +0000 (08:31 -0700)]
Implementing the ParallelBitDeposit and ParallelBitExtract Bmi2 HWIntrinsics
Commit migrated from https://github.com/dotnet/coreclr/commit/
5ec86ef02448839f02bd94dad8ef662e55770a19
Tanner Gooding [Fri, 6 Jul 2018 06:36:30 +0000 (23:36 -0700)]
Adding tests for the AndNot, ExtractLowestSetBit, GetMaskUpToLowestSetBit, and ResetLowestSetBit x86 HWIntrinsics
Commit migrated from https://github.com/dotnet/coreclr/commit/
a1a58001acecb3779f06087d93470bcf515c2cf6
Tanner Gooding [Fri, 6 Jul 2018 06:34:58 +0000 (23:34 -0700)]
Implementing the AndNot, ExtractLowestSetBit, GetMaskUpToLowestSetBit, and ResetLowestSetBit x86 HWIntrinsics
Commit migrated from https://github.com/dotnet/coreclr/commit/
a27def0c523fab5468bd25d9f72b069b07fc3317
Tanner Gooding [Wed, 4 Jul 2018 23:32:55 +0000 (16:32 -0700)]
Adding tests for the x86 TrailingZeroCount HWintrinsic
Commit migrated from https://github.com/dotnet/coreclr/commit/
e60ad4d0db2a899fc52c30382deac063cef0a942
Tanner Gooding [Wed, 4 Jul 2018 23:32:27 +0000 (16:32 -0700)]
Implementing the x86 TrailingZeroCount HWIntrinsic
Commit migrated from https://github.com/dotnet/coreclr/commit/
a58184ff85db3c60014dbc5d05831131c2355fb0
Tanner Gooding [Wed, 4 Jul 2018 14:55:28 +0000 (07:55 -0700)]
Renaming ScalarUnOpTest to ScalarSimdUnOpTest
Commit migrated from https://github.com/dotnet/coreclr/commit/
7bec88e95e9836e37cc62fb7797e2addf507fc23
Viktor Hofer [Mon, 9 Jul 2018 21:41:07 +0000 (23:41 +0200)]
Fix serialization type in NotFiniteNumberException (dotnet/coreclr#18833)
Commit migrated from https://github.com/dotnet/coreclr/commit/
fca544faf6e89b934ef7db71659968c459d0b5ed
Amy Yu [Tue, 3 Jul 2018 19:59:22 +0000 (12:59 -0700)]
Fix test errors
Commit migrated from https://github.com/dotnet/coreclr/commit/
98dd60aa14d4f52cc88b7f47379b1f90948ca26f
Amy Yu [Tue, 3 Jul 2018 19:13:51 +0000 (12:13 -0700)]
Use BuildManagedTools argument instead of environment variable, removed unneeded flags
Commit migrated from https://github.com/dotnet/coreclr/commit/
a7358133ec2544de4c4ddce5a1f75a8f449cb2ef
Amy Yu [Tue, 3 Jul 2018 00:45:00 +0000 (17:45 -0700)]
Add R2RDump to build.proj, running dotnet restore before target build
Commit migrated from https://github.com/dotnet/coreclr/commit/
a5fbfa57fe7c9dc83d7f7bd4b464b97ffeed35d4
Andon Andonov [Mon, 9 Jul 2018 17:45:24 +0000 (10:45 -0700)]
CoreFX CI Unix Staging commit (dotnet/coreclr#18750)
* Modify netci.groovy
* Add script exit codes
* Ad PR Triggers for Ubuntu and OSX10.12
* Remove release PR triggers
* Rename arch
Remove IsJitStressTestScenario assert
* Add correct asserts
* Reformat conditions and add triggers for Release/Checked/Debug
* Change %WORKSPACE% to \${WORKSPACE}
Commit migrated from https://github.com/dotnet/coreclr/commit/
7baedfdafb6979f48026ed7e01de4b6cc14b3bba
HumanEquivalentUnit [Mon, 9 Jul 2018 15:22:38 +0000 (16:22 +0100)]
Fix a comment in the string.ToLower() method (dotnet/coreclr#18832)
Line 307 is lowercasing the current character, but the comment says "store the current character, upper-cased", fixed comment to say "store the current character, lower-cased".
(Equivalent and correct "upper-cased" comment is on line 252)
Commit migrated from https://github.com/dotnet/coreclr/commit/
4349690ec1c81a28c14ba2801240c94f3f79dec4
Jan Kotas [Mon, 9 Jul 2018 13:50:13 +0000 (06:50 -0700)]
Undo unnecessary BinaryReader::ReadOneChar/InternalReadOneChar split (dotnet/coreclr#18830)
This method had misleading comment that this split is required for performance. It was the case when
InternalReadOneChar was called from other places in CoreLib. These calls do not exist anymore.
Commit migrated from https://github.com/dotnet/coreclr/commit/
4aac6883e54d53b41567b6b999559901d7efd4ec
Anirudh Agnihotry [Mon, 9 Jul 2018 09:21:55 +0000 (02:21 -0700)]
Moved ManualResetEventSlim to shared (dotnet/coreclr#18799)
* Moved ManualResetEventSlim to shared
* covert System.int to System.Int32
Commit migrated from https://github.com/dotnet/coreclr/commit/
82828f73b8fb3dbfb578c7206606a465f2cfeeb1
Rich Lander [Sun, 8 Jul 2018 21:56:41 +0000 (14:56 -0700)]
Correct AssemblyLoadContext comment (dotnet/coreclr#18809)
Commit migrated from https://github.com/dotnet/coreclr/commit/
13a7e7044b475caac8219f9eb6d34f6fd892e970
Viktor Hofer [Sun, 8 Jul 2018 17:41:40 +0000 (19:41 +0200)]
LastIndexOf corner case fix when span is empty (dotnet/coreclr#18826)
Commit migrated from https://github.com/dotnet/coreclr/commit/
018dc20cc8f5815867c30b22a4973702ce4716c4
Viktor Hofer [Sun, 8 Jul 2018 13:41:26 +0000 (15:41 +0200)]
Fix Span LastIndexOf empty value handling
Commit migrated from https://github.com/dotnet/coreclr/commit/
3f4e0c7d2a281c2232fde6421b4a9fc18e889eac
Anirudh Agnihotry [Sat, 7 Jul 2018 01:47:46 +0000 (18:47 -0700)]
TargetFrameworkName property initialized (dotnet/coreclr#18814)
Commit migrated from https://github.com/dotnet/coreclr/commit/
2dd9ba545f9bca84bae2d1181d6327f4e8d470a7
Stephen Toub [Fri, 6 Jul 2018 16:12:54 +0000 (12:12 -0400)]
Improve DateTime{Offset}.ParseExact performance for "O"/"o" roundtrip format (dotnet/coreclr#18800)
Ports the code used by Utf8Parser, modified to support things Utf8Parser doesn't but DateTime{Offset{.ParseExact do, such as single-digit offset hours.
Commit migrated from https://github.com/dotnet/coreclr/commit/
e650d42d14f0b701fbbe7fb8f4eb05616c0cf53d
Bruce Forstall [Fri, 6 Jul 2018 16:00:49 +0000 (09:00 -0700)]
Merge pull request dotnet/coreclr#18795 from BruceForstall/RemoveArmemJobs
Remove Ubuntu/Ubuntu16.04 emulator CI jobs
Commit migrated from https://github.com/dotnet/coreclr/commit/
a0ad19ec7305542fd5d1cc63a3a5d791bde63ae8
Carol Eidt [Fri, 6 Jul 2018 14:00:03 +0000 (07:00 -0700)]
Don't change PUTARG_REG type on arm64
Fix dotnet/coreclr#18746
Commit migrated from https://github.com/dotnet/coreclr/commit/
025a975e67b9069c62a62803ed5e51588db128bf