Mike Danes [Sat, 15 Apr 2017 07:46:23 +0000 (10:46 +0300)]
Narrow TEST instructions when possible
Commit migrated from https://github.com/dotnet/coreclr/commit/
06fba1351fdff20de4ca1f8f99913b4fe83bf560
Aditya Mandaleeka [Wed, 12 Apr 2017 19:05:11 +0000 (12:05 -0700)]
Merge pull request dotnet/coreclr#10911 from adityamandaleeka/handle_table_local_gc_hide_internals
[Local GC] Hide handle table internals from VM side
Commit migrated from https://github.com/dotnet/coreclr/commit/
82e4aacd5a2a56c247998a242ed3828717de2228
Koundinya Veluri [Wed, 12 Apr 2017 17:33:52 +0000 (10:33 -0700)]
Fix closed delegate deserialization to account for extension methods (dotnet/coreclr#10901)
Functional fix for dotnet/coreclr#9597:
- The code was incorrectly assuming that the serialized target type info refers to the target object's type; it actually refers to the method's reflected type, which may not be the same type when it's an extension method
Commit migrated from https://github.com/dotnet/coreclr/commit/
45d0444a05f0bbceb2f259ce483c080f0991be1b
Bruce Forstall [Wed, 12 Apr 2017 17:12:18 +0000 (10:12 -0700)]
Merge pull request dotnet/coreclr#10243 from sdmaclea/PR-CALLI-LOWERING-ALLOWED
Allow target of calli to be lowered to ldc.i4
Commit migrated from https://github.com/dotnet/coreclr/commit/
cdb88f49038a7dd2f33f5ede0f519c00ff5be503
Atsushi Kanamori [Wed, 12 Apr 2017 16:50:26 +0000 (09:50 -0700)]
NS2.0 AssemblyName.ReferenceMatchesDefinition() (dotnet/coreclr#10919)
This api was broken from its debut in 2.0 (and yet somehow
scored a 2.9% on .NET api catalog)
https://connect.microsoft.com/VisualStudio/feedback/details/752902/assemblyname-referencematchesdefinition-returns-true-even-though-the-parameters-dont-match
In 2012, the MSDN docs were changed to match its broken behavior:
Return Value
Type: System.Boolean
true if the simple assembly names are the same; otherwise, false.
Remarks
The comparison depends only on the simple assembly name. It ignores version, culture, and public key token.
A more accurate description would be:
This api takes the simple names of the ref and def.
Then it parses the simple names *as if they were*
full-blown assembly names with optional Version, Culture
and PKT (!)
Then it applies a RefToDef test to that name using a test
that's quite separate from the one used by the actual
CoreCLR loader (so any similarities between
it and the actual binding rules is purely coincidental.)
Oh, and that code assumes the Def name came from trusted
sources so if it's has a null Culture property, it NULL-AV's.
We could replicate this behavior on CoreRT (relying on
its own AssemblyBinder) but the more I progressed, the
more the venture failed to pass the laugh test (though
at least we got a nice AssemblyBinder cleanup
as a side effect.)
So what we'll do is make the api behavior match the
MSDN description (and likely come close enough to the compat bar)
but in a more straightforward fashion.
(The RefMatchesDef routine is used on one case - to
match assembly refs against a list of friend-access
assembly defs. So it's not quite dead code though
it probably should be.)
Commit migrated from https://github.com/dotnet/coreclr/commit/
f1f5986528158533874cd1f4d4a90a15a374d68b
Bruce Forstall [Wed, 12 Apr 2017 16:17:17 +0000 (09:17 -0700)]
Merge pull request dotnet/coreclr#10904 from BruceForstall/ArmMergeCodegenFuncs
Merge similar arm32/arm64 codegen functions
Commit migrated from https://github.com/dotnet/coreclr/commit/
1211556a7d7b188bd2d2b8a769fd17f110cf7f8d
Jonghyun Park [Wed, 12 Apr 2017 16:02:35 +0000 (01:02 +0900)]
[x86/Linux] Funclet-based synchronization (dotnet/coreclr#10791)
* [x86/Linux] Funclet-based synchronization
* Fix x86/Windows build error
* Revise per feedback
* Fix format error
Commit migrated from https://github.com/dotnet/coreclr/commit/
f9d39599448fc89cd48b0a55a34f5d5fded7fa42
Bruce Forstall [Wed, 12 Apr 2017 16:00:34 +0000 (09:00 -0700)]
Merge pull request dotnet/coreclr#10852 from mskvortsov/ryujit-arm32-ldst-offset
[RyuJIT/ARM32] Encodable offsets for ld/st
Commit migrated from https://github.com/dotnet/coreclr/commit/
f00dfaf7bf0c137ec904a9d3a480a55e3f9f79a1
dotnet bot [Wed, 12 Apr 2017 15:05:37 +0000 (08:05 -0700)]
Update CoreClr to preview1-25212-04 (dotnet/coreclr#10879)
Commit migrated from https://github.com/dotnet/coreclr/commit/
e117bea8ce2e9f713351b184feac7dd780753a39
Jan Kotas [Wed, 12 Apr 2017 02:33:08 +0000 (19:33 -0700)]
Fix resource string name
Commit migrated from https://github.com/dotnet/coreclr/commit/
139589d1c3988e7150926c187a81cb6427370b4e
Jan Kotas [Wed, 12 Apr 2017 01:18:07 +0000 (18:18 -0700)]
Delete moved files
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
fa73128a92577d5e1baee3877f71f5c1adac2bcd
Jiyoung Giuliana Yun [Wed, 12 Apr 2017 12:11:03 +0000 (21:11 +0900)]
Change default clang version to clang3.9 in cross build (dotnet/coreclr#10889)
If we use clang3.9 version, we will use O3 option for optimization.
Otherwise, use O1 option as before.
Commit migrated from https://github.com/dotnet/coreclr/commit/
2b23f5ec43dea13ad17caa2d6d2883b2a00172e7
Mikhail Skvortcov [Wed, 12 Apr 2017 06:18:08 +0000 (09:18 +0300)]
RyuJIT/ARM32: encodable offsets for ld/st
Commit migrated from https://github.com/dotnet/coreclr/commit/
21b64422dc80a21eee8dfb8a64b9136ef7a0adcc
Aditya Mandaleeka [Wed, 12 Apr 2017 01:49:44 +0000 (18:49 -0700)]
Rename overloaded "table" to "store" for VM side concept.
Commit migrated from https://github.com/dotnet/coreclr/commit/
ab43a5fbeccca1e4948dd140592361fe7c3335c3
Hyeongseok Oh [Wed, 12 Apr 2017 01:54:52 +0000 (10:54 +0900)]
Fix CI tizen build error (dotnet/coreclr#10909)
Fix CI tizen build error caused by chmod
Commit migrated from https://github.com/dotnet/coreclr/commit/
737ae7288bfd1537525b76b01edf21cba868fa9c
Aditya Mandaleeka [Wed, 12 Apr 2017 01:28:03 +0000 (18:28 -0700)]
Hide knowledge of handle table buckets and home heaps from VM side.
Commit migrated from https://github.com/dotnet/coreclr/commit/
3e6334b8797731bc24a2b9c69a7b7073a92b66a9
Aditya Mandaleeka [Wed, 12 Apr 2017 01:08:08 +0000 (18:08 -0700)]
Delete Ref_ContainHandle and ContainsOBJECTHANDLE.
Commit migrated from https://github.com/dotnet/coreclr/commit/
bf7cf40e14b8cf35c68be089735dd16081db9dc4
Aditya Mandaleeka [Wed, 12 Apr 2017 01:05:05 +0000 (18:05 -0700)]
Add GetNewHandleTable and GetGlobalHandleTable to interface.
Commit migrated from https://github.com/dotnet/coreclr/commit/
734f13c964610d1f4fee08611beca1aa02de0082
Aditya Mandaleeka [Wed, 12 Apr 2017 00:58:14 +0000 (17:58 -0700)]
Remove GetHandleTableForHandle and add CreateDuplicateHandle.
Commit migrated from https://github.com/dotnet/coreclr/commit/
ea22d55fc0392cf858d4c1c17d504523a1e18732
Aditya Mandaleeka [Wed, 12 Apr 2017 00:50:13 +0000 (17:50 -0700)]
Replace GetHandleTableContext with GetHandleContext.
Commit migrated from https://github.com/dotnet/coreclr/commit/
6f013232079c2a2dd9f0f58362443b5ec5b43c15
Aditya Mandaleeka [Wed, 12 Apr 2017 01:27:23 +0000 (18:27 -0700)]
Merge pull request dotnet/coreclr#10882 from adityamandaleeka/double_init_appdomain_creation
Remove double initialization of variables in app domain creation
Commit migrated from https://github.com/dotnet/coreclr/commit/
dcc8141160f4145e3feb6b2dac3b6f67042ecf92
Aditya Mandaleeka [Wed, 12 Apr 2017 00:53:56 +0000 (17:53 -0700)]
Merge pull request dotnet/coreclr#10877 from adityamandaleeka/handle_table_local_gc_nullchecks
[Local GC] Move handle null checking code to VM side
Commit migrated from https://github.com/dotnet/coreclr/commit/
7649795c20a829e2a09c1601a42a9d70d0b52fe6
Jan Kotas [Wed, 12 Apr 2017 00:44:40 +0000 (17:44 -0700)]
Move files to shared CoreLib partition (dotnet/coreclr#10885)
Commit migrated from https://github.com/dotnet/coreclr/commit/
c85c19baef5edf867c3a9a217cbe235a892d0c1e
Aditya Mandaleeka [Wed, 12 Apr 2017 00:36:38 +0000 (17:36 -0700)]
Merge pull request dotnet/coreclr#10816 from adityamandaleeka/handle_table_local_gc_init
[Local GC] Move handle destruction code to IGCHandleTable
Commit migrated from https://github.com/dotnet/coreclr/commit/
dfa6c6f442e1cf5a49b6a97c02bbb83373920af7
William Godbe [Wed, 12 Apr 2017 00:03:05 +0000 (17:03 -0700)]
Merge pull request dotnet/coreclr#10907 from wtgodbe/BuildTypeReporting2
Pass null instead of empty for PB_BuildType
Commit migrated from https://github.com/dotnet/coreclr/commit/
79727651f0cab62c46cb1fe34e12f2122d6d554c
wtgodbe [Wed, 12 Apr 2017 00:02:47 +0000 (17:02 -0700)]
Pass null instead of empty for PB_BuildType
Commit migrated from https://github.com/dotnet/coreclr/commit/
7d9db6e76b76c0bb1bb4d7932cad4123dbde98b7
William Godbe [Tue, 11 Apr 2017 23:56:15 +0000 (16:56 -0700)]
Merge pull request dotnet/coreclr#10906 from wtgodbe/BuildTypeReporting
Pass PB_BuildType as a Pipeline ReportingParameter
Commit migrated from https://github.com/dotnet/coreclr/commit/
d577743e4fac8f32c649c2b1b1f9c606c1ca82f8
wtgodbe [Tue, 11 Apr 2017 23:55:34 +0000 (16:55 -0700)]
Pass PB_BuildType as a Pipeline ReportingParameter
Commit migrated from https://github.com/dotnet/coreclr/commit/
524d0cc817f5afd9bb686db9bb6e68b670893181
William Godbe [Tue, 11 Apr 2017 23:37:34 +0000 (16:37 -0700)]
Merge pull request dotnet/coreclr#10899 from wtgodbe/PipelineReporting
Add last set of reportingParameters to pipelines.json
Commit migrated from https://github.com/dotnet/coreclr/commit/
264c71dbab16fddb705c0974f268e31d6a48d072
Bruce Forstall [Tue, 11 Apr 2017 23:36:18 +0000 (16:36 -0700)]
Merge similar arm32/arm64 codegen functions
Commit migrated from https://github.com/dotnet/coreclr/commit/
8ce3737178f65ef5096ad9728f23cd451e89ac72
wtgodbe [Tue, 11 Apr 2017 20:03:45 +0000 (13:03 -0700)]
Add last set of reportingParameters to pipelines.json
Commit migrated from https://github.com/dotnet/coreclr/commit/
af66564d3f847784a0ecf8f10dd2c66521c7cde0
Andy Ayers [Tue, 11 Apr 2017 21:31:11 +0000 (14:31 -0700)]
Merge pull request dotnet/coreclr#10867 from AndyAyersMS/FixSingleDefBug
Jit: fix issue with single-def type propagation
Commit migrated from https://github.com/dotnet/coreclr/commit/
98bb73baa8ce24b883669879575c162fcb591ce2
Mandar Sahasrabuddhe [Tue, 11 Apr 2017 20:43:22 +0000 (02:13 +0530)]
CoreFx dotnet/coreclr#15622 Dictionary<TKey, TValue>.Remove(TKey, out TValue) (dotnet/coreclr#10203)
Commit migrated from https://github.com/dotnet/coreclr/commit/
574803904f3dfb9afa0691c8c675c878c67d2e22
Bruce Forstall [Tue, 11 Apr 2017 20:38:37 +0000 (13:38 -0700)]
Merge pull request dotnet/coreclr#10880 from BruceForstall/ArmCommon
Create common files for ARM32 and ARM64 common code
Commit migrated from https://github.com/dotnet/coreclr/commit/
df20d566dc2840c3284e69377fc37f5d1692ce39
Pat Gavlin [Tue, 11 Apr 2017 20:29:23 +0000 (13:29 -0700)]
Merge pull request dotnet/coreclr#10876 from pgavlin/VSO406156
Fix a few errors in cast decomposition.
Commit migrated from https://github.com/dotnet/coreclr/commit/
d6756ff1b59e5866ba4355c48224515f05e4009c
Jan Kotas [Tue, 11 Apr 2017 20:22:50 +0000 (13:22 -0700)]
Move a few more types from CoreFX to CoreLib (dotnet/coreclr#10893)
Reducing shards between CoreCLR and CoreRT shards
Commit migrated from https://github.com/dotnet/coreclr/commit/
0d06efe81389e05df7b3bdd56c874720a13dd8b2
Matt Galbraith [Tue, 11 Apr 2017 18:39:27 +0000 (11:39 -0700)]
Merge pull request dotnet/coreclr#10894 from dotnet/Add_Build_Type
Add some BuildType and Subtype info to CoreCLR build pipeline definition
Commit migrated from https://github.com/dotnet/coreclr/commit/
3df008e1fa9ce96e0bf5b3ad7a0690b80f5d6faf
Jan Kotas [Tue, 11 Apr 2017 16:00:23 +0000 (09:00 -0700)]
Merge pull request dotnet/corertdotnet/coreclr#3288 from dotnet/nmirror
Merge nmirror to master
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
fb86c0294a999b2c7bd1e13da1fdc0d3c2f701e5
Bruce Forstall [Tue, 11 Apr 2017 02:01:34 +0000 (19:01 -0700)]
Create common files for ARM32 and ARM64 common code
Create codegenarmarch.cpp, lowerarmarch.cpp, lsraarmarch.cpp.
For codegenarmarch.cpp, I copied over a bunch of functions that
are almost identical between arm and arm64. I left the functions
intact (didn't change anything), so created one for ARM32 and
one for ARM64, unless they were truly identical. A follow-up
will be to actually merge the functions.
For lowerarmarch.cpp and lsraarmarch.cpp, I did the function
merge for nearly (or completely) identical functions, since
there were so many that were so similar.
Commit migrated from https://github.com/dotnet/coreclr/commit/
6b9734a46cbd9c2ada2ab9ae7c3d61c3c1200ec4
Matt Galbraith [Tue, 11 Apr 2017 17:25:51 +0000 (10:25 -0700)]
Add some BuildType and Subtype info to CoreCLR build pipeline definition
Commit migrated from https://github.com/dotnet/coreclr/commit/
624242450de348f34f6990cfbd4ce728b051db91
Pat Gavlin [Tue, 11 Apr 2017 17:18:57 +0000 (10:18 -0700)]
Merge pull request dotnet/coreclr#10886 from hseok-oh/ci/fix_ci_error
Fix CI test error: permission error
Commit migrated from https://github.com/dotnet/coreclr/commit/
0b6bbb0a54bb2afa32d9296a7dc12d51cfdbd91f
Jan Kotas [Tue, 11 Apr 2017 02:37:42 +0000 (19:37 -0700)]
Merge pull request dotnet/corertdotnet/coreclr#3285 from dotnet/nmirror
Merge nmirror to master
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
2030affc40ac0842db56b4c3ae2b3e8751fa06a4
Hyeongseok Oh [Tue, 11 Apr 2017 08:08:43 +0000 (17:08 +0900)]
Remove sudo in netci.groovy
Commit migrated from https://github.com/dotnet/coreclr/commit/
b974392aa1fc93494ab83b3ace370dbbf4a336e0
Hyeongseok Oh [Tue, 11 Apr 2017 07:49:34 +0000 (16:49 +0900)]
Overwrite permission in coreoverlay generation
fix runtest.sh to overwrite corerun's permission in coreoverlay generation
Commit migrated from https://github.com/dotnet/coreclr/commit/
6759dfaa7c8048a84464f99a0a060f0b4deea1f6
Hyeongseok Oh [Tue, 11 Apr 2017 07:47:27 +0000 (16:47 +0900)]
Fix netci.groovy
Fix netci.groovy instead of test script to avoid rebase
Commit migrated from https://github.com/dotnet/coreclr/commit/
f97deb9529200d18ec01aaf546b23cbb61419246
Hyeongseok Oh [Tue, 11 Apr 2017 07:12:10 +0000 (16:12 +0900)]
Fix CI test error: permission error
Fix CoreCLR/CoreFX copy order: permission problem
Commit migrated from https://github.com/dotnet/coreclr/commit/
602021969c0dda29c8b2a75e741e0519cdbcbdf2
Sergey Andreenko [Tue, 11 Apr 2017 03:53:38 +0000 (20:53 -0700)]
Do not spill eeStack after ldtoken opcode. (dotnet/coreclr#10215)
Do not spill eeStack if the last opcode was ldtoken.
Commit migrated from https://github.com/dotnet/coreclr/commit/
5bc1e42710434cbc6c62a4ed1deb16aa9ecd92f5
Aditya Mandaleeka [Tue, 11 Apr 2017 03:21:07 +0000 (20:21 -0700)]
Remove double initialization of variables in app domain creation.
Commit migrated from https://github.com/dotnet/coreclr/commit/
afbb4c1477fe2cd2276acaec2ad5f95f3b4b3c72
Koundinya Veluri [Tue, 11 Apr 2017 02:48:54 +0000 (19:48 -0700)]
Fix some static methods on ThreadPool to wait for initialization (dotnet/coreclr#10869)
Fix for part of dotnet/coreclr#10521
Commit migrated from https://github.com/dotnet/coreclr/commit/
cdde90945fe82715a4f58f090925a0ca78db11e6
Bruce Forstall [Tue, 11 Apr 2017 01:50:10 +0000 (18:50 -0700)]
Merge pull request dotnet/coreclr#10782 from parjong/fix/x86_funclet_unwinding
[x86/Linux] Use GCInfo for funclet unwinding
Commit migrated from https://github.com/dotnet/coreclr/commit/
7e5e9c0a3713f2f1bd69e665b45f74ee7ac8e8b3
Aditya Mandaleeka [Fri, 7 Apr 2017 00:57:25 +0000 (17:57 -0700)]
Move handle null checks to VM side.
Commit migrated from https://github.com/dotnet/coreclr/commit/
efd4d357f009e4509a6147f390d2d9fde7d717d0
dotnet bot [Tue, 11 Apr 2017 01:02:57 +0000 (18:02 -0700)]
Update CoreClr to preview1-25210-04 (dotnet/coreclr#10862)
Commit migrated from https://github.com/dotnet/coreclr/commit/
b7af226bb094187f67f3a0cb36923715608bc9f9
Pat Gavlin [Tue, 11 Apr 2017 00:12:40 +0000 (17:12 -0700)]
Merge pull request dotnet/coreclr#10871 from pgavlin/PipelineCompatJit
Package compatjit.dll in pipeline builds.
Commit migrated from https://github.com/dotnet/coreclr/commit/
222f23b92fa2fc70885dd2776546ce1b9770af72
Pat Gavlin [Mon, 10 Apr 2017 23:58:46 +0000 (16:58 -0700)]
Merge pull request dotnet/coreclr#10866 from pgavlin/VSO405852
Fix VSO bug 405852.
Commit migrated from https://github.com/dotnet/coreclr/commit/
02aa5ce7fc6d866fe368c317d2bc3ab06b766c52
Pat Gavlin [Mon, 10 Apr 2017 23:26:17 +0000 (16:26 -0700)]
Fix a few errors in cast decomposition.
The cursor was not guaranteed to be in the correct location after cast
decomposition due to the location in which the high result was typically
placed. This mispositioning can cause re-decomposition, which can lead
to asserts e.g. when encountering a GT_LONG node that was left behind by
a previously-decomposed node. This change ensures that the high result
immediately follows the cast node so that the cursor will be in the
correct location following decomposition of the cast.
Commit migrated from https://github.com/dotnet/coreclr/commit/
ca9ce5fb59540f4a46952a1c807d7d397532c4b8
Dan Moseley [Mon, 10 Apr 2017 23:20:05 +0000 (16:20 -0700)]
empty array (dotnet/coreclr#10841)
Make EmptyArray private in favor of Array.Empty<T>
Commit migrated from https://github.com/dotnet/coreclr/commit/
8ffb46cd635cd9419cc26315d9eec64b976cbfb0
Roman Artemev [Mon, 10 Apr 2017 22:55:54 +0000 (15:55 -0700)]
Merge pull request dotnet/coreclr#10814 from rartemev/ilasm_reference_resolver_fix
Added 'netstandard' corelib name into ilasm reference resolver
Commit migrated from https://github.com/dotnet/coreclr/commit/
23e101830b3218a74d7cc02c8af7d8eeeffccd2a
Bruce Forstall [Mon, 10 Apr 2017 22:55:14 +0000 (15:55 -0700)]
Merge pull request dotnet/coreclr#10808 from sdmaclea/PR-ARM64-enable-initblk-unroll
[Arm64] enable initblk loop unrolling
Commit migrated from https://github.com/dotnet/coreclr/commit/
669b26a430d5a5e7e28d7652da16130d6c227325
Jonghyun Park [Mon, 10 Apr 2017 22:50:56 +0000 (07:50 +0900)]
Extract genInterruptible setting as a separate region
Commit migrated from https://github.com/dotnet/coreclr/commit/
fda1a8dad16136f659530a657f56546eda68466f
Jonghyun Park [Mon, 10 Apr 2017 22:49:08 +0000 (07:49 +0900)]
Use hasPartialArgInfo instead of isPartialArgInfo
Commit migrated from https://github.com/dotnet/coreclr/commit/
19b1ce56f951caf44f1dd20d83042d5653bdc73b
Sergey Andreenko [Mon, 10 Apr 2017 22:41:54 +0000 (15:41 -0700)]
add test with deep execution tree without stores. (dotnet/coreclr#10835)
Add a test that should fail with stack overflow if the compiler doesn't spill trees from time to time.
Commit migrated from https://github.com/dotnet/coreclr/commit/
41933db63c4203177a70bd0a388170a228bf4cbb
Pat Gavlin [Mon, 10 Apr 2017 22:27:07 +0000 (15:27 -0700)]
Package compatjit.dll in pipeline builds.
Just what it says on the tin.
Commit migrated from https://github.com/dotnet/coreclr/commit/
0ede8a6bd3fb3e013b2767bdd595a7e5f9d78889
Pat Gavlin [Mon, 10 Apr 2017 22:13:58 +0000 (15:13 -0700)]
Format code.
Commit migrated from https://github.com/dotnet/coreclr/commit/
58aaf6eaea69afb2f32a1503cc189864b0c0ff82
Aditya Mandaleeka [Fri, 7 Apr 2017 22:58:29 +0000 (15:58 -0700)]
Move handle destruction code to IGCHandleTable.
Conflicts:
src/vm/gchandletableutilities.h
Commit migrated from https://github.com/dotnet/coreclr/commit/
ac0ba59034c46da198b12812899e34dec21990e9
Pat Gavlin [Mon, 10 Apr 2017 21:17:08 +0000 (14:17 -0700)]
Fix VSO bug 405852.
This bug was due to a mismatch between the semantics of the FP modulus
operator as specified by ECMA-335 and as implemented by value numbering.
ECMA-335 requires the following behavior for FP modulus:
- If the divisor is 0 or the dividend is not finite, the result is NaN
- If the divisor is not finite and is not NaN, the result is the
dividend.
Value numbering, however, simply used `fmod`, which does not have these
semantics. This change implements the required semantics in VN.
Commit migrated from https://github.com/dotnet/coreclr/commit/
504dcd7001fcdf4e6dd9ff5e6084432589a115a8
Jan Kotas [Mon, 10 Apr 2017 20:57:03 +0000 (13:57 -0700)]
Add back UnmanagedType.LPUTF8Str (dotnet/coreclr#10859)
Commit migrated from https://github.com/dotnet/coreclr/commit/
6252b1628317776e36b674841aaed8bffb3f88f8
Rew [Mon, 10 Apr 2017 20:06:49 +0000 (16:06 -0400)]
CoreLib Build System portability updates (dotnet/coreclr#10839)
Updates to corelib project file for target specific includes. Intended
to ease maintainability of existing targets and clarify necessary work
for new targets.
Commit migrated from https://github.com/dotnet/coreclr/commit/
80423b67b16f563bbcb281f996c7b5cdee96093a
Koundinya Veluri [Mon, 10 Apr 2017 20:00:48 +0000 (13:00 -0700)]
Fix contract to allow call into GarbageCollect() to throw (dotnet/coreclr#10856)
I did not intend to mark this function as NOTHROW, and there is no reason to expect NOTHROW here. Other functions that call into GarbageCollect() allow THROWS.
Commit migrated from https://github.com/dotnet/coreclr/commit/
ee4ed1ac502f037e9894006ecc8da63f97325694
Aditya Mandaleeka [Mon, 10 Apr 2017 19:53:41 +0000 (12:53 -0700)]
Merge pull request dotnet/coreclr#10823 from adityamandaleeka/move_variable_handle_creation
Refactor variable strength handle creation
Commit migrated from https://github.com/dotnet/coreclr/commit/
6ed4abcf2c1877073a303ebb58b21a364ddc5f2c
Omar Tawfik [Mon, 10 Apr 2017 19:52:22 +0000 (12:52 -0700)]
Add empty System.Runtime.CompilerServices.RuntimeFeature.IsSupported() API (dotnet/coreclr#10779)
Commit migrated from https://github.com/dotnet/coreclr/commit/
620e0a781c2f93f3ea2c75b5bcd833011ff77e33
Roman Artemev [Fri, 7 Apr 2017 23:07:14 +0000 (16:07 -0700)]
Added netstandard corelib into ilasm reference resolver
Commit migrated from https://github.com/dotnet/coreclr/commit/
a1cde62225c0a7d5c889bff6e21660e2e170299a
Atsushi Kanamori [Mon, 10 Apr 2017 19:43:24 +0000 (12:43 -0700)]
Fix perf penalty for creating dictionaries the easy way. (dotnet/coreclr#10855)
We went to the trouble of mitigating the perf hit
introduced by using randomized string hashing.
I assume that said perf benefit wasn't meant to be denied
to the 90% case where people use the nullary
constructor to create the Dictionary...
Commit migrated from https://github.com/dotnet/coreclr/commit/
6c42a52b01960d7689c93398caa06ca5f79e903f
Andy Ayers [Mon, 10 Apr 2017 19:05:49 +0000 (12:05 -0700)]
Jit: fix issue with single-def type propagation
To avoid overly aggressive type propagation when there are multiple
reaching definitions, only propagate types to single-IL-def locals
when the definiting value comes from the same basic block as the store.
We check this conservatively by insisting that the block's entry stack
be empty.
Added a test case where the jit will improperly devirtualize without
such a check.
Closes dotnet/coreclr#10858.
Commit migrated from https://github.com/dotnet/coreclr/commit/
a9044a132b4807695d386181cf55bb952826e350
[Arm64] Cleanup/fix InitBlkUnroll
Commit migrated from https://github.com/dotnet/coreclr/commit/
8c44e4004113815a259f5fcbb3e9c6d7fbcb8cd9
dotnet bot [Mon, 10 Apr 2017 18:18:31 +0000 (11:18 -0700)]
Update CoreFx to preview1-25210-01 (dotnet/coreclr#10850)
Commit migrated from https://github.com/dotnet/coreclr/commit/
9cfc763700e38ce47242ad66657ba3210451df78
James Ko [Mon, 10 Apr 2017 17:26:12 +0000 (13:26 -0400)]
Implement slicing APIs for ArraySegment<T> (dotnet/coreclr#9926)
Commit migrated from https://github.com/dotnet/coreclr/commit/
40ecbb723552407044b57edaf3e5a1408bf99aab
Ilya [Mon, 10 Apr 2017 17:21:41 +0000 (20:21 +0300)]
Incorrect parameter order found by PVS-Studio (dotnet/coreclr#10497)
* Incorrect parameter order found by PVS-Studio
I used PVS-Studio static analyzer to check this project. I would like to suggest a variant of the way to fix the error, detected with the help of V3066 diagnostic https://www.viva64.com/en/w/V3066/
Commit migrated from https://github.com/dotnet/coreclr/commit/
0ca41bc62319c16dfafab2767abe623bb4be4547
Atsushi Kanamori [Mon, 10 Apr 2017 17:14:09 +0000 (10:14 -0700)]
Get rid of "#if FEATURE_RANDOMIZED_STRING_HASHING" in shared partition. (dotnet/coreclr#10851)
Since CoreCLR defines it (for now) and CoreRT doesn't, let's not have
"#if's" on this in shared code. It just creates confusion.
The only ones are in StringComparer.cs and fortunately, they are quite
expendable as...
1. It's only purpose is serialize Hashtables and Dictionaries in
a way that CLR 1.1 can deserialize them. We don't care about that in
.NET Core.
2. In CoreCLR as of today, this infrastructure is not changing the serialization
blob one iota since all the GetEqualityComparerForSerialization() methods
return "this."
So this removes the appearance of downgrading the comparers to non-randomized
versions for serialization purposes (and yes, we could go on and remove
all the other "let's do it for Everett and RTM" stuff in Hashtable.cs, but
I want to keep this PR on topic. Hashtable.cs is not going to be imported
into CoreRT so it's low priority for me.)
Commit migrated from https://github.com/dotnet/coreclr/commit/
1a32d7f2c1be31741c3e71fe35eb2fd22664d12c
Sergey Andreenko [Mon, 10 Apr 2017 16:41:49 +0000 (09:41 -0700)]
Forbid lea without index and base. (dotnet/coreclr#10771)
Commit migrated from https://github.com/dotnet/coreclr/commit/
25ae09a37475bd249d8b5baedde1755ec47ae554
Jan Kotas [Mon, 10 Apr 2017 16:28:38 +0000 (09:28 -0700)]
Delete FEATURE_READYTORUN define for CoreLib build (dotnet/coreclr#10840)
This define does not have much value for the CoreLib build, and it was missing on arm64.
Also deleted dead props and targets files left over from the legacy build
Commit migrated from https://github.com/dotnet/coreclr/commit/
37a68ef73e9bb664a24455e49eda03a876f76efd
Jonghyun Park [Mon, 10 Apr 2017 13:21:11 +0000 (22:21 +0900)]
[x86/Linux] Set ResumeEsp as Caller Sp when unwond to native frame (dotnet/coreclr#10838)
Commit migrated from https://github.com/dotnet/coreclr/commit/
ed3cf951911d56a4315280253c2056a753c62061
Jonghyun Park [Mon, 10 Apr 2017 12:51:10 +0000 (21:51 +0900)]
[x86/Linux] 16-byte aligned ResolveWorkerChainLookupAsmStub (dotnet/coreclr#10754)
Commit migrated from https://github.com/dotnet/coreclr/commit/
14297c85ddef362b18f758b15dfac05de0601f4a
Buyduck [Mon, 10 Apr 2017 12:48:57 +0000 (16:48 +0400)]
* Fixed issue, when structures with many fields had wrong size in dwarf (dotnet/coreclr#10797)
Commit migrated from https://github.com/dotnet/coreclr/commit/
468d9a3197378511e4106160fbb07cc91c3baa97
Jan Kotas [Mon, 10 Apr 2017 05:53:50 +0000 (22:53 -0700)]
Move files to shared CoreLib partition (dotnet/coreclr#10837)
Commit migrated from https://github.com/dotnet/coreclr/commit/
25169926291fcdcad25506c558690a0f63e61a93
Aditya Mandaleeka [Sat, 8 Apr 2017 01:44:23 +0000 (18:44 -0700)]
Move variable handle creation.
Commit migrated from https://github.com/dotnet/coreclr/commit/
09b7f0a0f44798108a33d7e698420f147c45461b
Sean Gillespie [Sun, 9 Apr 2017 20:58:29 +0000 (13:58 -0700)]
[Local GC] Move knowledge of the free object method table outside of the GC (dotnet/coreclr#10755)
* [Local GC] Move knowledge of the free object method table outside of the GC
* Revert "[Local GC] Move knowledge of the free object method table outside of the GC"
This reverts commit dotnet/coreclr@
02979e5eb12dd44edb2603e16411dd7d7ffc377d.
* Address code review feedback: leave ArrayBase alone, as it should be part of the binary contract between the EE and the GC
* Correct a bad merge
Commit migrated from https://github.com/dotnet/coreclr/commit/
2dfc74df1f9fe238eb2ec25c4764b8b65432b010
Jan Kotas [Sun, 9 Apr 2017 13:55:23 +0000 (06:55 -0700)]
Move files to shared CoreLib partition (dotnet/coreclr#10830)
Commit migrated from https://github.com/dotnet/coreclr/commit/
1a9781b68b8ec66c223bb96f44ae1d2704ce6fdf
Joseph Tremoulet [Sun, 9 Apr 2017 06:50:02 +0000 (02:50 -0400)]
Update VS2017 'Individual Components' install info (dotnet/coreclr#10695)
A few small changes to make it easier to compare selections in the
installer UI against the list in the doc:
- Re-order the list to match the order presented in the installer UI
- Place the individual items under groupings matching the installer
- Change casing to match installer UI
Commit migrated from https://github.com/dotnet/coreclr/commit/
a7bb166161d6170988d41050884f567d5c028703
Jan Kotas [Sun, 9 Apr 2017 05:12:22 +0000 (22:12 -0700)]
Delete reference to model.xml since it no longer exists (dotnet/coreclr#10827)
Commit migrated from https://github.com/dotnet/coreclr/commit/
2abc645b6bb9ab4ce18c25aa93016dae38343a36
Jim Ma [Sun, 9 Apr 2017 03:43:12 +0000 (11:43 +0800)]
Fix the broken link in contributing.md (dotnet/coreclr#10828)
The List.cs link is broken in contributing.md. This PR updates the link to List.cs accordingly.
Fix dotnet/coreclr#10822
Commit migrated from https://github.com/dotnet/coreclr/commit/
a2a631bdc30948dc528c130c4c3e142400d5125a
Bruce Forstall [Sun, 9 Apr 2017 03:23:52 +0000 (20:23 -0700)]
Merge pull request dotnet/coreclr#10776 from sdmaclea/PR-ARM64-CpBlkUnroll
[Arm64] Enable cpblk loop unrolling
Commit migrated from https://github.com/dotnet/coreclr/commit/
2a6fb305813fa9f677ff0fbf6511c5522ff2053c
Bruce Forstall [Sun, 9 Apr 2017 03:23:34 +0000 (20:23 -0700)]
Merge pull request dotnet/coreclr#10736 from sdmaclea/PR-ARM64-GC-genLeaInstruction
[Arm64] Fix GC Hole in genLeaInstruction
Commit migrated from https://github.com/dotnet/coreclr/commit/
b65900d13d5cefba9fc5af6273768aaca980a096
Hadi Brais [Sat, 8 Apr 2017 19:24:23 +0000 (00:54 +0530)]
Fix corerun issue when loaded from PATH (dotnet/coreclr#10745)
Commit migrated from https://github.com/dotnet/coreclr/commit/
551a7c5563105f7ec9a9d9273204d0a07a02c4fa
Alex Perovich [Sat, 8 Apr 2017 19:24:01 +0000 (14:24 -0500)]
Use a monotonic clock for test timing (dotnet/coreclr#10812)
Fixes dotnet/coreclr#8348
Commit migrated from https://github.com/dotnet/coreclr/commit/
1ed5cf1a3a2aebe5487dff7984d0305ceec9823b
Koundinya Veluri [Sat, 8 Apr 2017 19:23:33 +0000 (12:23 -0700)]
Handle SIGTERM on OSX (dotnet/coreclr#10723)
* Handle SIGTERM on OSX
Fixes dotnet/coreclr#7394
* Address feedback
Commit migrated from https://github.com/dotnet/coreclr/commit/
4d6398e55d510070b3c7fe39db4918a58ea94e7b
Jim Ma [Sat, 8 Apr 2017 16:43:47 +0000 (00:43 +0800)]
Exit gracefully when running ildasm -nat against unsupported ni file. (dotnet/coreclr#10821)
ildasm -nat only works for fragile native images (ie CoreLib only by default).
Running ildasm -nat against unsupported native images would cause a segmentation fault. This PR checks pNativeHeader->Signature == CORCOMPILE_SIGNATURE and end the program with a meaningful error message.
fix dotnet/coreclr#10247
Commit migrated from https://github.com/dotnet/coreclr/commit/
20248521af31e2307fcd728f1ebbf7877bb5ee59
Bruce Forstall [Sat, 8 Apr 2017 15:37:44 +0000 (08:37 -0700)]
Merge pull request dotnet/coreclr#10811 from BruceForstall/RemoveRELOC_SUPPORT
Remove RELOC_SUPPORT define
Commit migrated from https://github.com/dotnet/coreclr/commit/
ec80b02b61839af453ce297faf4ce074edeee9da
Sean Gillespie [Sat, 8 Apr 2017 06:59:00 +0000 (23:59 -0700)]
[Local GC] Fix some interface violations (dotnet/coreclr#10817)
Commit migrated from https://github.com/dotnet/coreclr/commit/
ea55c4a25945d8ccb39d686b89f1fa729b4ebe23
Jan Kotas [Fri, 7 Apr 2017 23:49:04 +0000 (16:49 -0700)]
Merge pull request dotnet/corertdotnet/coreclr#3262 from dotnet/nmirror
Merge nmirror to master
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
25e16c372912cfe9685c142ecf64edd4df91d21e
Jan Kotas [Fri, 7 Apr 2017 23:49:58 +0000 (16:49 -0700)]
Find & replace Exception.SetErrorCode with Exception.HResult setter (dotnet/coreclr#10810)
Commit migrated from https://github.com/dotnet/coreclr/commit/
a66ba16df26f1c8a311e2e2c2923e74f980f21f5