summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2016-12-08Avoid allocating in TimeZoneInfo.GetHashCode() (#8513)Justin Van Patten1-1/+1
Avoid the intermediate ToUpper string allocation.
2016-12-08Simplify TimeZoneInfo.Equals(object) (#8514)Justin Van Patten1-5/+1
Equals(TimeZoneInfo) already handles null.
2016-12-08Move native search paths forward (#8531)Jeremy Kuhne1-64/+64
Set native search paths in AppDomain.Setup before doing the rest of the setup steps to get ahead of potential P/Invoke calls.
2016-12-08Update glossary.mdKarel Zikmund1-0/+1
2016-12-08Merge pull request #8524 from hqueue/xarch/lowercastRuss Keldorph1-1/+0
Remove an unused local variable
2016-12-08Remove an unused local variableHyung-Kyu Choi1-1/+0
In lowerxarch.cpp, local variable srcUns is defined but not used at Lowering::LowerCast(GenTree* tree). Signed-off-by: Hyung-Kyu Choi <hk0110.choi@samsung.com>
2016-12-07Strip some conditional compilation in SPCL (#8511)Jeremy Kuhne24-7676/+104
Removed: FEATURE_FUSION FEATURE_PATHCOMPAT FEATURE_APPDOMAINMANAGER_INITOPTIONS FEATURE_APTCA FEATURE_CLICKONCE FEATURE_IMPERSONATION FEATURE_MULTIMODULE_ASSEMBLIES Removed some: FEATURE_CAS_POLICY !FEATURE_CORECLR FEATURE_REMOTING
2016-12-08[x86/Linux] Fix inconsistent GetCLRFunction definitions (#8472)Jonghyun Park4-4/+3
* [x86/Linux] Fix inconsistency in GetCLRFunction definitions GetCLRFunction is treated as pfnGetCLRFunction_t which has __stdcall convention, but is implemented without __stdcall. This inconsistency causes segmentaion fault while initializing CoreCLR for x86/Linux. This commit fixes such inconsistency via adding __stdcall to GetCLRFunction implementation. In addition, this commit declares GetCLRFuntion in 'utilcode.h' and and revises .cpp files to include 'utilcode.h' instead of declaring 'GetCLRFunction'. * Remove unnecessary includes * Remove another unnecessay include
2016-12-07Merge pull request #8509 from dotnet-bot/from-tfsBrian Sullivan1-3/+3
Merge changes from TFS
2016-12-07Refactor Span<T> to ease implementation of JIT intrinsics (#8497)Jan Kotas15-96/+123
- Introduce internal ByReference<T> type for byref fields and change Span to use it - Generalize handling of byref-like types in the type loader - Make DangerousGetPinnableReference public while I was on it
2016-12-07Merge pull request #8505 from pgavlin/VSO297215Pat Gavlin1-18/+15
Use a left-leaning comma tree when morphing a stelem.ref helper.
2016-12-07Enable POGO build and link for CodegenMirrorBrian Sullivan1-3/+3
[tfs-changeset: 1640669]
2016-12-07Merge pull request #8504 from mikedn/sort-comparisonJan Kotas4-611/+43
Change ArraySortHelper to use Comparison<T>
2016-12-07Merge pull request #8482 from CarolEidt/Fix8220Carol Eidt6-21/+292
Use only lower floats for Vector3 dot and equality
2016-12-07Merge pull request #8488 from sivarv/upperSaveSivarv1-7/+24
Fix to issue 8356.
2016-12-07Use a left-leaning comma tree when morphing a stelem.ref helper.Pat Gavlin1-18/+15
fgMorphCall may change a call to the stelem.ref helper that is storing a null value into a simple store. This transformation needs to construct a comma tree to hold the argument setup nodes present on the call if any exist. Originally this tree was constructed in right-leaning fashion (i.e. the first comma node was the root of the tree and each successive comma node was the RHS of its parent). Unfortunately, this construction did not automatically propagate the flags of a comma node's children to the comma node, since not all of each comma node's actual children were available at the time it was constructed. Constructing the tree in left-leaning fashion (i.e. the first comma node is the left-most child and the final comma node is the root of the tree) allows the flag propagation to be performed correctly by constrution. Fixes VSO 297215.
2016-12-07Merge pull request #8503 from pgavlin/VSO289704Pat Gavlin1-5/+8
Remove a use of `gtGetOp` in earlyprop.
2016-12-07Remove unused DepthLimitedQuickSort methodsMike Danes2-610/+2
These are never used in CoreCLR
2016-12-07Change ArraySortHelper to use Comparison<T>Mike Danes4-31/+71
The Array/List.Sort overloads that take a Comparison<T> have worse performance than the ones that take a IComparer<T>. That's because sorting is implemented around IComparer<T> and a Comparison<T> needs to be wrapped in a comparer object to be used. At the same time, interface calls are slower than delegate calls so the existing implementation doesn't offer the best performance even when the IComparer<T> based overloads are used. By changing the implementation to use Comparison<T> we avoid interface calls in both cases. When IComparer<T> overloads are used a Comparison<T> delegate is created from IComparer<T>.Compare, that's an extra object allocation but sorting is faster and we avoid having two separate sorting implementations.
2016-12-07Remove a use of `gtGetOp` in earlyprop.Pat Gavlin1-5/+8
Instead, use `GenTreeIndir::Addr`, as some indirections are not simple operators. Fixes VSO 289704.
2016-12-07[x86/Linux][SOS] Get correct stack pointer from DT_CONTEXT (#8500)Evgeny Pavlov1-0/+2
2016-12-07Use only lower floats for Vector3 dot and equalityCarol Eidt6-21/+292
For both dot product and comparisons that produce a boolean result, we need to use only the lower 3 floats. The bug was exposed by a case where the result of a call was being used in one of these operations without being stored to a local (which would have caused the upper bits to be cleared). Fix #8220
2016-12-07[x86/Linux][SOS] Add definitions for CLR_CMAKE_PLATFORM_ARCH_I386 in ↵Evgeny Pavlov1-0/+4
CMakeLists.txt file of lldbplugin (#8499)
2016-12-07Move JIT_EndCatch from asmhelpers.asm into jithelp.asm (#8492)Jonghyun Park2-28/+30
* Move JIT_EndCatch from asmhelpers.asm into jithelp.asm The name of JIT_EndCatch suggests that it is a JIT helper, but its implementation is inside asmhelpers.asm (not in jithelp.asm). This commit moves its implementation into jithelp.asm. * Move COMPlusEndCatch declaration
2016-12-06[x86/Linux] Port StubLinkerCPU::EmitSetup (#8494)Jonghyun Park1-5/+4
This commit ports StubLinkerCPU::EmitSetup to x86/Linux.
2016-12-06Merge pull request #8470 from brianrob/fix_lttng_header_detectionBrian Robbins1-0/+8
Fix building against liblttng-ust-dev 2.8+
2016-12-06[x86/Linux] Port asmhelpers.asm (#8489)Jonghyun Park3-0/+1057
This commit ports asmhelpers.asm to x86/Linux. (CallRtlUnwind is currently marked as NYI)
2016-12-06[x86/Linux] Port PATCH_LABEL macro (#8483)Jonghyun Park1-0/+5
2016-12-06GcInfoEncoder: Initialize the BitArrays tracking liveness (#8485)Swaroop Sridhar1-1/+2
The non-X86 GcInfoEncoder library uses two bit-arrays to keep track of pointer-liveness. The BitArrays are allocated using the arena allocator which doesn't zero-initialize them. This was causing non-deterministic redundant allocation of unused slots. This change fixes the problem.
2016-12-06Merge pull request #8484 from pgavlin/VSO297113Pat Gavlin1-13/+36
Fix use edge iterator for DYN_BLK nodes.
2016-12-06Fix to issue 8356.sivarv1-7/+24
2016-12-06Fix building against liblttng-ust-dev 2.8+Brian Robbins1-0/+8
2016-12-06Fix use edge iterator for DYN_BLK nodes.Pat Gavlin1-13/+36
Dynamic block nodes (i.e. DYN_BLK and STORE_DYN_BLK) are not standard nodes. As such, the use order of their operands may be reordered in ways that are not visible via the usual mechanisms. The use edge iterator was not taking these mechanisms into account, which caused mismatches between the use order observed by LSRA and the order observed by code generation. This in turn caused SBCG under circumstances in which one operand needed to be copied from e.g. esi to edi before another operand was unspilled into esi. Fixes VSO 297113.
2016-12-06Merge pull request #8466 from CarolEidt/Fix297074Carol Eidt1-3/+23
Create Blk node for struct vararg
2016-12-06Merge pull request #8467 from briansull/vso-287663Brian Sullivan3-4/+23
Don't change a GT_DYN_BLK into a GT_BLK when the size is zero
2016-12-06Merge pull request #8263 from AndyAyersMS/InlineInlinePinvokeAndy Ayers11-95/+525
JIT: enable inline pinvoke in more cases
2016-12-06Fixed typoahsonkhan1-1/+1
2016-12-06We should not transform a GT_DYN_BLK with a constant zero size into a GT_BLK ↵Brian Sullivan3-4/+23
as we do not support a GT_BLK of size zero. Fixes VSO 287663
2016-12-06Merge pull request #8464 from pgavlin/VSO297109Pat Gavlin1-1/+16
x86: Deactivate P/Invoke frames after a native call.
2016-12-06Address PR feedback.Pat Gavlin1-0/+3
2016-12-06[x86/Linux][SOS] Fix DataTarget::GetPointerSize for x86 (#8473)Evgeny Pavlov1-1/+1
2016-12-06[x86/Linux][SOS] Disable ARM target support for xplat (#8471)Evgeny Pavlov1-2/+9
2016-12-06[x86/Linux] Fix Dacp structure size mismatch (#8377)SaeHie Park2-68/+69
Fix compile error for x86/Linux - add __attribute__((__ms_struct__)) as "MSLAYOUT" for those structures - Fix "Dacp structs cannot be modified due to backwards compatibility" error
2016-12-06Extract ARRAYSTUBS_AS_IL code from STUBS_AS_IL region (#8443)Jonghyun Park2-4/+8
FEATURE_ARRAYSTUBS_AS_IL code seems to be independent from FEATURE_STUBS_AS_IL, but the related code is enclosed with FEATURE_STUBS_AS_IL. This commit extracts the related code from STUBS_AS_IL region.
2016-12-05Merge pull request #8463 from CarolEidt/Fix288220Carol Eidt1-1/+1
Allow remorph of SIMD assignment
2016-12-05[x86/Linux] Fix exception handling routine (#8433)Jonghyun Park1-3/+3
* [x86/Linux] Fix exception handling routine DispatchManagedException requires WIN64EXCEPTIONS to be defined, but it is not defined for x86/Linux.
2016-12-05[x86/Linux] Revise COMPlusThrowCallback (#8430)Jonghyun Park3-0/+8
GetCallerToken and GetImpersonationToken methods in FrameSecurityDescriptorBaseObject are implemented only for Windows-platform.
2016-12-05[x86/Linux] Fix unknown pragma build error (#8427)Jonghyun Park2-0/+6
2016-12-05Create Blk node for struct varargCarol Eidt1-3/+23
When morphing a reference to a struct parameter in a varargs method, it must be a blk node if it is the destination of an assignment.
2016-12-05Merge pull request #8468 from DrewScoggins/LinuxPerfFixupDrew Scoggins1-2/+2
Fix calls to curl in prep script