Michelle McDaniel [Thu, 22 Dec 2016 18:23:14 +0000 (10:23 -0800)]
Merge pull request dotnet/coreclr#8682 from adiaaida/newjobs
Script to run CoreFx tests against a private CoreCLR
Commit migrated from https://github.com/dotnet/coreclr/commit/
73fe1dbe78a89766c60bffd04f5961b524ea6294
Julien Couvreur [Thu, 22 Dec 2016 07:01:38 +0000 (23:01 -0800)]
Adding ValueTuple and ITuple to corlib in CoreCLR (dotnet/coreclr#8695)
* Adding ValueTuple
* Adding ITuple
* Porting equality comparer optimization from corefx PR dotnet/coreclr#14187
Commit migrated from https://github.com/dotnet/coreclr/commit/
2d49c2c743831b7078c4360f28a81ba28fc47a05
Jan Kotas [Thu, 22 Dec 2016 04:08:37 +0000 (20:08 -0800)]
Delete FEATURE_LEGACYSURFACE (dotnet/coreclr#8704)
Commit migrated from https://github.com/dotnet/coreclr/commit/
1d03b8fd8d650bd215623a7b035e68db96697e59
Sivarv [Thu, 22 Dec 2016 01:34:39 +0000 (17:34 -0800)]
Merge pull request dotnet/coreclr#8706 from sivarv/simdAbs
Use Pabsd/pabsw/pabsb instructions for Abs SIMD intrinsic on SSE3_4 and above targets.
Commit migrated from https://github.com/dotnet/coreclr/commit/
e88965d26433025ff36b9164b06833ca2253b61c
sivarv [Wed, 21 Dec 2016 23:17:08 +0000 (15:17 -0800)]
Use Pabsd/pabsw/pabsb instructions for Abs SIMD intrinsic on SSE4 and above targets.
Commit migrated from https://github.com/dotnet/coreclr/commit/
7c887cfd237e767454c7a8eca51aac5a6c4357aa
Jan Kotas [Wed, 21 Dec 2016 20:49:34 +0000 (12:49 -0800)]
Move EditorBrowsableAttribute to CoreLib (dotnet/coreclr#8703)
Commit migrated from https://github.com/dotnet/coreclr/commit/
3f9ec2a41a809ae6e39e727871d1d7d6c29106b7
Gaurav Khanna [Wed, 21 Dec 2016 19:27:39 +0000 (11:27 -0800)]
Merge pull request dotnet/coreclr#8701 from dotnet-bot/master-UpdateDependencies
Update CoreClr, CoreFx to beta-24821-04, beta-24821-02, respectively (master)
Commit migrated from https://github.com/dotnet/coreclr/commit/
426e4da54f3b79b381f0d5deb11cdc32ffeb4f4d
Sivarv [Wed, 21 Dec 2016 18:30:14 +0000 (10:30 -0800)]
Merge pull request dotnet/coreclr#8697 from sivarv/lockAddFix
Fix GT_LOCKADD register specification.
Commit migrated from https://github.com/dotnet/coreclr/commit/
77561c87ed48f5af122aecc104f6a0b6a6382121
dotnet-bot [Wed, 21 Dec 2016 17:40:47 +0000 (17:40 +0000)]
Update CoreClr, CoreFx to beta-24821-04, beta-24821-02, respectively
Commit migrated from https://github.com/dotnet/coreclr/commit/
5ee5d0e9146fd30a61e003ddd976044fd522c644
Gaurav Khanna [Wed, 21 Dec 2016 15:53:33 +0000 (07:53 -0800)]
Merge pull request dotnet/coreclr#8696 from dotnet-bot/master-UpdateDependencies
Update CoreClr, CoreFx to beta-24821-03, beta-24821-01, respectively (master)
Commit migrated from https://github.com/dotnet/coreclr/commit/
b24f3c8fff9ef63bd6448fe2a6fd9f272891a1e7
Jan Vorlicek [Wed, 21 Dec 2016 15:42:51 +0000 (16:42 +0100)]
Remove FEATURE_BLC_FORMATTING (dotnet/coreclr#8699)
This feature is always defined and the PAL functions that would be used
if the feature was not defined are not in PAL anymore.
Commit migrated from https://github.com/dotnet/coreclr/commit/
cae79dbd58ccbb1eb3cee9eb551ef6d20b18e821
dotnet-bot [Wed, 21 Dec 2016 09:30:01 +0000 (09:30 +0000)]
Update CoreClr, CoreFx to beta-24821-03, beta-24821-01, respectively
Commit migrated from https://github.com/dotnet/coreclr/commit/
22d3ec731c0899292f2c37d22e2c8198278ae2c9
sivarv [Wed, 21 Dec 2016 01:25:29 +0000 (17:25 -0800)]
Fix GT_LOCKADD register specification.
Commit migrated from https://github.com/dotnet/coreclr/commit/
41817d2f9d5a8abcc345d2b0bc5c9be315c4a37b
Michelle McDaniel [Tue, 20 Dec 2016 18:19:28 +0000 (10:19 -0800)]
Split netci functions into smaller functions
Commit migrated from https://github.com/dotnet/coreclr/commit/
77631df8e72c9d16ed7b0715d53f03bb95ad8487
Gaurav Khanna [Tue, 20 Dec 2016 21:57:00 +0000 (13:57 -0800)]
Merge pull request dotnet/coreclr#8670 from dotnet-bot/master-UpdateDependencies
Update CoreClr, CoreFx to beta-24820-02, beta-24820-02, respectively (master)
Commit migrated from https://github.com/dotnet/coreclr/commit/
14b0b57cd9090080c9f4c35b9702713d0d328905
Joseph Tremoulet [Tue, 20 Dec 2016 21:01:44 +0000 (16:01 -0500)]
Merge pull request dotnet/coreclr#8693 from JosephTremoulet/ValueNumberField
Use field type value-numbering local field stores
Commit migrated from https://github.com/dotnet/coreclr/commit/
6077c153dafab92f295aa89ac62278a06c536a95
Joseph Tremoulet [Tue, 20 Dec 2016 18:23:58 +0000 (10:23 -0800)]
Use field type value-numbering local field stores
Method `VNPairApplySelectorsAssign` takes the type of the value being
assigned, so when processing a store to a field of a local struct, pass
the type of the field rather than the type of the local; failure to do so
was blocking propagation of the value number to subsequent loads of the
same field due to the type mismatch.
Commit migrated from https://github.com/dotnet/coreclr/commit/
ae3f036d1527dddc399a15da6151661143e2948a
dotnet-bot [Tue, 20 Dec 2016 16:22:57 +0000 (16:22 +0000)]
Update CoreClr, CoreFx to beta-24820-02, beta-24820-02, respectively
Commit migrated from https://github.com/dotnet/coreclr/commit/
b2c56ffdf3365ea8bfab3e515f3fea6225721475
Sujin Kim [Tue, 20 Dec 2016 15:46:13 +0000 (00:46 +0900)]
Change wrong indentations in GetSecureInvoke() codes (dotnet/coreclr#8688)
In the before dotnet/coreclr#8592 merged PR, several indentations in modified GetSecureInvoke method were wrong.
So I request additional fixed PR.
1. 2 space indentations -> 4 spaces
2. tab indentation -> 4 spaces
Commit migrated from https://github.com/dotnet/coreclr/commit/
c5abe8c5a3d74b8417378e03f560fd54799c17f2
mskvortsov [Tue, 20 Dec 2016 09:48:38 +0000 (12:48 +0300)]
ARM: do not use unpredictable sub.w sp, rN, #imm (dotnet/coreclr#8636)
Commit migrated from https://github.com/dotnet/coreclr/commit/
e99e79f336b4c796a37b939a84f57bf9bd358789
Jonghyun Park [Tue, 20 Dec 2016 09:31:52 +0000 (18:31 +0900)]
[x86/Linux] Implement libunwind-based unwindLazyStack (dotnet/coreclr#8686)
* [x86/Linux] Implement libunwind-based unwindLazyStack
This commit implements libunwind-based unwindLazyStack for x86/Linux
in order to fix dotnet/coreclr#8625.
Commit migrated from https://github.com/dotnet/coreclr/commit/
6d5074546d40d1fc7e2f60033cd127e3e31462d5
Sujin Kim [Tue, 20 Dec 2016 06:53:51 +0000 (15:53 +0900)]
Fix the bug that Secure Delegate Stubs are compiled every time. (dotnet/coreclr#8592)
* Fix the bug that Secure Delegate Stubs are compiled every time.
I found that Secure Delegate stubs are compiled every time during application execution, which has a negative impact on execution performance. dotnet/coreclr#8554
Like the GetMulticastInvoke() method, GetSecureInvoke() checks the hashtable when the method is executed and uses it if it already exists.
* Fix pDelMT bug and change file rights
Commit migrated from https://github.com/dotnet/coreclr/commit/
dea1b9e5c0393daa420831eb74177b1fd6546181
Russ Keldorph [Tue, 8 Nov 2016 12:45:52 +0000 (04:45 -0800)]
Script to run CoreFx tests against a private CoreCLR
Move the increasingly complex logic required for the CI to run CoreFx
tests from the CoreCLR repo into a separate script.
Also enable automated CoreFx jitstress testing for x86.
Commit migrated from https://github.com/dotnet/coreclr/commit/
9e306e4531e57a3be410d0f8b5229fe8b67abde9
William Godbe [Mon, 19 Dec 2016 20:15:33 +0000 (12:15 -0800)]
Merge pull request dotnet/coreclr#8681 from gkhanna79/PNBBuildPkg
Update build-packages.sh to support portableLinux
Commit migrated from https://github.com/dotnet/coreclr/commit/
669499706ebc3fc4cc55632c42393fad4db2cead
Gaurav Khanna [Mon, 19 Dec 2016 19:54:51 +0000 (11:54 -0800)]
Update build-packages.sh to support portableLinux
Commit migrated from https://github.com/dotnet/coreclr/commit/
1c5dc536278102fa628150127c31ed743d090f17
Alexander Radchenko [Mon, 19 Dec 2016 19:39:26 +0000 (02:39 +0700)]
Add Encoding.GetBytes(string, offset, count) (dotnet/coreclr#8651)
Commit migrated from https://github.com/dotnet/coreclr/commit/
8891481aba943dc4f455f3790bdfa49877ca2525
John Chen [Mon, 19 Dec 2016 19:17:25 +0000 (11:17 -0800)]
Fix DllImport of IdnToAscii & IdnToUnicode (dotnet/coreclr#8666)
Fix an issue found in OneCoreUAP testing. According to MSDN,
the official exporting DLL for IdnToAccii and IdnToUnicode
is normaliz.dll, not kernel32.dll. While most Windows SKUs
export these functions from both normaliz.dll and kernel32.dll,
recent tests revealed that some Windows SKUs export them from
normaliz.dll only.
Commit migrated from https://github.com/dotnet/coreclr/commit/
dec5a1ff4088780bf0b8226002a5a51d7d6c4d3a
Andy Ayers [Mon, 19 Dec 2016 17:36:38 +0000 (09:36 -0800)]
Merge pull request dotnet/coreclr#8674 from AndyAyersMS/BiggerBlockFlag
Widen basic block flag field to 64 bits
Commit migrated from https://github.com/dotnet/coreclr/commit/
8395eb5238c8b4dcb06a1f16901cd8f5d3f07f6c
Igor Kulaychuk [Mon, 19 Dec 2016 11:03:59 +0000 (14:03 +0300)]
[Linux][GDB-JIT] Fix bugs in gdbjit that break lldb stepping (dotnet/coreclr#8637)
* Fix .text and .thunk symbols overlapping
When current method calls itself, a __thunk* symbol might be generated with the same address
as the method symbol in .text section. Avoid generating such __thunk* symbol.
* Do not create DWARF line table entries with the same address
* For each HiddenLine assign a zero line number in DWARF
Allow LLDB to to skip HiddenLines when stepping.
* Fix __thunk symbols containing garbage
Fix a bug when __thunk* symbols of previously compiled methods cause
generation of __thunk* symbols for currently compiled method without
filling symbol info.
* Fix missing check for the end of list of compiled methods
* Remove unnecessary check for zero prevLine in gdbjit
Commit migrated from https://github.com/dotnet/coreclr/commit/
d23b78ce50d04e97cc23f997fab8c0ce5faa8726
SaeHie Park [Mon, 19 Dec 2016 10:03:37 +0000 (19:03 +0900)]
[x86/Linux] Add UMThunkStub (dotnet/coreclr#8627)
Add UMThunkStub method with logic from that of AMD64
Commit migrated from https://github.com/dotnet/coreclr/commit/
6fce053a60454b76e09a0677ea0568de1d165b43
Peter Marcu [Mon, 19 Dec 2016 02:32:05 +0000 (18:32 -0800)]
Fixing up the arm subsystem versions (dotnet/coreclr#8676)
* Adding arm64 and updating default subsystems
Commit migrated from https://github.com/dotnet/coreclr/commit/
23407d10bf5c080d2ff9461b52c6c777484bf0c6
Mike McLaughlin [Sun, 18 Dec 2016 22:48:36 +0000 (14:48 -0800)]
Remove Read/WriteProcessMemory from PAL. (dotnet/coreclr#8655)
Ifdef more unused code that uses ReadProcessMemory. Move the current
memory probing in the transport to PAL_ProbeMemory. Add PAL_ProbeMemory
to dac PAL exports.
PAL_ProbeMemory may be changed to use write/read on a pipe to
validate the memory as soon as we make it perform as well as
the current code.
Remove ReadProcessMemory tests and add PAL_ProbeMemory pal tests.
Commit migrated from https://github.com/dotnet/coreclr/commit/
e50b22b4f07b452b3ce7261fb543a43aa8f70b88
Jan Kotas [Sun, 18 Dec 2016 07:44:29 +0000 (23:44 -0800)]
Use ExecutionPolicy ByPass to execute probe-win.ps1 script during the build (dotnet/coreclr#8673)
Port of https://github.com/dotnet/corert/issues/2377
Commit migrated from https://github.com/dotnet/coreclr/commit/
4497b25d1107846e0ac8d09fa13e40173528fe9e
Andy Ayers [Sun, 18 Dec 2016 01:03:49 +0000 (17:03 -0800)]
Widen basic block flag field to 64 bits
Flag field is currently full, and I need at least one more bit to identify
the start of a cloned finally.
Widen to 64 bits and update a few uses. Also removed an unused copy.
Commit migrated from https://github.com/dotnet/coreclr/commit/
79bacd6c489ddd0e6d1ade7fc4e9f9163f8b4154
Gaurav Khanna [Sat, 17 Dec 2016 01:33:49 +0000 (17:33 -0800)]
Merge pull request dotnet/coreclr#8668 from gkhanna79/PNBRid
Packaging support for portable Linux binaries.
Commit migrated from https://github.com/dotnet/coreclr/commit/
466fc3252f78619612a2da8d21787460b2d94c0d
Gaurav Khanna [Fri, 16 Dec 2016 20:47:08 +0000 (12:47 -0800)]
Packaging support for portable Linux binaries.
Commit migrated from https://github.com/dotnet/coreclr/commit/
775363197bfc34175e746d8cd14ebdc1119145c6
Gaurav Khanna [Fri, 16 Dec 2016 21:52:33 +0000 (13:52 -0800)]
Merge pull request dotnet/coreclr#8664 from dotnet-bot/master-UpdateDependencies
Update CoreClr to beta-24816-04 (master)
Commit migrated from https://github.com/dotnet/coreclr/commit/
f2b4281070615d2a0dcd9fa06784c89ee6b8b710
Jan Kotas [Fri, 16 Dec 2016 21:45:48 +0000 (13:45 -0800)]
Avoid Unsafe.AsRef in Span<T> implementation (dotnet/coreclr#8657)
The JIT is not able to inline the current implementation of Unsafe.AsRef because of it has type mismatch on return. Change the the corelib Span to call Unsafe.As instead since fixing the type mismatch is not easy in the internal corelib version of Unsafe.AsRef.
Commit migrated from https://github.com/dotnet/coreclr/commit/
a03946c9dfe90118e75110cd10f6369fc6cd90d4
Alexander Radchenko [Fri, 16 Dec 2016 21:06:41 +0000 (04:06 +0700)]
Dictionary.GetValueOrDefault (dotnet/coreclr#8641)
* Dictionary.GetValueOrDefault
* Fixed IDictionary.TryGetValue
* remove extensions
* // Method similar to TryGetValue that returns the value instead of putting it in an out param.
* public TValue GetValueOrDefault(TKey key) => GetValueOrDefault(key, default(TValue));
Commit migrated from https://github.com/dotnet/coreclr/commit/
3d9598916c3b3750a02ec2a8e3e0108bf140bb61
dotnet-bot [Fri, 16 Dec 2016 19:40:29 +0000 (19:40 +0000)]
Update CoreClr to beta-24816-04
Commit migrated from https://github.com/dotnet/coreclr/commit/
06df8647a337f29dbb7f8e3b6afa3dce357d52cf
Hyeongseok Oh [Fri, 16 Dec 2016 19:06:16 +0000 (04:06 +0900)]
Fix buildsystem for linux cross-architecture component build (dotnet/coreclr#8646)
* Fix buildsystem for linux cross-architecture component build
* refactoring build.sh, bug fix and typo fix
* Update build.sh
Commit migrated from https://github.com/dotnet/coreclr/commit/
bedc2a0f2031538ac236ff129572739d1ecd97bb
Rama krishnan Raghupathy [Fri, 16 Dec 2016 18:31:45 +0000 (10:31 -0800)]
Makes CultureInfo.get_Parent thread safe (dotnet/coreclr#8656)
Commit migrated from https://github.com/dotnet/coreclr/commit/
aeae8e110c4f93602f00a18ac1cdb3cb9d2700a9
Gaurav Khanna [Fri, 16 Dec 2016 18:04:46 +0000 (10:04 -0800)]
Merge pull request dotnet/coreclr#8659 from dotnet-bot/master-UpdateDependencies
Update CoreFx to beta-24816-02 (master)
Commit migrated from https://github.com/dotnet/coreclr/commit/
98c1e2b811dd5292fb677d6def8a6e9b4564f676
dotnet-bot [Fri, 16 Dec 2016 15:49:19 +0000 (15:49 +0000)]
Update CoreFx to beta-24816-02
Commit migrated from https://github.com/dotnet/coreclr/commit/
9e1f18926df952ceecde7a46a3a3e0ef7bf44573
Igor Kulaychuk [Fri, 16 Dec 2016 13:05:25 +0000 (16:05 +0300)]
[Linux][GDB-JIT] Add try/catch blocks to methods in DWARF (dotnet/coreclr#8650)
* Add try/catch blocks to DWARF info
Use info about exception handling from IL and map it to
native code as try/catch blocks in DWARF.
* Improve locals naming convention consistency in gdbjit
* Drop pointer to line info from FunctionMember after it is dumped
Commit migrated from https://github.com/dotnet/coreclr/commit/
93187ae57cdd970bc2eaa8a71c7b7162fcecb440
Alexander Radchenko [Thu, 15 Dec 2016 23:24:14 +0000 (06:24 +0700)]
Make it easier to use StringComparison & StringComparer with GetHashCode (dotnet/coreclr#8633)
* Make it easier to use StringComparison & StringComparer with GetHashCode
* model.xml
Commit migrated from https://github.com/dotnet/coreclr/commit/
b497978fbdbc337376253b41b56776bd279917d2
Jan Kotas [Thu, 15 Dec 2016 22:26:48 +0000 (14:26 -0800)]
Switch GCSample to the canonical GCToOSInterface implementation (dotnet/coreclr#8653)
Commit migrated from https://github.com/dotnet/coreclr/commit/
7e9bce2d25ce84fe737b2a711d8160bb250ba769
Gaurav Khanna [Thu, 15 Dec 2016 21:36:26 +0000 (13:36 -0800)]
Merge pull request dotnet/coreclr#8649 from dotnet-bot/master-UpdateDependencies
Update CoreClr, CoreFx to beta-24815-03, beta-24815-03, respectively (master)
Commit migrated from https://github.com/dotnet/coreclr/commit/
0ba60efbaa64e83c22956b524572907345748b1c
Carol Eidt [Thu, 15 Dec 2016 19:02:19 +0000 (11:02 -0800)]
Merge pull request dotnet/coreclr#8642 from CarolEidt/Fix359736
Correctly sequence fgMorphModToSubMulDiv
Commit migrated from https://github.com/dotnet/coreclr/commit/
3da9854fae38324132be431ba2f40e5b74941d57
dotnet-bot [Thu, 15 Dec 2016 17:39:00 +0000 (17:39 +0000)]
Update CoreClr, CoreFx to beta-24815-03, beta-24815-03, respectively
Commit migrated from https://github.com/dotnet/coreclr/commit/
f55af1a0f6e269b6699abd32b7d6404320179adc
John Chen [Thu, 15 Dec 2016 16:47:23 +0000 (08:47 -0800)]
Remove API Set dependency (dotnet/coreclr#8624)
Commit migrated from https://github.com/dotnet/coreclr/commit/
4f0753dce7402a2f9f51735292f07b6165989d17
Carol Eidt [Thu, 15 Dec 2016 16:38:57 +0000 (08:38 -0800)]
Merge pull request dotnet/coreclr#8207 from CarolEidt/StreamlineResolution
Streamline LSRA resolution
Commit migrated from https://github.com/dotnet/coreclr/commit/
c8194b0cc48d1722d36cec349bf6bd5f33911708
Sivarv [Thu, 15 Dec 2016 15:37:02 +0000 (07:37 -0800)]
Merge pull request dotnet/coreclr#8329 from litian2025/Fix_SIMDScalarMoveEncoding
Fix SIMD Scalar Move Encoding: VEX.L should be 0
Commit migrated from https://github.com/dotnet/coreclr/commit/
f39a9acddbb81f798ee6407579bf609aba58cdf3
Gaurav Khanna [Thu, 15 Dec 2016 05:08:28 +0000 (21:08 -0800)]
Merge pull request dotnet/coreclr#8645 from dotnet-bot/master-UpdateDependencies
Update CoreFx to beta-24815-01 (master)
Commit migrated from https://github.com/dotnet/coreclr/commit/
92d21d0c659ab2ad0e1ba67e9acee3b759a1f672
dotnet-bot [Thu, 15 Dec 2016 03:48:47 +0000 (03:48 +0000)]
Update CoreFx to beta-24815-01
Commit migrated from https://github.com/dotnet/coreclr/commit/
4c1f61f035bf4a91056f5dfc045e06fdd8695ded
Sasha Semennikov [Thu, 15 Dec 2016 01:09:20 +0000 (17:09 -0800)]
Merge pull request dotnet/coreclr#8546 from alsemenn/debuggertests_generate_scripts_win
Add script generator and generate test scripts to adapt debuggertests…
Commit migrated from https://github.com/dotnet/coreclr/commit/
d691c44eff5bd674f4403932a93f00b4fddcf82f
Pat Gavlin [Thu, 15 Dec 2016 00:14:46 +0000 (16:14 -0800)]
Merge pull request dotnet/coreclr#8640 from pgavlin/VSO359734
Fix ref count adjustment in `fgMorphBlockStmt`.
Commit migrated from https://github.com/dotnet/coreclr/commit/
c4acde88f46c423c3d0a25b6fef17bd2469c0641
Li Tian [Mon, 28 Nov 2016 22:48:01 +0000 (14:48 -0800)]
Fix SIMD Scalar Move Encoding: VEX.L should be 0
For SIMD Scalar Move instructions such as vmovlpd, vmovlps, vmovhps,
vmovhps and vmovss on AVX system, JIT should ensure that those
instructions are encoded with VEX.L=0, because encoding them with
VEX.L=1 may encounter unpredictable behavior across different
processor generations. The reason of VEX.L is encoded with 1 is
because JIT calls compiler->getSIMDVectorType() which returns
EA_32BYTE, and it is been passed into emitter AddVexPrefix() which
ends up encoded VEX.L=1, the fix is to pass target type and base
type for those instructions to ensure that VEX.L=0 at emitter
AddVexPrefix()
Fix dotnet/coreclr#8328
Commit migrated from https://github.com/dotnet/coreclr/commit/
bb67edaf7c21c9b82d33e2958ca22de75e238d7c
Carol Eidt [Wed, 14 Dec 2016 21:58:11 +0000 (13:58 -0800)]
Correctly sequence fgMorphModToSubMulDiv
This method was creating a temp, but the final result was a GT_SUB with
a use of the temp as its op1, and it was not setting GTF_REVERSE_OPS.
This led to a liveness assert in LSRA.
Commit migrated from https://github.com/dotnet/coreclr/commit/
910b2b6d2eb76fb94eca4a2ce2561e9c4270f849
Pat Gavlin [Wed, 14 Dec 2016 21:52:50 +0000 (13:52 -0800)]
Add a regression test.
Commit migrated from https://github.com/dotnet/coreclr/commit/
c92ac8068d96e1af90aa9fdaa2061dfa0fb669e3
Gaurav Khanna [Wed, 14 Dec 2016 21:32:00 +0000 (13:32 -0800)]
Merge pull request dotnet/coreclr#8582 from dotnet-bot/master-UpdateDependencies
Update CoreClr, CoreFx to beta-24814-03, beta-24814-02, respectively (master)
Commit migrated from https://github.com/dotnet/coreclr/commit/
f4adfbb0f093b40b45fcab8515d6db31fdbfa2dd
Pat Gavlin [Wed, 14 Dec 2016 20:23:54 +0000 (12:23 -0800)]
Fix ref count adjustment in `fgMorphBlockStmt`.
LclVar ref counts must be incremented before attempting to remove the
morphed statement, since doing so decrements ref counts (and thus
requires refcounts to be conservatively correct).
Fixes VSO 359734.
Commit migrated from https://github.com/dotnet/coreclr/commit/
530b45d88b08db93b89da144e22a2f34209971ab
Igor Kulaychuk [Wed, 14 Dec 2016 19:38:11 +0000 (22:38 +0300)]
[Linux][GDB-JIT] Add simple C++ mangling of method names in GDBJIT DWARF (dotnet/coreclr#8638)
* Add simple C++ mangling of method names in GDBJIT DWARF
Example:
Namespace1.Class1.Method -> void Namespace1_Class1::Method()
* Do not convert a name during mangling if target buffer is NULL
Commit migrated from https://github.com/dotnet/coreclr/commit/
f25bff4d1645d9e5f03c4810eaf141f8f245f563
Pat Gavlin [Wed, 14 Dec 2016 19:21:17 +0000 (11:21 -0800)]
Merge pull request dotnet/coreclr#8601 from pgavlin/gh7963
Fix consume-order checking in codegen.
Commit migrated from https://github.com/dotnet/coreclr/commit/
b038f9094345f04564e88d8525e0b3ea110ef6e6
Michal Strehovský [Wed, 14 Dec 2016 18:03:53 +0000 (10:03 -0800)]
Add support for R2R ldvirtftn helpers (dotnet/coreclr#8608)
The codegen for the non-readytorun path (used on CoreCLR) requires the
runtime to support general purpose virtual method resolution based on a
method handle. CoreRT doesn't have such helpers.
Commit migrated from https://github.com/dotnet/coreclr/commit/
deb75b4f815fd4d86ad444d19eec50f0f869f994
dotnet-bot [Wed, 14 Dec 2016 17:26:31 +0000 (17:26 +0000)]
Update CoreClr, CoreFx to beta-24814-03, beta-24814-02, respectively
Commit migrated from https://github.com/dotnet/coreclr/commit/
c80cb9795fe609c1b599dc6ea9131fb7bdcffc5c
Jonghyun Park [Wed, 14 Dec 2016 10:35:21 +0000 (19:35 +0900)]
Move RUNTIME_FUNCTION__BeginAddress into clrnt.h (dotnet/coreclr#8632)
RUNTIME_FUNCTION__BeginAddress is defined in corcompile.h for x86, but
is defined in clrnt.h for all the other architectures.
This commit moves RUNTIME_FUNCTION__BeginAddress defines for x86 into
clrnt.h to make it consistent.
Commit migrated from https://github.com/dotnet/coreclr/commit/
3a8ebe8cefd0e2e7e14c544bcce687bf87fc7de9
Jonghyun Park [Wed, 14 Dec 2016 10:29:32 +0000 (19:29 +0900)]
[x86/Linux] Adds Dummy Exception Handler (dotnet/coreclr#8613)
This commit adds a dummy exeption handler to enable x86/Linux build.
This commit also reverts
7b92136d5ee to make it easy to enable
WIN64EXCEPTIONS in x86/Linux.
Commit migrated from https://github.com/dotnet/coreclr/commit/
676216ab65a6b0ef83782298f414c87e24a1256f
mskvortsov [Wed, 14 Dec 2016 02:26:32 +0000 (05:26 +0300)]
[ARM32/Linux] Initial bring up of FEATURE_INTERPRETER (dotnet/coreclr#8594)
* Bring up FEATURE_INTERPRETER for ARM32/Linux
* Add a disclaimer message for GC preemption workaround
Commit migrated from https://github.com/dotnet/coreclr/commit/
3019808a3d38e934dc21d5c31c75f7d056bdfa9c
ahsonkhan [Wed, 14 Dec 2016 02:25:29 +0000 (18:25 -0800)]
Adding method implementations to fast span/readonlyspan (dotnet/coreclr#8607)
Commit migrated from https://github.com/dotnet/coreclr/commit/
f1391bb0c049199c5ee20594ec90f549bd82265f
Jonghyun Park [Wed, 14 Dec 2016 02:15:21 +0000 (11:15 +0900)]
[x86/Linux] Enforce 16-byte stack alignment (dotnet/coreclr#8587)
Clang (and GCC) requires 16-byte stack alignment, but the current
implementation of CallDescrInternal and ThePreStub does not provide any
guarantee on stack alignment.
This commit adds 16-byte stack alignment adjust code inside these functions.
Commit migrated from https://github.com/dotnet/coreclr/commit/
db529508a0623def4da3baa7175f4c654d3d6fbd
Jonghyun Park [Wed, 14 Dec 2016 01:26:14 +0000 (10:26 +0900)]
[x86/Linux] Fix incorrect __fastcall definition (dotnet/coreclr#8585)
In x86/Linux, __fastcall is defined as __stdcall which causes stack
corruption issue for the following functions:
- HelperMethodFrameRestoreState
- LazyMachStateCaptureState
This commit removes __fastcall definition as clang recognize __fastcall.
Commit migrated from https://github.com/dotnet/coreclr/commit/
24c23c2649a0eec7621466626a5a637daca10337
Jonghyun Park [Wed, 14 Dec 2016 00:46:40 +0000 (09:46 +0900)]
[x86/Linux] Fix "Bad opcode" assert in unwindLazyState (dotnet/coreclr#8609)
* [x86/Linux] Fix "Bad opcode" assert in unwindLazyState
This commit suppresses "Bad opcode" assert while runing "Hello, World" example.
This commit address the following three code patterns discovered while
digging the assert failure:
- and $0x1, %al
- xor $0xff, %al
- stack protection code:
mov %gs:<off>, <reg>
cmp <off>(%esp), <reg>
mov <reg>, <off>($esp)
jne <disp32>
This commit revises LazyMachState::unwindLazyState to handle the first two patterns,
and revises compile options not to emit the third pattern.
Commit migrated from https://github.com/dotnet/coreclr/commit/
2a7f2ffeb1b6a39f295cc819d3e1187bcc0507a0
Bruce Forstall [Tue, 13 Dec 2016 23:59:02 +0000 (15:59 -0800)]
Merge pull request dotnet/coreclr#8617 from hqueue/arm/test20161210/IsContainableImmed
Ryujit/ARM32 Initial Lowering::IsContainableImmed for ARM
Commit migrated from https://github.com/dotnet/coreclr/commit/
71d73fc56b9dc295d1f9ffcc7882e8b0765d10d6
Jonghyun Park [Tue, 13 Dec 2016 23:36:06 +0000 (08:36 +0900)]
[x86/Linux] Port jithelp.asm (dotnet/coreclr#8491)
* [x86/Linux] Port jithelp.asm
This commit ports jithelp.asm for x86/Linux
The following Tailcall helpers are marked as NYI:
- JIT_TailCall
- JIT_TailCallReturnFromVSD
- JIT_TailCallVSDLeave
- JIT_TailCallLeave
* Revise macro and indentation
Commit migrated from https://github.com/dotnet/coreclr/commit/
e8e2adfb61834873477e0f154eab90252d6a6047
Pat Gavlin [Tue, 13 Dec 2016 23:30:09 +0000 (15:30 -0800)]
Fix the ARM32 build.
Commit migrated from https://github.com/dotnet/coreclr/commit/
795435d457d4c06b85354afa3ff075a919497292
Jeremy Kuhne [Tue, 13 Dec 2016 22:40:23 +0000 (14:40 -0800)]
Remove no-op file security (dotnet/coreclr#8611)
Deletes FileSecurityState and pulls redundant methods. Also
removes DriveInfo, which isn't in use in Core.
Commit migrated from https://github.com/dotnet/coreclr/commit/
4f1a90f2f4a2bd0656f22cb76c56e7a7fb631d73
Pat Gavlin [Mon, 12 Dec 2016 19:34:26 +0000 (11:34 -0800)]
Fix consume-order checking in codegen.
The switch to LIR invalidated the correspondence between a node's
sequence number and the order in which it must be consumed with respect
to other nodes. This in turn made the consume-order checks during code
generation incorrect.
This change introduces a new field, `gtUseNum`, that is used during code
generation to check the order in which nodes are consumed. Re-enabling
these checks revealed a bug in code generation for locked instructions
on x86, which were consuming their operands out-of-order; this change
also contains a fix for that bug.
Fixes dotnet/coreclr#7963.
Commit migrated from https://github.com/dotnet/coreclr/commit/
adf5d7dc89676534a4b6a31ab3fcfcd0fd2d7f16
Wes Haggard [Tue, 13 Dec 2016 21:34:16 +0000 (13:34 -0800)]
Merge pull request dotnet/coreclr#8560 from AlexRadch/Deconstruction
Supporting C# 7 deconstruction of KeyValuePair and DictionaryEntry
Commit migrated from https://github.com/dotnet/coreclr/commit/
4c278318860269c222ba730422cf59a087642732
Sivarv [Tue, 13 Dec 2016 19:39:02 +0000 (11:39 -0800)]
Merge pull request dotnet/coreclr#8621 from mikedn/cmp-cast-drop
Fix incorrect compare narrowing in TreeNodeInfoInitCmp
Commit migrated from https://github.com/dotnet/coreclr/commit/
c7e4e10254280df6afd581348a3ce79bb71c93b3
Mike Danes [Tue, 13 Dec 2016 12:45:13 +0000 (14:45 +0200)]
Fix incorrect compare narrowing in TreeNodeInfoInitCmp
TreeNodeInfoInitCmp attempts to eliminate the cast from
`cmp(cast<ubyte>(x), icon)` by narrowing the compare to ubyte. This should
only happen if the constant fits in a byte so it can be narrowed too,
otherwise codegen produces an int sized compare. (or a byte sized compare
with a truncated constant if we try to use GTF_RELOP_SMALL).
Commit migrated from https://github.com/dotnet/coreclr/commit/
5bfdc826d73a2f110bc21f6f20c6927f1a25c6f2
Mike McLaughlin [Tue, 13 Dec 2016 17:11:57 +0000 (09:11 -0800)]
Enable interop debugging for Windows amd64 and x86. (dotnet/coreclr#8603)
Found sos portable pdb problem on x86. Fixed interop problems between the native sos and SOS.NetCore managed helper assembly.
Commit migrated from https://github.com/dotnet/coreclr/commit/
db3994a5c58f108b80ed86275ceb3a8bd494fa5e
Jan Kotas [Tue, 13 Dec 2016 16:35:56 +0000 (08:35 -0800)]
Synchronize src\mscorlib\corefx with the CoreRT fork (dotnet/coreclr#8619)
Commit migrated from https://github.com/dotnet/coreclr/commit/
1242b3e3e7167182832000eec448709d54ab698e
Jeremy Kuhne [Tue, 13 Dec 2016 12:51:28 +0000 (04:51 -0800)]
Remove managed environment cache (dotnet/coreclr#8604)
The PAL already caches- no need to do it in managed.
Fold the code back into Environment.cs.
Commit migrated from https://github.com/dotnet/coreclr/commit/
f847295d458adeccfc6f11d2901d23f06024ca72
Jan Kotas [Tue, 13 Dec 2016 12:19:55 +0000 (04:19 -0800)]
Delete HostProtection attributes (dotnet/coreclr#8610)
Commit migrated from https://github.com/dotnet/coreclr/commit/
1cfbb8d79d65ea972eed8d73458fdf93697d031e
Hyung-Kyu Choi [Tue, 13 Dec 2016 06:27:01 +0000 (15:27 +0900)]
Ryujit/ARM32 Initial Lowering::IsContainableImmed for ARM
Initial implementation of IsContainableImmed for ARM.
Signed-off-by: Hyung-Kyu Choi <hk0110.choi@samsung.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
04689b1b87d1cca78649066b79e8317f1e0cfd92
Carol Eidt [Tue, 13 Dec 2016 02:48:18 +0000 (18:48 -0800)]
Merge pull request dotnet/coreclr#8520 from hqueue/arm/test20161208/lowercast
Ryujit/ARM32: Implement Lowering::LowerCast for ARM
Commit migrated from https://github.com/dotnet/coreclr/commit/
a6b60a049a78480e651e8c791fed43ffc3846438
Hyung-Kyu Choi [Tue, 13 Dec 2016 00:36:33 +0000 (09:36 +0900)]
Ryujit/ARM32 Implement Lowering::LowerCast for ARM
Simple integer to interger type conversion is passed.
Add comment for LowreCast with C++ comment style.
Signed-off-by: Hyung-Kyu Choi <hk0110.choi@samsung.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
fd68b6fe29f18d69093c7a007fbc8fb9e5eaaa90
Drew Scoggins [Tue, 13 Dec 2016 00:30:34 +0000 (16:30 -0800)]
Merge pull request dotnet/coreclr#8510 from DrewScoggins/CommitNameFix
Add ability to give a name to a manual PR run
When using the PR leg of the Jenkins performance jobs it is now possible to specify a name that will be used when inserting the data into the perf database.
Commit migrated from https://github.com/dotnet/coreclr/commit/
83827bceaa1b8d67656b8d955316d819e0a6ccee
Drew Scoggins [Thu, 8 Dec 2016 00:12:14 +0000 (16:12 -0800)]
Add ability to give a name to a PR run
Commit migrated from https://github.com/dotnet/coreclr/commit/
82ba80a5fd8f300204c15eda73c632ca5568fd88
Jan Kotas [Mon, 12 Dec 2016 23:43:49 +0000 (15:43 -0800)]
Rename Contract.Assert to Debug.Assert (dotnet/coreclr#8600)
Commit migrated from https://github.com/dotnet/coreclr/commit/
b638af3a4dd52fa7b1ea1958164136c72096c25c
SaeHie Park [Mon, 12 Dec 2016 23:22:29 +0000 (08:22 +0900)]
[x86/Linux] implement TheUMEntryPrestub (dotnet/coreclr#8589)
Initial code for x86 TheUMEntryPrestub, UMThunkStub
Commit migrated from https://github.com/dotnet/coreclr/commit/
ec17ff6bcd252867e3cd40b630e559f6cfb38b36
Davis Goodin [Mon, 12 Dec 2016 21:50:05 +0000 (15:50 -0600)]
Fix longname DAC to enable arm[64] symbol packages (dotnet/coreclr#8574)
Commit migrated from https://github.com/dotnet/coreclr/commit/
599896c06e23ca9698ff79f9c6fb563c64618d93
Sivarv [Mon, 12 Dec 2016 21:36:43 +0000 (13:36 -0800)]
Merge pull request dotnet/coreclr#8532 from sivarv/fixedRegFix
Fix to issue 8286.
Commit migrated from https://github.com/dotnet/coreclr/commit/
f26796f07f933f0b67fd15fdc5d2a21d5652908b
Michelle McDaniel [Mon, 12 Dec 2016 21:26:02 +0000 (13:26 -0800)]
Merge pull request dotnet/coreclr#8598 from adiaaida/disableGetGeneration
Disable GetGenerationWR2 for GCStress on x86
Commit migrated from https://github.com/dotnet/coreclr/commit/
d18d199ae7cfd7b3377712bfa30bf7baca12bf0f
Brian Sullivan [Mon, 12 Dec 2016 19:43:10 +0000 (11:43 -0800)]
Merge pull request dotnet/coreclr#8541 from briansull/vso-287671
Fix missing flags on GT_DYN_BLK node
Commit migrated from https://github.com/dotnet/coreclr/commit/
b6a21ae6768700fac36e52fd2900e4aa4019c64f
Alexander Radchenko [Mon, 12 Dec 2016 19:27:49 +0000 (02:27 +0700)]
// BLOCKED (do not add now): [EditorBrowsable(EditorBrowsableState.Never)]
Commit migrated from https://github.com/dotnet/coreclr/commit/
81033d3d863004e2535e08b7b78b7dda35228253
Michelle McDaniel [Mon, 12 Dec 2016 19:01:47 +0000 (11:01 -0800)]
Disable GetGenerationWR2 for GCStress on x86
Disable this test for GCStress on x86 until the cause for its failure
can be investigated.
Commit migrated from https://github.com/dotnet/coreclr/commit/
058e476f0b4b9209904e8f5be460be619b270e40
Gaurav Khanna [Mon, 12 Dec 2016 18:54:13 +0000 (10:54 -0800)]
Merge pull request dotnet/coreclr#8421 from hseok-oh/enable_arm_linux_nupkg
First step to create nuget packages for ARM32/Linux
Commit migrated from https://github.com/dotnet/coreclr/commit/
e7d19194fa99aa97514d5e920e84afbc9721af0e
Matt Warren [Mon, 12 Dec 2016 17:30:58 +0000 (17:30 +0000)]
Span<T> api update (dotnet/coreclr#8583)
* Changing method/property order to match CoreFX impl
To make diffing the files easier
* Added other missing methods to match CoreFX impl
Added:
- public void CopyTo(Span<T> destination)
- public static bool operator ==(Span<T> left, Span<T> right)
- public static bool operator !=(Span<T> left, Span<T> right)
- public override bool Equals(object obj)
- public override int GetHashCode()
Also removed 'public void Set(ReadOnlySpan<T> values)' and it's no
longer part of the Span<T> public API, see
https://github.com/dotnet/apireviews/tree/master/2016/11-04-SpanOfT#spantset
Commit migrated from https://github.com/dotnet/coreclr/commit/
98798b78e2e3284409289c7253bac7b999c0ad88