platform/upstream/coreclr.git
8 years agoMerge pull request #7468 from CarolEidt/Fix7460
Carol Eidt [Tue, 4 Oct 2016 05:22:33 +0000 (22:22 -0700)]
Merge pull request #7468 from CarolEidt/Fix7460

Allow GT_FIELD_LIST as legal arg for RyuJIT/x86

8 years agoMerge pull request #7467 from dotnet-bot/from-tfs
Bruce Forstall [Tue, 4 Oct 2016 01:00:28 +0000 (18:00 -0700)]
Merge pull request #7467 from dotnet-bot/from-tfs

Merge changes from TFS

8 years agoAdd support for Alpine Linux (#7440)
Jan Vorlicek [Tue, 4 Oct 2016 00:56:42 +0000 (02:56 +0200)]
Add support for Alpine Linux (#7440)

This change enables build of CoreCLR on Alpine Linux. Here is the list
of changes:
- Disable asserts checking RSP in arbitrary threads against cached stack limit
  for the respective thread. The stack on Alpine obviously grows over the limit
  reported by the pthread functions.
- Disable using XSTATE. This should be re-enabled after MUSL gets the _xstate,
  _fpx_sw_bytes and related data structures added to the signal.h header.
- Disable setting rlimit of RLIMIT_NOFILE to the max value, since it breaks
  debugging for some reason.
- Add skipping over the hardware signal trampoline in the PAL_VirtualUnwind.
  While we were not trying to walk over it in a simple case, in a case where
  an exception was thrown from a catch handler of a hardware exception, we
  still attempted to walk over it and it fails on Alpine.
- Fix detection of Alpine Linux in the PAL's CMakeLists.txt so that it works
  in Docker containers too.
- Modified PAL_VirtualUnwind to make the check for unwinding past the bottom
  of the stack unconditional. We had a long list of platforms where we were
  doing this check and it doesn't hurt to do it on platforms where it is not
  needed. I have done that rather than adding a check for Alpine Linux as
  another platform that needs it.

8 years agoAllow GT_FIELD_LIST as legal arg for RyuJIT/x86
Carol Eidt [Mon, 3 Oct 2016 23:12:46 +0000 (16:12 -0700)]
Allow GT_FIELD_LIST as legal arg for RyuJIT/x86

The condition in GenTree::IsValidCallArgument() was not correct for
GT_FIELD_LIST, which is used for passing a struct on the stack in
RyuJIT/x86.

Fix #7460

8 years agoMerge pull request #7464 from pgavlin/RyuJITPInvokeFrame
Pat Gavlin [Mon, 3 Oct 2016 22:58:06 +0000 (15:58 -0700)]
Merge pull request #7464 from pgavlin/RyuJITPInvokeFrame

Fix P/Invoke call and method {pro,epi}logs in RyuJIT/x86.

8 years agoRemove FirstChanceExceptionEventArgs from BCL folder. The file has been moved into...
Rahul Kumar [Mon, 3 Oct 2016 21:45:29 +0000 (14:45 -0700)]
Remove FirstChanceExceptionEventArgs from BCL folder. The file has been moved into mscorlib folder

[tfs-changeset: 1630635]

8 years agoAdd comment anchors.
Pat Gavlin [Mon, 3 Oct 2016 21:38:22 +0000 (14:38 -0700)]
Add comment anchors.

8 years agoFix P/Invoke call and method {pro,epi}logs in RyuJIT/x86.
Pat Gavlin [Mon, 3 Oct 2016 20:27:06 +0000 (13:27 -0700)]
Fix P/Invoke call and method {pro,epi}logs in RyuJIT/x86.

The contract for methods that contain P/Invokes differs between 64- and
32-bit targets.

In the former case, the JIT must:
- In the method prolog, initialize the P/Invoke frame with a call to
  CORINFO_HELP_INIT_PINVOKE_FRAME and push the frame on to the current
  thread's frame list if the method is an IL stub.
- Before/after each call, if the method is *not* an IL stub, push/pop
  the frame (respectively).
- In the method epilog, if the method is an IL stub, pop the P/Invoke
  frame.

In the latter case, CORINFO_HELP_INIT_PINVOKE_FRAME pushes the P/Invoke
frame on to the current thread's frame list, and the frame need only
be popped in the method epilog.

This change adjusts P/Invoke lowering s.t. the 64-bit discipline is
only followed for 64-bit targets.

8 years agoAdd Math.Clamp overloads to mscorlib.cs (#7462)
Hugh Bellamy [Mon, 3 Oct 2016 19:49:59 +0000 (20:49 +0100)]
Add Math.Clamp overloads to mscorlib.cs (#7462)

8 years agoMerge pull request #7445 from dotnet-bot/master-UpdateDependencies
Gaurav Khanna [Mon, 3 Oct 2016 18:39:19 +0000 (11:39 -0700)]
Merge pull request #7445 from dotnet-bot/master-UpdateDependencies

Update CoreClr to beta-24603-03 (master)

8 years ago[Linux] [SOS.NETCore] Quick fix for Path.GetFileName (#7441)
Dmitri-Botcharnikov [Mon, 3 Oct 2016 18:05:00 +0000 (22:05 +0400)]
[Linux] [SOS.NETCore] Quick fix for Path.GetFileName (#7441)

* Quick fix for Path.GetFileName

* Updated after review

8 years agoFix DWARF linetable info provided by GDBJIT (#7444)
Igor Kulaychuk [Mon, 3 Oct 2016 18:04:05 +0000 (21:04 +0300)]
Fix DWARF linetable info provided by GDBJIT (#7444)

Extend PC to the end of function in DWARF linetable commands.
This allows the debugger to show source lines for all addresses
inside a function.

8 years agoUpdate CoreClr to beta-24603-03
dotnet-bot [Mon, 3 Oct 2016 16:24:37 +0000 (16:24 +0000)]
Update CoreClr to beta-24603-03

8 years agoFix a bug where the DAC read four more bytes than necessary (#7430)
Sean Gillespie [Sun, 2 Oct 2016 18:26:23 +0000 (11:26 -0700)]
Fix a bug where the DAC read four more bytes than necessary (#7430)

to retrieve gcHeapType, which failed on crash dumps.

8 years agoRemove WaitHandleExtensions, as it is implemented in CoreFX (#7431)
Koundinya Veluri [Sun, 2 Oct 2016 01:35:28 +0000 (18:35 -0700)]
Remove WaitHandleExtensions, as it is implemented in CoreFX (#7431)

8 years agoMerge pull request #7361 from vancem/MessageInLttng.9-26-16
Vance Morrison [Sun, 2 Oct 2016 01:05:25 +0000 (18:05 -0700)]
Merge pull request #7361 from vancem/MessageInLttng.9-26-16

Add the serialization of the Message field when writting LTTng events on Linux

8 years agoMerge pull request #7359 from vancem/EventSOurceNullRefInLevelProperty.9-26-16
Vance Morrison [Sun, 2 Oct 2016 01:02:39 +0000 (18:02 -0700)]
Merge pull request #7359 from vancem/EventSOurceNullRefInLevelProperty.9-26-16

Fix Null Reference in accessing Level property in EventSource failure msgs

8 years agoInitial support of local variables and method arguments in GDB JIT interface (#7400)
Evgeny Pavlov [Sat, 1 Oct 2016 17:33:25 +0000 (20:33 +0300)]
Initial support of local variables and method arguments in GDB JIT interface (#7400)

8 years agoMerge pull request #7437 from dotnet-bot/master-UpdateDependencies
Gaurav Khanna [Sat, 1 Oct 2016 16:00:49 +0000 (09:00 -0700)]
Merge pull request #7437 from dotnet-bot/master-UpdateDependencies

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

8 years agoUpdate CoreClr, CoreFx to beta-24601-02, beta-24601-02, respectively
dotnet-bot [Sat, 1 Oct 2016 08:12:29 +0000 (08:12 +0000)]
Update CoreClr, CoreFx to beta-24601-02, beta-24601-02, respectively

8 years agoMerge pull request #7433 from dotnet-bot/from-tfs
Jan Kotas [Sat, 1 Oct 2016 04:26:31 +0000 (21:26 -0700)]
Merge pull request #7433 from dotnet-bot/from-tfs

Merge changes from TFS

8 years agoMerge pull request #7438 from pgavlin/gh7090
Pat Gavlin [Sat, 1 Oct 2016 04:09:29 +0000 (21:09 -0700)]
Merge pull request #7438 from pgavlin/gh7090

Properly initialize lvaTrackedVarSet.

8 years agoMerge pull request #7432 from pgavlin/gh6920
Pat Gavlin [Sat, 1 Oct 2016 04:09:03 +0000 (21:09 -0700)]
Merge pull request #7432 from pgavlin/gh6920

Call `gtEffectiveVal` in `gtWalkOp`.

8 years agoMerge pull request #7388 from rahku/_appdomain
Rahul Kumar [Sat, 1 Oct 2016 00:41:44 +0000 (17:41 -0700)]
Merge pull request #7388 from rahku/_appdomain

Expose AppDomain apis

8 years agoProperly initialize lvaTrackedVarSet.
Pat Gavlin [Fri, 30 Sep 2016 23:27:30 +0000 (16:27 -0700)]
Properly initialize lvaTrackedVarSet.

The lack of initialization when `lvaCount == 0` was causing failures
under JITStressRegs=0x80. When this initialization is not performed,
it is initialized s.t. every bit is set, including bits that represent
non-existent lclVars. This caused LSRA to AV when attempting to access
the lclVar table using a lclNum derived from an iteration over
`lvaTrackedVarSet`.

Fixes #7090.

8 years agoPort changes to UnmanagedMemoryStream from corefx (#7418)
Alex Perovich [Fri, 30 Sep 2016 22:54:59 +0000 (15:54 -0700)]
Port changes to UnmanagedMemoryStream from corefx (#7418)

* Port changes to UnmanagedMemoryStream from corefx

dotnet/corefx#12170

* Add PrepareConstrainedRegions

* Add Back Read<T> and Write<T> methods

* Replace MemoryCopy with Memcpy

8 years agoExpose AppDomain apis
Rahul Kumar [Wed, 28 Sep 2016 00:55:09 +0000 (17:55 -0700)]
Expose AppDomain apis

8 years agoCall `gtEffectiveVal` in `gtWalkOp`.
Pat Gavlin [Fri, 30 Sep 2016 20:01:37 +0000 (13:01 -0700)]
Call `gtEffectiveVal` in `gtWalkOp`.

This function was using an ad-hoc, open-coded version of
`gtEffectiveVal` that was missing the effective value of `GT_NOP` nodes.
This change replaces these implementations with calls to
`gtEffectiveVal` and makes `gtEffectiveVal` non-recursive.

Fixes #6920.

8 years agoMerge pull request #7428 from adiaaida/audit_flags
Michelle McDaniel [Fri, 30 Sep 2016 19:46:51 +0000 (12:46 -0700)]
Merge pull request #7428 from adiaaida/audit_flags

Copy GTF_ALL_EFFECTS to hiResult in decomp

8 years agoMerge pull request #7427 from CarolEidt/Fix7197
Carol Eidt [Fri, 30 Sep 2016 18:59:23 +0000 (11:59 -0700)]
Merge pull request #7427 from CarolEidt/Fix7197

Arm64 StoreBlk Lowering Fix

8 years agoMerge pull request #7365 from dotnet-bot/master-UpdateDependencies
Koundinya Veluri [Fri, 30 Sep 2016 18:46:58 +0000 (11:46 -0700)]
Merge pull request #7365 from dotnet-bot/master-UpdateDependencies

Update CoreClr, CoreFx, External to beta-24529-03, beta-24530-02, beta-24523-00, respectively (master)

8 years agoMerge pull request #7429 from jashook/jit32_oss_devdiv255294
Jarret Shook [Fri, 30 Sep 2016 17:20:16 +0000 (10:20 -0700)]
Merge pull request #7429 from jashook/jit32_oss_devdiv255294

Exclude DevDiv_255294.cmd for jit32 due to timeout

8 years agoCopy GTF_ALL_EFFECTS to hiResult in decomp
Michelle McDaniel [Thu, 29 Sep 2016 17:02:31 +0000 (10:02 -0700)]
Copy GTF_ALL_EFFECTS to hiResult in decomp

We need to make sure that the hiResult in decompose gets the same effect
flags as the original tree. This change updates decompose methods to pass
those flags from the tree to the hiResult in the cases that they weren't
being passed before.

8 years agoExclude DevDiv_255294.cmd for jit32 due to timeout
jashook [Fri, 30 Sep 2016 16:35:40 +0000 (09:35 -0700)]
Exclude DevDiv_255294.cmd for jit32 due to timeout

8 years agoUpdate CoreClr, CoreFx, External to beta-24529-03, beta-24530-02, beta-24523-00,...
dotnet-bot [Fri, 30 Sep 2016 14:50:36 +0000 (14:50 +0000)]
Update CoreClr, CoreFx, External to beta-24529-03, beta-24530-02, beta-24523-00, respectively

8 years agoExplicitly specify feature test macro for glibc earlier than 2.19 (#7397)
RimashMohomed [Fri, 30 Sep 2016 13:21:36 +0000 (18:51 +0530)]
Explicitly specify feature test macro for glibc earlier than 2.19 (#7397)

8 years agoArm64 StoreBlk Lowering Fix
Carol Eidt [Fri, 30 Sep 2016 06:33:27 +0000 (23:33 -0700)]
Arm64 StoreBlk Lowering Fix

With the block assignment changes, the Arm64 version of
Lowering::TreeNodeInfoInitBlockStore was not using the correct node
for the source address.

Fix #7197

8 years agoFix change to GenericEqualityComparer.Equals from #5804 (#7419)
James Ko [Fri, 30 Sep 2016 04:47:41 +0000 (00:47 -0400)]
Fix change to GenericEqualityComparer.Equals from #5804 (#7419)

8 years agoMerge pull request #7420 from tarekgh/EnableCalendarsAPisOnLinux
Tarek Mahmoud Sayed [Fri, 30 Sep 2016 01:50:46 +0000 (18:50 -0700)]
Merge pull request #7420 from tarekgh/EnableCalendarsAPisOnLinux

Enable added Calendar APIS on Linux

8 years agoAdd missing System.IO APIs (#7385)
Ian Hays [Fri, 30 Sep 2016 01:22:23 +0000 (18:22 -0700)]
Add missing System.IO APIs (#7385)

This is the last chunk of APIs missing from System.IO that will be included in netstandard20 and that live in mscorlib.

8 years agoMerge pull request #7407 from sivarv/simdOpt
Sivarv [Fri, 30 Sep 2016 01:00:12 +0000 (18:00 -0700)]
Merge pull request #7407 from sivarv/simdOpt

Optimize codegen when SIMD (in)Equality that produces bool result is compared against true/false.

8 years agoEnable added Calendar APIS on Linux
Tarekm Mahmoud Sayed [Thu, 29 Sep 2016 23:48:47 +0000 (16:48 -0700)]
Enable added Calendar APIS on Linux

8 years agoMerge pull request #7399 from CarolEidt/LinearCodegenRefactor
Carol Eidt [Thu, 29 Sep 2016 23:36:57 +0000 (16:36 -0700)]
Merge pull request #7399 from CarolEidt/LinearCodegenRefactor

Refactor common codegen code

8 years agoOptimize codegen when SIMD (in)Equality that produces bool result is compared against...
sivarv [Wed, 28 Sep 2016 23:29:14 +0000 (16:29 -0700)]
Optimize codegen when SIMD (in)Equality that produces bool result is compared against true/false.

8 years agoCorrect preprocessor conditional termination in case BACKGROUND_GC is not defined...
Adam Tornhill [Thu, 29 Sep 2016 16:50:44 +0000 (18:50 +0200)]
Correct preprocessor conditional termination in case BACKGROUND_GC is not defined. (#7411)

This patch ensures that the code remains valid even when BACKGROUND_GC is not defined.
Before this patch, the endif that terminates the conditional compilation block
misses the terminating curly brace. That means there will be an extra, erroneous
closing brace the moment BACKGROUND_GC isn't defined.

8 years agoRemove some unreachable code that was causing the ProjectK build to fail.
Pat Gavlin [Thu, 29 Sep 2016 16:00:09 +0000 (09:00 -0700)]
Remove some unreachable code that was causing the ProjectK build to fail.

[tfs-changeset: 1630090]

8 years agoSet THUMB bit for RUNTIME_FIXUP_HELPER functions (#7373)
Jonghyun Park [Thu, 29 Sep 2016 07:53:15 +0000 (16:53 +0900)]
Set THUMB bit for RUNTIME_FIXUP_HELPER functions (#7373)

* Appends THUMB bit for RUNTIME_FIXUP_HELPER address
* Revise GetEEFuncEntryPoint (for ARM) and use it to set thumb bit
* Uses GetEEFuncEntryPoint instead of GFN_TADDR

8 years agoFix ifdefs used to select the symbol reader dll name (#7406)
Mike McLaughlin [Thu, 29 Sep 2016 06:50:20 +0000 (23:50 -0700)]
Fix ifdefs used to select the symbol reader dll name (#7406)

8 years agoRefactor common codegen code
Carol Eidt [Wed, 28 Sep 2016 13:51:27 +0000 (06:51 -0700)]
Refactor common codegen code

Extract the main code generator loop, the register management methods, and some debug info code.

8 years agoFix a typo in jit.settings.targets.
Pat Gavlin [Thu, 29 Sep 2016 05:00:09 +0000 (22:00 -0700)]
Fix a typo in jit.settings.targets.

[tfs-changeset: 1630047]

8 years agoMerge pull request #7404 from tarekgh/AddNormalizationToLinux
Rama krishnan Raghupathy [Thu, 29 Sep 2016 04:07:29 +0000 (21:07 -0700)]
Merge pull request #7404 from tarekgh/AddNormalizationToLinux

Add Normalization functionality to Linux

8 years agoAdd option to measure time spent inside calls to the CLR. (#7357)
Peter Kukol [Thu, 29 Sep 2016 01:29:33 +0000 (18:29 -0700)]
Add option to measure time spent inside calls to the CLR. (#7357)

* Add option to measure time spent inside calls to the CLR (off by default).

8 years ago[tfs-changeset: 1629999]
Mike McLaughlin [Thu, 29 Sep 2016 00:21:01 +0000 (17:21 -0700)]
[tfs-changeset: 1629999]

8 years agoAdd Normalization functionality to Linux
Tarekm Mahmoud Sayed [Wed, 28 Sep 2016 22:44:28 +0000 (15:44 -0700)]
Add Normalization functionality to Linux

This functionality will be used in different places (e.g. string class)

8 years agoExpose required S.Resources members on corelib (#7402)
Alex Perovich [Thu, 29 Sep 2016 00:04:55 +0000 (17:04 -0700)]
Expose required S.Resources members on corelib (#7402)

Fixes dotnet/corefx#12012

8 years agoMerge pull request #7368 from pgavlin/SideEffects
Pat Gavlin [Wed, 28 Sep 2016 23:58:03 +0000 (16:58 -0700)]
Merge pull request #7368 from pgavlin/SideEffects

Fix lowering's containment analysis.

8 years agoFix lowering's containment analysis.
Pat Gavlin [Fri, 23 Sep 2016 22:48:16 +0000 (15:48 -0700)]
Fix lowering's containment analysis.

This fixes a silent bad code generation issue that arose during internal
testing. The original repro is a test failure under COMPlus_JitStress=2.
Due to explicit null check insertion, we (eventually) end up with the
following LIR:

    t6096 =    lclVar    ref    V86 cse10         <l:$4ad, c:$1b5>

            /--*  t6096  ref
            *  st.lclVar ref    V41 tmp29        d:26

    t2733 =    lclVar    ref    V41 tmp29        u:26 <l:$4ad, c:$1b5>

            /--*  t2733  ref
            *  nullcheck byte   <l:$4b8, c:$58a>

    t2736 =    lclVar    ref    V41 tmp29        u:26 (last use) <l:$4ad, c:$1b5>

    t2737 =    const     long   20 field offset Fseq[y] $107

            /--*  t2736  ref
            +--*  t2737  long
    t2735 = *  +         byref  <l:$2ad, c:$2ac>

    t6081 =    lclVar    ref    V83 cse7          <l:$4bd, c:$1b7>

            /--*  t6081  ref
            *  st.lclVar ref    V41 tmp29        d:27

    t2762 =    lclVar    ref    V41 tmp29        u:27 <l:$4bd, c:$1b7>

            /--*  t2762  ref
            *  nullcheck byte   <l:$583, c:$58f>

    t2765 =    lclVar    ref    V41 tmp29        u:27 (last use) <l:$4bd, c:$1b7>

    t2766 =    const     long   20 field offset Fseq[y] $107

            /--*  t2765  ref
            +--*  t2766  long
    t2764 = *  +         byref  <l:$2af, c:$2ae>

            /--*  t2764  byref
    t2763 = *  indir     int    <l:$54e, c:$1ed>

    t2767 =    lclVar    int   (AX) V07 loc4          $1ee

            /--*  t2763  int
            +--*  t2767  int
    t2738 = *  +         int    <l:$554, c:$553>

            /--*  t2735  byref
            +--*  t2738  int
            *  storeIndir int

During lowering, we attempt to form an RMW add rooted at the final
storeIndir. The pattern matching that attempts to form RMW operations,
however, does not consider whether or not it is safe to perform the
code motion involved in making the destination and source addresses
for the operator contained. In this case, lowering moves the evaluation
of the address (i.e. the dataflow tree rooted at the add that produces
t2735) into the storeIndir. This moves a use of tmp29 across a def of
the same and causes the program to store a value to an incorrect
address.

There are many variations on this pattern. For example, given the
following C#:

static int T(C[] a, C c)
{
    return a.Length != c.M() ? 100 : 0;
}

The evaluation of a.Length (including the necessary null check) should
occur before the call to c.M(). The lack of correct checks for safe
code motion that caused the original repro, however, cause the JIT to
generate bad code in this case as well: the null check for a is folded
into the load of a.Length, which is then made contained by the compare.
This results in the call to c.M() executing before the null check, which
causes the program to behave incorrectly in the case that a is null.

In order to fix the code motion analysis, this change introduces a new
type, `SideEffectSet`, that can be used to summarize the side effects
of a set of nodes and check whether or not they interfere with another
set of side effects. This change then uses the new type to ensure that
it is safe to perform the code motion necessary to make an operand
contained before doing so.

8 years agoMerge pull request #7403 from ramarag/addisvolatile
Rama krishnan Raghupathy [Wed, 28 Sep 2016 22:56:39 +0000 (15:56 -0700)]
Merge pull request #7403 from ramarag/addisvolatile

Adding back isVolatile to mscorlib facade as C# compiler uses it

8 years agoAdding back isVolatile to mscorlib facade as C# compiler uses it
Rama Krishnan Raghupathy [Wed, 28 Sep 2016 22:06:03 +0000 (15:06 -0700)]
Adding back isVolatile to mscorlib facade as C# compiler uses it

8 years agoMerge pull request #7356 from bartonjs/new_macos_gettingstarted
Jeremy Barton [Wed, 28 Sep 2016 20:55:51 +0000 (13:55 -0700)]
Merge pull request #7356 from bartonjs/new_macos_gettingstarted

Fix stale OSX getting started to stop using `brew link`

8 years agoMerge pull request #7392 from kouvel/TestFix
Koundinya Veluri [Wed, 28 Sep 2016 19:19:08 +0000 (12:19 -0700)]
Merge pull request #7392 from kouvel/TestFix

Work around issue in #7365 by referencing System.Reflection.Extension…

8 years agoFix System.Diagnostics.StackTrace version in stack trace helper code (#7395)
Mike McLaughlin [Wed, 28 Sep 2016 18:35:28 +0000 (11:35 -0700)]
Fix System.Diagnostics.StackTrace version in stack trace helper code (#7395)

Issue #7381

8 years agoMerge pull request #7306 from hseok-oh/fix_6667_2
Russ Keldorph [Wed, 28 Sep 2016 18:03:37 +0000 (11:03 -0700)]
Merge pull request #7306 from hseok-oh/fix_6667_2

Fix 6667: Constant folding for unsigned long divide operation

8 years agoWork around issue in #7365 by referencing System.Reflection.Extensions directly in...
Koundinya Veluri [Wed, 28 Sep 2016 05:52:01 +0000 (22:52 -0700)]
Work around issue in #7365 by referencing System.Reflection.Extensions directly in some test projects

8 years agoMerge pull request #7379 from gkhanna79/SimplePkgVer
Gaurav Khanna [Wed, 28 Sep 2016 04:29:34 +0000 (21:29 -0700)]
Merge pull request #7379 from gkhanna79/SimplePkgVer

Centralize versioning and stabilization of nuget packages.

8 years agoInvoke 'copy_test_native_bin_to_test_root' inside 'create_core_overlay' (#5676)
Jonghyun Park [Wed, 28 Sep 2016 03:46:16 +0000 (12:46 +0900)]
Invoke 'copy_test_native_bin_to_test_root' inside 'create_core_overlay' (#5676)

This commit tries to fix #5675.

8 years agoSpecialize IndexOf, LastIndexOf for the enum equality comparers (#5804)
James Ko [Wed, 28 Sep 2016 03:45:33 +0000 (23:45 -0400)]
Specialize IndexOf, LastIndexOf for the enum equality comparers (#5804)

8 years agoMerge pull request #7367 from sivarv/simdeq
Sivarv [Tue, 27 Sep 2016 21:05:33 +0000 (14:05 -0700)]
Merge pull request #7367 from sivarv/simdeq

Optimize SIMD codegen for (in)equality check against zero that produces bool result.

8 years agoCentralize APISet and WinArm32 package versions as well.
Gaurav Khanna [Tue, 27 Sep 2016 20:29:35 +0000 (13:29 -0700)]
Centralize APISet and WinArm32 package versions as well.

8 years agoCentralize versioning and stabilization of nuget packages.
Gaurav Khanna [Tue, 27 Sep 2016 18:32:36 +0000 (11:32 -0700)]
Centralize versioning and stabilization of nuget packages.

8 years agoMove dlstack test exclusion to all configurations instead of (#7364)
Sean Gillespie [Tue, 27 Sep 2016 18:07:13 +0000 (11:07 -0700)]
Move dlstack test exclusion to all configurations instead of (#7364)

just ryujit/x86, since it fails in other configurations as well.

8 years agoOptimize SIMD codegen for (in)equality check against zero that produces bool result.
sivarv [Tue, 27 Sep 2016 00:38:12 +0000 (17:38 -0700)]
Optimize SIMD codegen for (in)equality check against zero that produces bool result.

8 years agoremove comments
Hyeongseok Oh [Tue, 27 Sep 2016 00:48:48 +0000 (09:48 +0900)]
remove comments

8 years agoFix arm64 build issue #7355. (#7362)
Mike McLaughlin [Mon, 26 Sep 2016 22:58:32 +0000 (15:58 -0700)]
Fix arm64 build issue #7355. (#7362)

8 years agoFix build break.
Vance Morrison [Mon, 26 Sep 2016 21:40:59 +0000 (14:40 -0700)]
Fix build break.

8 years agoIntroduce "IGCToCLR" and use it within the GC to interface with the EE (#7295)
Sean Gillespie [Mon, 26 Sep 2016 21:23:52 +0000 (14:23 -0700)]
Introduce "IGCToCLR" and use it within the GC to interface with the EE (#7295)

* Introduce a feature define FEATURE_STANDALONE_GC that allows
the GC to communicate with the EE through a virtual interface.

* Split GCToEEInterface definition out of gc.h into its own header

* Address code review feedback

* Address code review feedback

8 years agoFix one more place where Writing EventSource messages did not initialize all meta...
Vance Morrison [Thu, 15 Sep 2016 16:30:24 +0000 (09:30 -0700)]
Fix one more place where Writing EventSource messages did not initialize all meta-data properly

8 years agoFix for issue 6768 NullRef when access Level when there are EventSource messages.
Vance Morrison [Thu, 15 Sep 2016 15:37:03 +0000 (08:37 -0700)]
Fix for issue 6768 NullRef when access Level when there are EventSource messages.

See https://github.com/dotnet/coreclr/issues/6768 for mor details on the bug.

The issue is that EventSource is firing events (to report errors) before the EventSource
is completely initialized.   We dealt with many of the issues associated with this but
not all of them.   This change makes these special eventSource events (with ID of 0
 take the same codepath as for TraceLogging events (with negative IDs) when the
EventWrittenArgs properies are accessed.

8 years agoAdd the serialization of the Message field when writting LTTng events on Linux.
Vance Morrison [Mon, 26 Sep 2016 18:49:28 +0000 (11:49 -0700)]
Add the serialization of the Message field when writting LTTng events on Linux.

8 years agoFix stale OSX getting started to stop using `brew link`
bartonjs [Mon, 26 Sep 2016 16:39:58 +0000 (09:39 -0700)]
Fix stale OSX getting started to stop using `brew link`

Even with --force the `brew link` command will not link openssl any longer.
This updates the instructions to provide a less invasive version of what we
needed `brew link` to do: make the runtime versioned ABI resolvable, and make
the header files discoverable (via pkg-config).

8 years agoCheck PAL first, and then Windows Phone (#7354)
Jonghyun Park [Mon, 26 Sep 2016 10:58:35 +0000 (19:58 +0900)]
Check PAL first, and then Windows Phone (#7354)

8 years agoAdd missing System.Security ns types. (#7352)
Dan Moseley [Mon, 26 Sep 2016 03:32:11 +0000 (20:32 -0700)]
Add missing System.Security ns types. (#7352)

8 years agoAdd the IsSecurityXX properties omitted from Type base class (#7349)
Dan Moseley [Sun, 25 Sep 2016 14:04:40 +0000 (07:04 -0700)]
Add the IsSecurityXX properties omitted from Type base class (#7349)

8 years agoAdd Math.Clamp methods (#7242)
Hugh Bellamy [Sun, 25 Sep 2016 14:03:40 +0000 (15:03 +0100)]
Add Math.Clamp methods (#7242)

8 years agoMicro-optimization for IList.Contains array implementation (#7347)
James Ko [Sun, 25 Sep 2016 03:11:10 +0000 (23:11 -0400)]
Micro-optimization for IList.Contains array implementation (#7347)

8 years agoMerge pull request #7328 from ramarag/removemarkers
Rama krishnan Raghupathy [Sat, 24 Sep 2016 00:51:45 +0000 (17:51 -0700)]
Merge pull request #7328 from ramarag/removemarkers

Adding MemoryFailPoint and  Removing some markers

8 years agoMerge pull request #7337 from tarekgh/FixCollationNames
Tarek Mahmoud Sayed [Sat, 24 Sep 2016 00:48:50 +0000 (17:48 -0700)]
Merge pull request #7337 from tarekgh/FixCollationNames

Fix the Collation name returned from CompareInfo.Name and TextInfo.Name

8 years agoRemove CoreCLR's dependency on the diasymreader.dll installed as part of the full...
Mike McLaughlin [Sat, 24 Sep 2016 00:39:43 +0000 (17:39 -0700)]
Remove CoreCLR's dependency on the diasymreader.dll installed as part of the full .NET Framework on Desktop (#7336)

* Remove CoreCLR's dependency on the diasymreader.dll installed as part of the full .NET Framework on Desktop

Issue #5922

* Code review feedback.

8 years agoMerge pull request #7332 from JosephTremoulet/InlineVolatile
Joseph Tremoulet [Fri, 23 Sep 2016 23:55:48 +0000 (19:55 -0400)]
Merge pull request #7332 from JosephTremoulet/InlineVolatile

Allow inlining with volatile actual argument exprs

8 years agoFix the Collation name returned from CompareInfo.Name and TextInfo.Name
Tarekm Mahmoud Sayed [Fri, 23 Sep 2016 22:05:27 +0000 (15:05 -0700)]
Fix the Collation name returned from CompareInfo.Name and TextInfo.Name

this was a regression #7004 and caused the issue #1139

8 years agoAdding MemoryFailPoint Removing some markers
Rama Krishnan Raghupathy [Thu, 22 Sep 2016 21:50:03 +0000 (14:50 -0700)]
Adding MemoryFailPoint Removing some markers

8 years agoupdate JIT_MemSet/MemCpy, Buffer::BlockCopy and Buffer::InternalBlock… (#7198)
Xiangyang (Mark) Guo [Fri, 23 Sep 2016 19:33:36 +0000 (12:33 -0700)]
update JIT_MemSet/MemCpy, Buffer::BlockCopy and Buffer::InternalBlock… (#7198)

* update JIT_MemSet/MemCpy, Buffer::BlockCopy and Buffer::InternalBlockCopy

* add header comments

8 years agoMerge pull request #7327 from JeremyKuhne/fixshortpath
Jeremy Kuhne [Fri, 23 Sep 2016 19:10:57 +0000 (12:10 -0700)]
Merge pull request #7327 from JeremyKuhne/fixshortpath

Fix 8.3 UNC expansion

8 years agoMerge pull request #7329 from sivarv/SimdGetItemFix
Sivarv [Fri, 23 Sep 2016 19:07:48 +0000 (12:07 -0700)]
Merge pull request #7329 from sivarv/SimdGetItemFix

Optimize codegen for SIMDIntrinsicGetItem when SIMD vector is a memory-op.

8 years agoOptimize codegen for SIMDIntrinsicGetItem when SIMD vector is a memory-op.
sivarv [Thu, 22 Sep 2016 23:19:08 +0000 (16:19 -0700)]
Optimize codegen for SIMDIntrinsicGetItem when SIMD vector is a memory-op.

8 years agoRemove vestigial assertions
Joseph Tremoulet [Thu, 15 Sep 2016 17:59:09 +0000 (13:59 -0400)]
Remove vestigial assertions

The inliner used to have its own import path, which required calling
special inline versions of the spill helpers; these asserts were intended
to ensure that these regular spill helpers are not invoked during inlining,
which they do by asserting against `fgGlobalMorph`, since that flag was set
during inlining in the old code.  The inliner has since been updated to
re-use the main import code, and also to run when `fgGlobalMorph` is not
set anyway.  So these helpers currently run successfully during inlining,
despite the stale comment; remove the bogus assertions.

8 years agoAllow inlining with volatile actual argument exprs
Joseph Tremoulet [Thu, 15 Sep 2016 17:55:29 +0000 (13:55 -0400)]
Allow inlining with volatile actual argument exprs

When presented with an argument marked `GFT_ORDER_SIDEEFF`, mark the
argument `argHasSideEff` and allow inlining.  Remove the vestigial code to
disallow inlining in these cases; it corresponded to a prior inliner
implementation with a different import path that has since been removed;
the inliner now re-uses the main import path, which can handle the
necessary stack spilling in the presence of `GTF_ORDER_SIDEEFF`.

Fixes #7054.

8 years agoRemove the dependency of using config.json in cwd (#7330)
Jarret Shook [Fri, 23 Sep 2016 14:16:09 +0000 (07:16 -0700)]
Remove the dependency of using config.json in cwd (#7330)

Currently the config.json file is looked for in the current working
directory. This change forces run.exe to use the relative path of
the file relative to the build script.

8 years agoExpose some types/members (#7320)
Koundinya Veluri [Fri, 23 Sep 2016 02:10:23 +0000 (19:10 -0700)]
Expose some types/members (#7320)

* Expose some types/members

Expose some types/members needed for dotnet/corefx#11631, dotnet/corefx#11729, and dotnet/corefx#11231

8 years agoSplit MORPH into multiple phases. (#7314)
Peter Kukol [Fri, 23 Sep 2016 00:26:08 +0000 (17:26 -0700)]
Split MORPH into multiple phases. (#7314)

* Split MORPH into multiple phases.