platform/upstream/coreclr.git
7 years agoMerge pull request #7945 from ramarag/MemoryFailPoint
Rama krishnan Raghupathy [Thu, 3 Nov 2016 23:02:03 +0000 (16:02 -0700)]
Merge pull request #7945 from ramarag/MemoryFailPoint

Disabling checks in MemoryFailPoint for Xplat

7 years agoMerge pull request #7908 from sandreenko/fix_tail_call_in_R2R
sandreenko [Thu, 3 Nov 2016 20:58:25 +0000 (13:58 -0700)]
Merge pull request #7908 from sandreenko/fix_tail_call_in_R2R

Correct pattern check for tail calls

7 years agoFix a issue where ETW was losing RCW and CCW in heap dumps. (#7971)
Vance Morrison [Thu, 3 Nov 2016 20:37:53 +0000 (13:37 -0700)]
Fix a issue where ETW was losing RCW and CCW in heap dumps. (#7971)

Basically our builk events for RCWs and CCWs were too big, causing ETW to reject them, and thus losing information.

However you have to have at least several hundred befor you have enough to force the problem.

7 years agoMerge pull request #7958 from pgavlin/VSO280123
Pat Gavlin [Thu, 3 Nov 2016 19:09:50 +0000 (12:09 -0700)]
Merge pull request #7958 from pgavlin/VSO280123

Make a few VN methods tolerant of NoVN.

7 years agoMake CrossGen documentation up to date (#7973)
John Chen [Thu, 3 Nov 2016 18:59:40 +0000 (11:59 -0700)]
Make CrossGen documentation up to date (#7973)

7 years agoCorrect pattern check
Sergey Andreenko [Mon, 31 Oct 2016 19:31:10 +0000 (12:31 -0700)]
Correct pattern check

sequense
localVariable = cast.int(call.small_type());
return localVaribale
is correct tail call pattern.

7 years agoMerge pull request #7956 from pgavlin/VSO280110
Pat Gavlin [Thu, 3 Nov 2016 17:35:28 +0000 (10:35 -0700)]
Merge pull request #7956 from pgavlin/VSO280110

Properly update block flags during branch opt.

7 years agoFormat code.
Pat Gavlin [Thu, 3 Nov 2016 17:35:05 +0000 (10:35 -0700)]
Format code.

7 years agoMerge pull request #7959 from pgavlin/VSO280116
Pat Gavlin [Thu, 3 Nov 2016 17:29:57 +0000 (10:29 -0700)]
Merge pull request #7959 from pgavlin/VSO280116

Fix an assert condition in lowering.

7 years agoFormat code.
Pat Gavlin [Thu, 3 Nov 2016 17:29:32 +0000 (10:29 -0700)]
Format code.

7 years agoMerge pull request #7968 from AndyAyersMS/CaptureNewObservations
Andy Ayers [Thu, 3 Nov 2016 17:11:25 +0000 (10:11 -0700)]
Merge pull request #7968 from AndyAyersMS/CaptureNewObservations

Inliner: capture new observations

7 years agoMark NonRandomizedStringEqualityComparer as serializable (#7966)
Stephen Toub [Thu, 3 Nov 2016 10:06:36 +0000 (06:06 -0400)]
Mark NonRandomizedStringEqualityComparer as serializable (#7966)

7 years agoInliner: capture new observations
Andy Ayers [Tue, 1 Nov 2016 23:22:10 +0000 (16:22 -0700)]
Inliner: capture new observations

Rebase the DiscretionaryPolicy on the EnhancedLegacyPolicy, and
capture and report some of the new observations that have been added
recently.

This change adds a new HAS_GC_STRUCT observation in addition to the
more specific RARE_GC_STRUCT, so that the DiscretionaryPolicy can
be notified of GC struct locals and temps for all candidates, not
just ones invoked from rare call sites.

No changes in codegen.

7 years agoRevises 'JitTimer::PrintCsvHeader' to use 'append' mode (#7073)
Jonghyun Park [Thu, 3 Nov 2016 02:46:19 +0000 (11:46 +0900)]
Revises 'JitTimer::PrintCsvHeader' to use 'append' mode (#7073)

* Revises 'JitTimer::PrintCsvHeader' to use 'append' mode

The current implementation of 'JitTimer::PrintCsvHeader' opens a CSV
file with 'read' mode and re-opens it with 'write' mode if it is absent.

The current implementation has two problems:
First, "read" file pointer will be closed even if it is null,
which is reported in #7072.
Second, "write" file pointer will be leaked as there is no corresponding
fclose.

This commit rewrites 'JitTimer::PrintCsvHeader' to fix #7072.

7 years agoParseNumber & related more efficient (#3163)
varocarbas [Thu, 3 Nov 2016 02:33:46 +0000 (03:33 +0100)]
ParseNumber & related more efficient (#3163)

7 years agoMerge pull request #7936 from vancem/EventSourceDisposeRace.11-01-16
David Mason [Thu, 3 Nov 2016 02:23:18 +0000 (19:23 -0700)]
Merge pull request #7936 from vancem/EventSourceDisposeRace.11-01-16

Fix Deadlock associated with ETW commands happening during dispose.

7 years agoFix race condition (#7928)
Dmitry-Me [Thu, 3 Nov 2016 01:38:49 +0000 (04:38 +0300)]
Fix race condition (#7928)

7 years agoSuppress SOS.NETCore.dll error msg in release mode (#6975)
chunseoklee [Wed, 2 Nov 2016 22:18:53 +0000 (07:18 +0900)]
Suppress SOS.NETCore.dll error msg in release mode (#6975)

Suppress error msg when running coreclr without
SOS.NETCore.dll in release mode

7 years agoFix an assert condition in lowering.
Pat Gavlin [Wed, 2 Nov 2016 21:52:58 +0000 (14:52 -0700)]
Fix an assert condition in lowering.

Tail calls via the tail call helper must live in GC-safe blocks. A block
is GC-safe if either it or all of its dominators are also GC-safe. If we
are not optimizing, we will not compute dominators, and will therfore
not mark blocks whose dominators are all GC-safe. When deciding whether
or not we need to make a block GC-safe during tail call morphing,
however, we allow a tail call in an unmarked block iff the entry block
is GC-safe, as the entry block trivially dominates every reachable
block. This change fixes an assert that was not allowing for a tail call
in a block that is not marked GC-safe where the entry block is marked
GC-safe.

7 years agoSet pRetVal as NULL on error inside 'VIRTUALCommitMemory' (#7920)
Jonghyun Park [Wed, 2 Nov 2016 21:44:24 +0000 (06:44 +0900)]
Set pRetVal as NULL on error inside 'VIRTUALCommitMemory' (#7920)

7 years agoMerge pull request #7917 from pgavlin/VSO280120
Pat Gavlin [Wed, 2 Nov 2016 21:23:09 +0000 (14:23 -0700)]
Merge pull request #7917 from pgavlin/VSO280120

Fix VSO280120.

7 years agoMake a few VN methods tolerant of NoVN.
Pat Gavlin [Wed, 2 Nov 2016 21:08:41 +0000 (14:08 -0700)]
Make a few VN methods tolerant of NoVN.

There were a few methods on the VN store that were not resilient to
being provided with the "no value number" sentinel value. This lack of
resilience caused assertion failures during assertion propagation when
generating assertions for trees marked with "no value number".

7 years agoProperly update block flags during branch opt.
Pat Gavlin [Wed, 2 Nov 2016 19:39:40 +0000 (12:39 -0700)]
Properly update block flags during branch opt.

`fgOptimizeBranch` was updating the flags for the predecessor block
using the flags from the wrong destination block. This was causing an
assert in `AllocateObjects` when verifying that all blocks that contain
`allocObj` nodes are properly marked with `BBF_HAS_NEWOBJ`.

7 years agoFix VSO280120.
Pat Gavlin [Mon, 31 Oct 2016 22:32:29 +0000 (15:32 -0700)]
Fix VSO280120.

st.lclFld decomposition was splitting a st.lclFld into two of the same
without bumping the destination var's ref count.

7 years agoCheck pointer before dereferencing it (#7930)
Dmitry-Me [Wed, 2 Nov 2016 17:42:41 +0000 (20:42 +0300)]
Check pointer before dereferencing it (#7930)

7 years agoMerge pull request #7953 from dotnet-bot/from-tfs
Jan Kotas [Wed, 2 Nov 2016 16:54:14 +0000 (09:54 -0700)]
Merge pull request #7953 from dotnet-bot/from-tfs

Merge changes from TFS

7 years agoMerge pull request #7943 from sivarv/rotateFix
Sivarv [Wed, 2 Nov 2016 15:01:42 +0000 (08:01 -0700)]
Merge pull request #7943 from sivarv/rotateFix

Exclude GT_ROL/ROR from ==/!= 0 compare peep optimization

7 years agoSpecify .NETCoreApp,Version=v1.1 for test projects (#7937)
Davis Goodin [Wed, 2 Nov 2016 14:37:33 +0000 (09:37 -0500)]
Specify .NETCoreApp,Version=v1.1 for test projects (#7937)

7 years agoFix build break
Jan Kotas [Wed, 2 Nov 2016 14:35:30 +0000 (07:35 -0700)]
Fix build break

[tfs-changeset: 1636334]

7 years agoMerge pull request #7951 from jkotas/revert-correct-parameter-names
Jan Kotas [Wed, 2 Nov 2016 14:08:50 +0000 (07:08 -0700)]
Merge pull request #7951 from jkotas/revert-correct-parameter-names

Revert "Correct parameter names."

7 years agoRevert "Correct parameter names."
Jan Kotas [Wed, 2 Nov 2016 14:06:30 +0000 (07:06 -0700)]
Revert "Correct parameter names."

This reverts commit 0cae769f3c60bf2a696d02a88527a46d5b211cd5.

7 years agoMerge pull request #7950 from jkotas/revert-parameter-name-changes
Jan Kotas [Wed, 2 Nov 2016 13:55:43 +0000 (06:55 -0700)]
Merge pull request #7950 from jkotas/revert-parameter-name-changes

Revert "Correct parameter names."

7 years agoRevert "Correct parameter names."
Jan Kotas [Wed, 2 Nov 2016 13:53:53 +0000 (06:53 -0700)]
Revert "Correct parameter names."

This reverts commit a212082aa4cea8529b4c78844e2a7408ff6f7969.

7 years ago[ARM] Implement BitPosition with arm intrinsics (#7819)
Hanjoung Lee [Wed, 2 Nov 2016 13:23:57 +0000 (22:23 +0900)]
[ARM] Implement BitPosition with arm intrinsics (#7819)

7 years agoMerge pull request #7904 from shrah/master
Faizur Rahman [Wed, 2 Nov 2016 06:53:04 +0000 (23:53 -0700)]
Merge pull request #7904 from shrah/master

Update S.R.InteropServices to ns2.0

7 years agoFix build break 814276: FEATURE_SPAN_OF_T disabled in runtime but enabled in DAC
John Chen [Wed, 2 Nov 2016 05:50:56 +0000 (22:50 -0700)]
Fix build break 814276: FEATURE_SPAN_OF_T disabled in runtime but enabled in DAC

[tfs-changeset: 1636322]

7 years agoMerge pull request #7944 from dotnet-bot/from-tfs
Jan Kotas [Wed, 2 Nov 2016 01:59:16 +0000 (18:59 -0700)]
Merge pull request #7944 from dotnet-bot/from-tfs

Merge changes from TFS

7 years agoExpose missing API in models.xml (#7940)
Ian Hays [Wed, 2 Nov 2016 01:58:47 +0000 (18:58 -0700)]
Expose missing API in models.xml (#7940)

progress towards https://github.com/dotnet/corefx/issues/12812 and https://github.com/dotnet/corefx/issues/12398

7 years agoUpdate GCInfoDecoder with CoreRT changes (#7938)
Jan Kotas [Wed, 2 Nov 2016 01:57:36 +0000 (18:57 -0700)]
Update GCInfoDecoder with CoreRT changes (#7938)

Porting most of the changes from https://github.com/dotnet/corert/pull/2116 to make GCInfoDecoder compile in CoreRT to keep the different copies in sync.

7 years agoDisabling checks in MemoryFailPoint for Xplat till primitives like VirtualQuery
DDCloud [Wed, 2 Nov 2016 00:48:23 +0000 (17:48 -0700)]
Disabling checks in MemoryFailPoint for Xplat till primitives like VirtualQuery
are implmemented properly

7 years agoRotate Left/Right xarch instructions don't set ZF and ZF flag.
sivarv [Wed, 2 Nov 2016 00:00:32 +0000 (17:00 -0700)]
Rotate Left/Right xarch instructions don't set ZF and ZF flag.

7 years agoFix GitHub build break caused by change #1636179
John Chen [Tue, 1 Nov 2016 23:20:08 +0000 (16:20 -0700)]
Fix GitHub build break caused by change #1636179

[tfs-changeset: 1636227]

7 years agoEnable the rest of netstandard1.7 globalization APIs (#7935)
Tarek Mahmoud Sayed [Tue, 1 Nov 2016 23:17:50 +0000 (16:17 -0700)]
Enable the rest of netstandard1.7 globalization APIs (#7935)

* Enable more netstandard 1.7 Globalization APIs

* Enable Windows support for the new APIs

* Fix spaces and line alignments

7 years agoMerge pull request #7923 from AndyAyersMS/FixNoCandidateBug
Andy Ayers [Tue, 1 Nov 2016 20:18:03 +0000 (13:18 -0700)]
Merge pull request #7923 from AndyAyersMS/FixNoCandidateBug

Jit: spill stack for non-candidate calls

7 years agoFix deadlock when commands race with EventSource Shutdown
Vance Morrison [Tue, 1 Nov 2016 19:21:34 +0000 (12:21 -0700)]
Fix deadlock when commands race with EventSource Shutdown

7 years agoCrossGen: Copy all entries of Debug Directory Table (#7849)
John Chen [Tue, 1 Nov 2016 18:34:27 +0000 (11:34 -0700)]
CrossGen: Copy all entries of Debug Directory Table (#7849)

Fixes issue #6482.

7 years agoFix build break 814217 by removing inconsistencies between BCL and runtime
dotnet-bot [Tue, 1 Nov 2016 18:26:34 +0000 (11:26 -0700)]
Fix build break 814217  by removing inconsistencies between BCL and runtime

[tfs-changeset: 1636179]

7 years agoHandle simd checks in OptimizeRangeCheck
Joseph Tremoulet [Fri, 14 Oct 2016 18:20:49 +0000 (14:20 -0400)]
Handle simd checks in OptimizeRangeCheck

When the index is a constant, this code applies to `GT_SIMD_CHK` equally
well as it applies to `GT_ARR_BOUNDS_CHECK`.

7 years agoUse nameof throughout mscorlib (#7929)
Stephen Toub [Tue, 1 Nov 2016 15:47:18 +0000 (11:47 -0400)]
Use nameof throughout mscorlib (#7929)

7 years agoMerge pull request #7677 from CarolEidt/StructOpts
Carol Eidt [Tue, 1 Nov 2016 15:42:01 +0000 (08:42 -0700)]
Merge pull request #7677 from CarolEidt/StructOpts

Enable optimization of structs

7 years agoMerge pull request #7926 from dotnet-bot/from-tfs
Jan Kotas [Tue, 1 Nov 2016 14:06:37 +0000 (07:06 -0700)]
Merge pull request #7926 from dotnet-bot/from-tfs

Merge changes from TFS

7 years agoMerge pull request #7883 from adiaaida/fixDecomposeRotate
Michelle McDaniel [Tue, 1 Nov 2016 13:47:54 +0000 (06:47 -0700)]
Merge pull request #7883 from adiaaida/fixDecomposeRotate

Fix DecomposeRotate for > 32 case

7 years agoUse resolver to get IL header and size (#7924)
Mukul Sabharwal [Tue, 1 Nov 2016 13:28:58 +0000 (14:28 +0100)]
Use resolver to get IL header and size (#7924)

7 years agoFix build break on x86
Jan Kotas [Tue, 1 Nov 2016 05:58:49 +0000 (22:58 -0700)]
Fix build break on x86

[tfs-changeset: 1636135]

7 years agoUse normal verbosity logging when building tests (#7921)
Andy Ayers [Tue, 1 Nov 2016 05:57:25 +0000 (22:57 -0700)]
Use normal verbosity logging when building tests (#7921)

Test build log file is ~4GB with diag verbosity. With normal it's about 20MB.
This seems to speed up the test build for me considerably.

See #7916.

7 years agoMove SR adapter into root (#7925)
Jeremy Kuhne [Tue, 1 Nov 2016 05:57:11 +0000 (22:57 -0700)]
Move SR adapter into root (#7925)

CoreFX creates SR in the System namespace. While putting the CoreCLR SR
adapter in the root may be unconventional, it allows us to keep the
shared code identical.

7 years agoMerge pull request #7915 from dotnet-bot/from-tfs
Jan Kotas [Tue, 1 Nov 2016 05:56:58 +0000 (22:56 -0700)]
Merge pull request #7915 from dotnet-bot/from-tfs

Merge changes from TFS

7 years agoMerge pull request #7912 from JosephTremoulet/FlagVectorCounts
Joseph Tremoulet [Tue, 1 Nov 2016 05:31:02 +0000 (01:31 -0400)]
Merge pull request #7912 from JosephTremoulet/FlagVectorCounts

Flag vector counts

7 years agoMerge pull request #7910 from JosephTremoulet/FixInitTest
Joseph Tremoulet [Tue, 1 Nov 2016 05:29:57 +0000 (01:29 -0400)]
Merge pull request #7910 from JosephTremoulet/FixInitTest

Fix check for initial induction variable value

7 years agoFix check for initial induction variable value
Joseph Tremoulet [Thu, 27 Oct 2016 19:04:40 +0000 (15:04 -0400)]
Fix check for initial induction variable value

Checking that `head` dominates `entry` is insufficient, becuase there may
be a codepath from `head` through other nodes that modify the induction
variable to `entry`.  Check instead that all preds of `entry` are either
`head` or in the loop.

Resolves #7906.

7 years agoMerge pull request #7909 from JosephTremoulet/FixLoopEntryCheck
Joseph Tremoulet [Tue, 1 Nov 2016 05:24:10 +0000 (01:24 -0400)]
Merge pull request #7909 from JosephTremoulet/FixLoopEntryCheck

Skip removed loops in `optBlockIsLoopEntry`

7 years agoFix build break
Jan Kotas [Tue, 1 Nov 2016 03:14:32 +0000 (20:14 -0700)]
Fix build break

[tfs-changeset: 1636112]

7 years agoJit: spill stack for non-candidate calls
Andy Ayers [Tue, 1 Nov 2016 00:26:07 +0000 (17:26 -0700)]
Jit: spill stack for non-candidate calls

Closes #7907.

Spill the evaluation stack at non-candidate calls since the call may
modify locals or args that are currently live on the stack.

In the attached test case I can't get the problematic IL sequence to
happen for the `F0` variant, but it is there for the `F1` variant.

No diffs seen in corlib or any of the framework assemblies that are
run via jit-dasm.

7 years agoMerge pull request #7854 from dotnet-bot/master-UpdateDependencies
Gaurav Khanna [Tue, 1 Nov 2016 00:03:50 +0000 (17:03 -0700)]
Merge pull request #7854 from dotnet-bot/master-UpdateDependencies

Update CoreClr, CoreFx to beta-24631-02, beta-24631-01, respectively (master)

7 years agoMerge pull request #7918 from RussKeldorph/repoint-corefx-1.1.0
Russ Keldorph [Mon, 31 Oct 2016 23:52:44 +0000 (16:52 -0700)]
Merge pull request #7918 from RussKeldorph/repoint-corefx-1.1.0

Make dotnet/coreclr reference corresponding dotnet/corefx branch

7 years agoMerge pull request #7867 from Clockwork-Muse/ArgumentException
Jan Kotas [Mon, 31 Oct 2016 23:46:32 +0000 (16:46 -0700)]
Merge pull request #7867 from Clockwork-Muse/ArgumentException

Replace hardcoded parameter names to ArgumentException with nameof

7 years agoMake dotnet/coreclr reference corresponding dotnet/corefx branch
Russ Keldorph [Mon, 31 Oct 2016 23:18:11 +0000 (16:18 -0700)]
Make dotnet/coreclr reference corresponding dotnet/corefx branch

We run CoreFx tests under JitStress modes in CoreCLR.  Previously, we were
always pulling down CoreFx master, which is bad for CoreCLR release
branches when things are out of synch.

7 years agoMerge pull request #7885 from pgavlin/VSO278376.2
Pat Gavlin [Mon, 31 Oct 2016 22:33:53 +0000 (15:33 -0700)]
Merge pull request #7885 from pgavlin/VSO278376.2

Fix VSO 278376.

7 years agoMerge pull request #7905 from pgavlin/VSO279380
Pat Gavlin [Mon, 31 Oct 2016 22:33:29 +0000 (15:33 -0700)]
Merge pull request #7905 from pgavlin/VSO279380

Fix VSO 279380.

7 years agoAdd LPFLG_SIMD_LIMIT flag
Joseph Tremoulet [Fri, 14 Oct 2016 18:11:29 +0000 (14:11 -0400)]
Add LPFLG_SIMD_LIMIT flag

This flag identifies loops whose limit was a Vector<T>.Count expression.
This can be used in heuristics to target more aggressive optimizations at
SIMD code.

7 years agoMerge pull request #7852 from AndyAyersMS/InlinerSmallFixes
Andy Ayers [Mon, 31 Oct 2016 21:47:16 +0000 (14:47 -0700)]
Merge pull request #7852 from AndyAyersMS/InlinerSmallFixes

Inliner: Fix LegacyPolicyAssert; Dump prejit noinline reasons

7 years agoFix DecomposeRotate for > 32 case
Michelle McDaniel [Fri, 28 Oct 2016 22:08:42 +0000 (15:08 -0700)]
Fix DecomposeRotate for > 32 case

In DecomposeRotate, we had a bug where we assumed loOp1 was
always gtLong's op1 and hiOp1 is always gtLong's op2 when we
call RepresentOpAsLocalVar, which is not true in the > 32 case, where we
swap hi and lo before generating the shift instructions for the rotate.
This change refactors the code so that we can correctly call
RepresentOpAsLocalVar with which of gtLong's ops hi and lo are.

7 years agoA couple of changes included:
Alex Ghiondea [Mon, 31 Oct 2016 21:37:00 +0000 (14:37 -0700)]
A couple of changes included:
      - Make sure we have a way to disable building with the Roslyn compiler. That should only happen in the internal build.
      - Update the FeatureSpanOfT to also condition on using the latest compiler
      - Introduce an if/def in string.cs for code that uses the ref locals / ref return.
      - Make sure we only include the CryptographicException when building CoreCLR
      - Update the PInvokeMap.txt file to include the right set of APIs.
      - Remove duplicated APIs from PInvokeMap.txt

[tfs-changeset: 1636041]

7 years agoMerge pull request #7884 from AlexGhiondea/Port_SecureString
AlexGhiondea [Mon, 31 Oct 2016 20:06:26 +0000 (13:06 -0700)]
Merge pull request #7884 from AlexGhiondea/Port_SecureString

Bring to CoreCLR the SecureString implementation from CoreFx.

7 years agoAdd GTF_ICON_SIMD_COUNT flag
Joseph Tremoulet [Fri, 14 Oct 2016 18:10:10 +0000 (14:10 -0400)]
Add GTF_ICON_SIMD_COUNT flag

This flag is used to indicate that an integer constant in the IR is the
result of replacing the Vector<T>.Count intrinsic.  This can be used to
drive heuristics focusing more aggressive optimizations on SIMD code.

7 years agoSkip removed loops in `optBlockIsLoopEntry`
Joseph Tremoulet [Fri, 14 Oct 2016 18:08:48 +0000 (14:08 -0400)]
Skip removed loops in `optBlockIsLoopEntry`

This allows running this utility downstream of loop unrolling.

7 years agoMerge pull request #7886 from jkotas/SpanOfT
Jan Kotas [Mon, 31 Oct 2016 18:47:57 +0000 (11:47 -0700)]
Merge pull request #7886 from jkotas/SpanOfT

Merge SpanOfT branch into master

7 years agoFix VSO 279380.
Pat Gavlin [Mon, 31 Oct 2016 18:11:18 +0000 (11:11 -0700)]
Fix VSO 279380.

The liveness pass attempts to remove dead stores that it encounters
during its liveness computation. Successfully removing a dead store,
however, may invalidate the results of the computation. Therefore, the
pass operates as a fixed-point algorithm: it recomputes liveness until
either the contents of the function do not change or the removed code
does not change the results.

When running liveness on LIR, the correct flag--`fgStmtRemoved`--was not
being set if a dead store was succesfully removed. This caused the
liveness pass to terminate early and produce invalid results in certain
cases. This fix sets `fgStmtRemoved` when a dead store is successfully
removed in an LIR block.

7 years agoUpdate S.R.InteropServices to ns2.0
Faizur Rahman [Fri, 28 Oct 2016 01:11:38 +0000 (18:11 -0700)]
Update S.R.InteropServices to ns2.0

This is the final diff with net standard 2.0 except the SecureString functions. In particular,it adds the following:

M Marshal.BindToMoniker(System.String)
M Marshal.ChangeWrapperHandleStrength(System.Object,System.Boolean)
M ExternalException.ToString
T HandleRef

7 years agoMerge pull request #7758 from pgavlin/VSO267565
Pat Gavlin [Mon, 31 Oct 2016 18:07:46 +0000 (11:07 -0700)]
Merge pull request #7758 from pgavlin/VSO267565

Fix P/Invoke cookie passing on x86.

7 years agoFix VSO 278376.
Pat Gavlin [Fri, 28 Oct 2016 18:44:18 +0000 (11:44 -0700)]
Fix VSO 278376.

genFloatToFloatCast was not checking whether or not its source operand
was an in-memory, register-optional node before comparing its source
register against its target register. This caused an assert in checked
builds (and SBCG in release builds) because the source temp was never
released.

7 years agoSecureStringMarshal was not correctly being build for Unix.
Alex Ghiondea [Mon, 31 Oct 2016 17:13:52 +0000 (10:13 -0700)]
SecureStringMarshal was not correctly being build for Unix.

7 years agoMerge pull request #7901 from AlexGhiondea/FixBinCompat
AlexGhiondea [Mon, 31 Oct 2016 17:05:18 +0000 (10:05 -0700)]
Merge pull request #7901 from AlexGhiondea/FixBinCompat

Get latest behavior when missing TFM for BinaryCompatibility class

7 years agoAdd workaround for JIT crash
Jan Kotas [Sun, 30 Oct 2016 21:21:16 +0000 (14:21 -0700)]
Add workaround for JIT crash

7 years agoChange Span fields to private readonly + other review feedback
Jan Kotas [Sun, 30 Oct 2016 19:30:18 +0000 (12:30 -0700)]
Change Span fields to private readonly + other review feedback

7 years agoUpdate CoreClr, CoreFx to beta-24631-02, beta-24631-01, respectively
dotnet-bot [Mon, 31 Oct 2016 16:19:13 +0000 (16:19 +0000)]
Update CoreClr, CoreFx to beta-24631-02, beta-24631-01, respectively

7 years agoWhen reading the TFM for the BinaryCompatibility class on CoreCLR, set the TFM to...
Alex Ghiondea [Mon, 31 Oct 2016 14:26:59 +0000 (07:26 -0700)]
When reading the TFM for the BinaryCompatibility class on CoreCLR, set the TFM to be the latest version we have in our code.

This ensures that we are going to get the latest behavior (4.5.2+) for all the quirks that were using that class.

7 years agoAdd the SecureStringMarshal and CryptographicException to model.xml
Alex Ghiondea [Mon, 31 Oct 2016 14:21:28 +0000 (07:21 -0700)]
Add the SecureStringMarshal and CryptographicException to model.xml

7 years agoMerge pull request #7897 from stephentoub/stream_copyto
Stephen Toub [Mon, 31 Oct 2016 13:03:30 +0000 (09:03 -0400)]
Merge pull request #7897 from stephentoub/stream_copyto

Use ArrayPool in Stream.CopyTo{Async}

7 years agoRemove StreamHelpers.ArrayPoolCopy.cs
Stephen Toub [Mon, 31 Oct 2016 11:05:13 +0000 (07:05 -0400)]
Remove StreamHelpers.ArrayPoolCopy.cs

It's no longer necessary now that Stream.CopyToAsync itself uses ArrayPool.

7 years agoFixing Typo in variable name in DateTime (#7898)
Peter Marcu [Mon, 31 Oct 2016 10:55:44 +0000 (03:55 -0700)]
Fixing Typo in variable name in DateTime (#7898)

7 years agoAvoid boxing in calls to enum's GetHashCode (#7895)
Michal Strehovský [Mon, 31 Oct 2016 05:45:58 +0000 (22:45 -0700)]
Avoid boxing in calls to enum's GetHashCode (#7895)

7 years agoDateTime.ToString() Fast Track for RFC1123 (#7891)
Peter Marcu [Mon, 31 Oct 2016 05:28:45 +0000 (22:28 -0700)]
DateTime.ToString() Fast Track for RFC1123 (#7891)

* DateTime.ToString() Fast Track for RFC1123

7 years agoFix P/Invoke cookie passing on x86.
Pat Gavlin [Fri, 21 Oct 2016 21:08:11 +0000 (14:08 -0700)]
Fix P/Invoke cookie passing on x86.

On x86, the P/Invoke cookie (when required) is passed on the stack
after all other stack arguments (if any).

7 years agoUse ArrayPool in Stream.CopyTo{Async}
Stephen Toub [Mon, 31 Oct 2016 02:08:26 +0000 (22:08 -0400)]
Use ArrayPool in Stream.CopyTo{Async}

7 years agoAdd boilerplate doc comments to trivial methods
Jan Kotas [Sun, 30 Oct 2016 09:28:14 +0000 (02:28 -0700)]
Add boilerplate doc comments to trivial methods

7 years agoStreamline implementation of ToArray to call CopyTo<T> directly
Jan Kotas [Sun, 30 Oct 2016 08:50:27 +0000 (01:50 -0700)]
Streamline implementation of ToArray to call CopyTo<T> directly
Fix missing pinning in CopyTo<T>
Move and rename some JitHelpers to S.R.CS.Unsafe to make different implementations more similar

7 years agoFix build break on 32-bit platforms
Jan Kotas [Sat, 29 Oct 2016 06:04:36 +0000 (23:04 -0700)]
Fix build break on 32-bit platforms

7 years agoDisable Span<T> GC reporting under TODO to workaround JIT issue
Jan Kotas [Sat, 29 Oct 2016 05:28:49 +0000 (22:28 -0700)]
Disable Span<T> GC reporting under TODO to workaround JIT issue

7 years agoadded implicit cast operator from ArraySegment to Spans (#7297)
Adam Sitnik [Wed, 21 Sep 2016 21:24:02 +0000 (23:24 +0200)]
added implicit cast operator from ArraySegment to Spans (#7297)