platform/upstream/coreclr.git
8 years agoMerge pull request #3812 from janvorli/fix-stub
Jan Vorlicek [Fri, 18 Mar 2016 22:37:56 +0000 (23:37 +0100)]
Merge pull request #3812 from janvorli/fix-stub

Fix instantiating stub for methods of value types

8 years agoMerge pull request #3809 from wtgodbe/utf8
Jan Vorlicek [Fri, 18 Mar 2016 21:31:30 +0000 (22:31 +0100)]
Merge pull request #3809 from wtgodbe/utf8

Ported managed Utf8/Unicode encoder/decoder to C++ for usage in PAL

8 years agoFix instantiating stub for methods of value types
Jan Vorlicek [Fri, 18 Mar 2016 14:46:20 +0000 (15:46 +0100)]
Fix instantiating stub for methods of value types

This change fixes a problem with instantiating stubs for methods of value types.
The problem was that the CreateInstantiatingILStub didn't take into account the
fact that methods of value types need to have "this" passed "byref".
The issue manifested itself as a rare corruption of references in array of structs
that were thin wrappers for string reference during GC stack scan. GC thought that
the reference to an array entry is an object reference that starts with method table.
GC marks method table pointers by setting their bit zero to 1. But in this case,
it has accidentally modified an object reference instead and a test was crashing
with wrong object address.

The root cause of the problem is that the instantiating stubs were placed on a global
singleton reference class no matter whether the target method was on a reference class
or a value type.

I have fixed it by putting the stubs on the instantiated target generic type instead.

8 years agoPorted managed Utf8/Unicode encoder/decoder to C++ for usage in PAL
William Godbe [Thu, 21 Jan 2016 23:14:48 +0000 (15:14 -0800)]
Ported managed Utf8/Unicode encoder/decoder to C++ for usage in PAL

8 years agoMerge pull request #3808 from mmitche/arm64-cross-label
Matt Mitchell [Fri, 18 Mar 2016 17:32:26 +0000 (10:32 -0700)]
Merge pull request #3808 from mmitche/arm64-cross-label

Update label for arm and arm64 cross builds on Ubuntu

8 years agoUpdate label for arm and arm64 cross builds on Ubuntu
Matt Mitchell [Fri, 18 Mar 2016 17:23:13 +0000 (10:23 -0700)]
Update label for arm and arm64 cross builds on Ubuntu

Update the label to the newer image which contains the required rootfs.

8 years agoMerge pull request #3757 from leemgs/upstream-crossgen-skip-for-arm
Jan Kotas [Fri, 18 Mar 2016 16:22:23 +0000 (09:22 -0700)]
Merge pull request #3757 from leemgs/upstream-crossgen-skip-for-arm

The architecture of host pc must be same architecture with target.

8 years agoMerge pull request #3799 from AndyAyersMS/AdjustInlineObservations
Andy Ayers [Fri, 18 Mar 2016 14:55:10 +0000 (07:55 -0700)]
Merge pull request #3799 from AndyAyersMS/AdjustInlineObservations

Inliner: make more observations unconditional

8 years agoArchitecture of host must be compitable architecture with target.
Geunsik Lim [Wed, 16 Mar 2016 13:42:14 +0000 (22:42 +0900)]
Architecture of host must be compitable architecture with target.

Let's make exception handling for different architecture between
host pc and target board during build-time.

V3:
- Simplify the existing 'if' statement

V2:
- Added $HostArch variable to handle the required architectures.

V1:
- Handle "time ./build.sh arm debug clean verbose" command
in case that generate only mscorlib.dll for Linux/ARM as well as the
existing case of if [ $__CrossBuild != 1 ]

In this case, we need to add additional if statements because the
architecture of host pc must be same architecture with target.

Signed-off-by: Geunsik Lim geunsik.lim@samsung.com
Signed-off-by: Prajwal A N an.prajwal@samsung.com
Signed-off-by: MyungJoo Ham myungjoo.ham@samsung.com
8 years agoMerge pull request #3801 from dotnet-bot/from-tfs
Jan Kotas [Fri, 18 Mar 2016 12:44:46 +0000 (05:44 -0700)]
Merge pull request #3801 from dotnet-bot/from-tfs

Merge changes from TFS

8 years agoMerge pull request #3796 from kyulee1/fixalignchk
Kyungwoo Lee [Fri, 18 Mar 2016 11:12:20 +0000 (04:12 -0700)]
Merge pull request #3796 from kyulee1/fixalignchk

Fix Stack Alignment Check

8 years agoMerge pull request #3783 from mikem8361/fixsosbp
Mike McLaughlin [Fri, 18 Mar 2016 04:37:09 +0000 (21:37 -0700)]
Merge pull request #3783 from mikem8361/fixsosbp

Fixed problem with bpmd not working sometimes.

8 years agoMerge pull request #3745 from manu-silicon/docs
Jan Kotas [Fri, 18 Mar 2016 03:24:10 +0000 (20:24 -0700)]
Merge pull request #3745 from manu-silicon/docs

Ensure proper spelling of COMPlus_xxx environment variables

8 years agoMerge pull request #3797 from svick/patch-2
Jan Kotas [Fri, 18 Mar 2016 03:17:27 +0000 (20:17 -0700)]
Merge pull request #3797 from svick/patch-2

Update out of date comment in List<T>

8 years agoAdd back some APIs needed by legacy test runner, for now
Jan Kotas [Fri, 18 Mar 2016 00:32:11 +0000 (17:32 -0700)]
Add back some APIs needed by legacy test runner, for now

[tfs-changeset: 1586974]

8 years agoFix Stack Alignment Check
Kyungwoo Lee [Thu, 17 Mar 2016 14:33:10 +0000 (07:33 -0700)]
Fix Stack Alignment Check

This fixes https://github.com/dotnet/coreclr/issues/3747.
If JIT saves the first single store (not pair store) with stack adjustment
required (```spDelta != 0```), we expect the offset to be 8 to account for alignment.
This API ```genPrologSaveReg``` is invoked twice from INT and FP saving respectively
while JIT stores/allocates stacks once for these saving registers back to back.
So, the assertion is not quite right. For instance when we have 1 INT and
1 FP registers to be saved, JIT failed to assert the offset to be 8 in the
first invocation for INT. In fact, for this case, the offset should be 0
(no alignment is required) since we store 2 registers which are already
aligned on 16 byte.

We should consider whether or not the total number of saved registers is odd.
Not only that, even for the pair store, we should assert the offset either
0 or 8 depending on the total number of saved registers. For instance, 2
INT and 3 FP, we want the offset to be 8 when we store the first pair with
stack adjustment required (```spDelta != 0```).
I refactored the code to reflect this issue in ```genSaveCalleeSavedRegistersHelp``` while taking out the
existing assertion in ```genPrologSaveReg``` which is too local.
Similar change is made for the restore case.

8 years agoMerge pull request #3749 from briansull/update-tests-lst
Brian Sullivan [Thu, 17 Mar 2016 23:30:18 +0000 (16:30 -0700)]
Merge pull request #3749 from briansull/update-tests-lst

Enable running of the full Pri0 and Pri1 set of tests

8 years agoEnable running of the full Pri0 and Pri1 set of tests
Brian Sullivan [Tue, 15 Mar 2016 01:23:05 +0000 (18:23 -0700)]
Enable running of the full Pri0 and Pri1 set of tests

Updated with EXPECTED_PASS and EXPECT_FAIL
Marked 50 test with NEW_PASS that will pass after the next test update
Fixed the location of 5 the threadstatic tests

8 years agoInliner: make more observations unconditional
Andy Ayers [Thu, 17 Mar 2016 20:46:13 +0000 (13:46 -0700)]
Inliner: make more observations unconditional

There are still some observations within `fgFindJumpTargets` that are
only made when inlining. This change enables them to also be made for
the prejit root case. This partially addresses the inconsistencies
noted in #3482.

Most notably, the simple stack model is now fully enabled for the
prejit root case, and the policy is able to more broadly observe
things like `CALLEE_LOOKS_LIKE_WRAPPER` and
`CALLEE_ARG_FEEDS_CONSTANT_TEST`.  As before, the `LegacyPolicy`
ignores these observations for the prejit root. Forthcoming policies
will likely behave differently.

Two observations that were fatal -- `CALLEE_UNSUPPORTED_OPCODE` and
`CALLEE_STORES_TO_ARGUMENT` -- are now conditionally fatal, since they
do not cause failure for the prejit root case (though arguably they
should).

The `CALLEE_IS_MOSTLY_LOAD_STORE` observation has been removed, and
the conditions under which it fired have been encapsulated within the
`LegacyPolicy`.

No change in behavior is expected. I verified crossgen of mscorlib
still makes all the same inline decisions for the same reasons.

8 years agoMerge pull request #3781 from rahku/helixFix
Rahul Kumar [Thu, 17 Mar 2016 23:14:46 +0000 (16:14 -0700)]
Merge pull request #3781 from rahku/helixFix

Update buildtools version. Shorten filename of tests

8 years agoMerge pull request #3798 from dotnet-bot/from-tfs
Matt Ellis [Thu, 17 Mar 2016 22:46:15 +0000 (15:46 -0700)]
Merge pull request #3798 from dotnet-bot/from-tfs

Merge changes from TFS

8 years agoMerge pull request #3793 from jkotas/hostprotectionattribute
Jan Kotas [Thu, 17 Mar 2016 21:58:42 +0000 (14:58 -0700)]
Merge pull request #3793 from jkotas/hostprotectionattribute

Add back HostProtectionAttribute to mscorlib

8 years agoUpdate out of date comment in List<T>
Petr Onderka [Mon, 14 Mar 2016 15:53:42 +0000 (16:53 +0100)]
Update out of date comment in List<T>

Comment for parameterless constructor of List<T> claimed that
the default non-zero capacity was 16, even though _defaultCapacity
is actually 4.

Updated the comment to refer to _defaultCapacity,
to make sure it doesn't need to be updated again
if _defaultCapacity changes in the future.

8 years agoUse "debian.8" instead of "debian.8.2"
Matt Ellis [Thu, 17 Mar 2016 21:36:55 +0000 (14:36 -0700)]
Use "debian.8" instead of "debian.8.2"

CoreFX uses "debian.8" as the rid for debain packages, whereas CoreCLR
was still on "debian.8.2". Move to "debian.8" because it matches what's
in /etc/os-release and what the CLI will generate by default.

[tfs-changeset: 1586899]

8 years agoUpdate buildtools version. Shorten filename of tests
Rahul Kumar [Thu, 17 Mar 2016 01:25:02 +0000 (18:25 -0700)]
Update buildtools version. Shorten filename of tests

8 years agoAdd back HostProtectionAttribute to mscorlib
Jan Kotas [Thu, 17 Mar 2016 18:21:55 +0000 (11:21 -0700)]
Add back HostProtectionAttribute to mscorlib

8 years agoMerge pull request #3780 from AndyAyersMS/DiscretionaryInliner
Andy Ayers [Thu, 17 Mar 2016 17:56:03 +0000 (10:56 -0700)]
Merge pull request #3780 from AndyAyersMS/DiscretionaryInliner

Inliner: create DiscretionaryPolicy

8 years agoMerge pull request #3790 from wtgodbe/timeout
William Godbe [Thu, 17 Mar 2016 17:31:51 +0000 (10:31 -0700)]
Merge pull request #3790 from wtgodbe/timeout

Increase timeouts for R2R jobs to 4 hours. Also enable mistakenly disabled CentOS R2R jobs

8 years agoMerge pull request #3770 from sejongoh/fix_setup_runtime_dep_cmd
Sejong Oh [Thu, 17 Mar 2016 17:29:10 +0000 (10:29 -0700)]
Merge pull request #3770 from sejongoh/fix_setup_runtime_dep_cmd

Fix setup-runtime-dependencies.cmd

8 years agoMerge pull request #3782 from sergiy-k/runtestsfix2
Matt Mitchell [Thu, 17 Mar 2016 17:24:52 +0000 (10:24 -0700)]
Merge pull request #3782 from sergiy-k/runtestsfix2

Patch runtest.sh to skip netstandard15aot assemblies

8 years agoIncrease timeouts for R2R jobs to 4 hours. Also enable mistakenly disabled CentOS...
wtgodbe [Thu, 17 Mar 2016 17:17:18 +0000 (10:17 -0700)]
Increase timeouts for R2R jobs to 4 hours. Also enable mistakenly disabled CentOS R2R jobs

8 years agoMerge pull request #3786 from jashook/arm64_ci_timeouts
Jarret Shook [Thu, 17 Mar 2016 17:16:29 +0000 (10:16 -0700)]
Merge pull request #3786 from jashook/arm64_ci_timeouts

Arm64 Windows timeout increase

8 years agoMerge pull request #3773 from wtgodbe/WindowsPri1
William Godbe [Thu, 17 Mar 2016 17:08:38 +0000 (10:08 -0700)]
Merge pull request #3773 from wtgodbe/WindowsPri1

Switch default Windows x64 Release PR test to pri1 in CI

8 years agoArm64 Windows timeout increase
jashook [Thu, 17 Mar 2016 14:57:30 +0000 (07:57 -0700)]
Arm64 Windows timeout increase

Currently the arm64 ci is timing out at 2 hours. When this happens the arm64 machines are left in a undefined state. Increasing the timeout to avoid this.

8 years agoFixed problem with bpmd not working sometimes.
Mike McLaughlin [Wed, 16 Mar 2016 04:38:28 +0000 (21:38 -0700)]
Fixed problem with bpmd not working sometimes.

Fix some too earlier SOS initialization problem. Now returns an error.

The DAC interface (IXCLRDataProcess) was being created everytime an command was run and the JIT and GC notification tables where being reinitialized each time losing any JIT notifications needed to resolve a breakpoint. Only create the DAC interface instance once. It does need to be flushed each time sos is entered though.

Enable the module load and unload and exception callbacks when the DAC instance is created. This is what windbg does on Windows (along with flushing the DAC each time the target is restarted). It simplifies the breakpoint code; it no longer needs to enable/disable these notification flags.

Cleaned up places where the DAC instance (direct calls to LoadClrDebugDll) and not released properly.

8 years agoMerge pull request #3771 from jashook/smarty_scripts
Jarret Shook [Thu, 17 Mar 2016 15:02:49 +0000 (08:02 -0700)]
Merge pull request #3771 from jashook/smarty_scripts

Add lst_creator tool and smarty output parser

8 years agoMerge pull request #3777 from dotnet-bot/from-tfs
Jan Kotas [Thu, 17 Mar 2016 07:46:21 +0000 (00:46 -0700)]
Merge pull request #3777 from dotnet-bot/from-tfs

Merge changes from TFS

8 years agoMerge pull request #3774 from rahku/Helix
Rahul Kumar [Thu, 17 Mar 2016 06:25:11 +0000 (23:25 -0700)]
Merge pull request #3774 from rahku/Helix

Add xunit console runner dependency

8 years agoPatch runtest.sh to skip netstandard15aot assemblies.
Sergiy Kuryata [Thu, 17 Mar 2016 03:38:30 +0000 (20:38 -0700)]
Patch runtest.sh to skip netstandard15aot assemblies.

8 years agoMerge pull request #3740 from ramarag/createlayouts
Rama krishnan Raghupathy [Thu, 17 Mar 2016 02:02:33 +0000 (19:02 -0700)]
Merge pull request #3740 from ramarag/createlayouts

Creates RunTime Dependency Layout as a seperate step

8 years agoMerge pull request #3779 from briansull/issue-3778
Brian Sullivan [Thu, 17 Mar 2016 01:40:06 +0000 (18:40 -0700)]
Merge pull request #3779 from briansull/issue-3778

Fix  for Issue 3778

8 years agoInliner: create DiscretionaryPolicy
Andy Ayers [Wed, 16 Mar 2016 23:02:54 +0000 (16:02 -0700)]
Inliner: create DiscretionaryPolicy

The `DiscretionaryPolicy` is similar to the `LegacyPolicy`, but does not
use size limits. So there is no "always" inline class and no "too big to
inline" class. Also, discretionary failures do not trigger noinline
stamping.

It is installed if `JitInlinePolicyDiscretionary` is set nonzero.

See #3775 for some background on where this new policy will be used.
This is a first cut and further refinement is likely.

Also removed the unused `NoteDouble` methods since the double-valued
observations now are kept internally within `LegacyPolicy` and it's
not very likely we'll introduce new cases where doubles are needed.

8 years agoAdd xunit console runner dependency
Rahul Kumar [Wed, 16 Mar 2016 22:51:49 +0000 (15:51 -0700)]
Add xunit console runner dependency

8 years agoUpdate version based on new content of clrconfigvalues.h
Manu [Thu, 17 Mar 2016 00:05:15 +0000 (09:05 +0900)]
Update version based on new content of clrconfigvalues.h

8 years agoFix setup-runtime-dependencies.cmd
Sejong Oh [Tue, 15 Mar 2016 20:56:41 +0000 (13:56 -0700)]
Fix setup-runtime-dependencies.cmd

8 years agoMerge branch 'master' into issue-3778
Brian Sullivan [Wed, 16 Mar 2016 23:47:42 +0000 (16:47 -0700)]
Merge branch 'master' into issue-3778

8 years agoFix issue 3778
Brian Sullivan [Wed, 16 Mar 2016 23:45:28 +0000 (16:45 -0700)]
Fix issue 3778

Move the initialization of compGenTreeID to earlier in Compiler::compCompileHelper

8 years agoRemove unused files from CoreCLR
Jan Kotas [Wed, 16 Mar 2016 23:04:10 +0000 (16:04 -0700)]
Remove unused files from CoreCLR

[tfs-changeset: 1586532]

8 years agoMerge pull request #3762 from AndyAyersMS/FixInconsistentPolicy
Andy Ayers [Wed, 16 Mar 2016 22:59:39 +0000 (15:59 -0700)]
Merge pull request #3762 from AndyAyersMS/FixInconsistentPolicy

Use root compiler instance for inline result and policy

8 years agoSwitch default Windows x64 Release PR test to pri1 in CI
wtgodbe [Wed, 16 Mar 2016 22:24:50 +0000 (15:24 -0700)]
Switch default Windows x64 Release PR test to pri1 in CI

8 years agoAdd lst_creator tool and smarty output parser
jashook [Wed, 16 Mar 2016 02:23:20 +0000 (19:23 -0700)]
Add lst_creator tool and smarty output parser

8 years agoMerge pull request #3751 from jashook/arm64_enable_dbg_chk
Jarret Shook [Wed, 16 Mar 2016 21:33:12 +0000 (14:33 -0700)]
Merge pull request #3751 from jashook/arm64_enable_dbg_chk

Remove release only check.

8 years agoMerge pull request #3752 from dotnet-bot/from-tfs
Jan Kotas [Wed, 16 Mar 2016 20:52:22 +0000 (13:52 -0700)]
Merge pull request #3752 from dotnet-bot/from-tfs

Merge changes from TFS

8 years agoUse root compiler instance for inline result and policy
Andy Ayers [Wed, 16 Mar 2016 17:50:51 +0000 (10:50 -0700)]
Use root compiler instance for inline result and policy

When constructing an InlineResult (and subsequent InlinePolicy)
always use the root compiler instance, so that all policy evaluations
done in a method are consistent.

Add an assert that the initial fact replay during `fgFindJumpTargets`
(force inline state and code size) doesn't change the candidacy when
inlining -- it should just be re-establishing what we knew in the
initial candidate scan.

Closes #3760.

8 years agoMerge pull request #3761 from kyulee1/fixstack
Kyungwoo Lee [Wed, 16 Mar 2016 20:13:33 +0000 (13:13 -0700)]
Merge pull request #3761 from kyulee1/fixstack

ARM64: Fix Large Stack Allocation

8 years agoARM64: Fix Large Stack Allocation
Kyungwoo Lee [Wed, 16 Mar 2016 16:39:47 +0000 (09:39 -0700)]
ARM64: Fix Large Stack Allocation

This fixes https://github.com/dotnet/coreclr/issues/3666.
When frame size is greater than 512 (frametype=3), JIT saves
callee-save registers followed by var arg registers, and then handles the
remaining frames. When the first callee-save register is saved, the stack
size is expected to be grown including delta amount which is for var arg registers.
For this failing case, actually we don't have any callee-save registers to be
saved while we still need to home var arg registers.
This fix is to handle such case in
```genSaveCalleeSavedRegistersHelp/genRestoreCalleeSavedRegistersHelp``` to
ensure allocating/deallocating delta stack size.

8 years agoMerge pull request #3758 from gkhanna79/TestGCStress
Gaurav Khanna [Wed, 16 Mar 2016 19:02:09 +0000 (12:02 -0700)]
Merge pull request #3758 from gkhanna79/TestGCStress

Enable tests to run under a specified GCStress mode

8 years agoMerge pull request #3755 from jkotas/failing-tests
Jan Kotas [Wed, 16 Mar 2016 18:58:14 +0000 (11:58 -0700)]
Merge pull request #3755 from jkotas/failing-tests

Disable tests that are failing in CI on Unix

8 years agoDisable tests that are failing in CI on Unix
Jan Kotas [Wed, 16 Mar 2016 11:24:16 +0000 (04:24 -0700)]
Disable tests that are failing in CI on Unix

8 years agoMerge pull request #3697 from AndyAyersMS/RandomInliner
Andy Ayers [Wed, 16 Mar 2016 16:29:29 +0000 (09:29 -0700)]
Merge pull request #3697 from AndyAyersMS/RandomInliner

Random inliner

8 years agoMerge pull request #3743 from dagood/remove-nugetbuild-source
Davis Goodin [Wed, 16 Mar 2016 16:04:41 +0000 (11:04 -0500)]
Merge pull request #3743 from dagood/remove-nugetbuild-source

Remove nugetbuild myget feed

8 years agoEnable tests to run under a specified GCStress mode
Gaurav Khanna [Wed, 16 Mar 2016 09:58:22 +0000 (02:58 -0700)]
Enable tests to run under a specified GCStress mode

8 years agoMerge pull request #3742 from kyulee1/fixgchole2
Kyungwoo Lee [Wed, 16 Mar 2016 14:30:38 +0000 (07:30 -0700)]
Merge pull request #3742 from kyulee1/fixgchole2

ARM64: Revisit for Fix GC hole in indirect call site

8 years agoMerge pull request #3656 from leemgs/upstream-calling-convention-cdecl
Jan Kotas [Wed, 16 Mar 2016 11:15:44 +0000 (04:15 -0700)]
Merge pull request #3656 from leemgs/upstream-calling-convention-cdecl

Remove __cdecl__ calling convention for [-Werror,-Wignored-attributes]

8 years agoMerge pull request #3725 from leemgs/upstream-doc-cross-arm
Jan Kotas [Wed, 16 Mar 2016 11:14:25 +0000 (04:14 -0700)]
Merge pull request #3725 from leemgs/upstream-doc-cross-arm

Documentation: Compiling mscorlib for ARM Linux

8 years agoRemove __cdecl__ calling convention for [-Werror,-Wignored-attributes]
Geunsik Lim [Wed, 16 Mar 2016 07:33:25 +0000 (16:33 +0900)]
Remove __cdecl__ calling convention for [-Werror,-Wignored-attributes]

The cross build for Linux/ARM is broken while doing the compilation
by the [-Werror,-Wignored-attributes] policy of the cross compiler.
Let's remove __cdecl__ calling convention from ./test/src/Interop folder
by handling __cdecl macro handling in xplatform.h for Linux/ARM.

Signed-off-by: Geunsik Lim geunsik.lim@samsung.com
Signed-off-by: Prajwal A N an.prajwal@samsung.com
Signed-off-by: MyungJoo Ham myungjoo.ham@samsung.com
8 years agoDocumentation: Compiling mscorlib for ARM Linux
Geunsik Lim [Tue, 15 Mar 2016 13:44:06 +0000 (22:44 +0900)]
Documentation: Compiling mscorlib for ARM Linux

Let's update the out-of-date contents of mscorlib.

Signed-off-by: Geunsik Lim <geunsik.lim@samsung.com>
8 years agoPrune Windows mscorlib
Jan Kotas [Wed, 16 Mar 2016 02:46:34 +0000 (19:46 -0700)]
Prune Windows mscorlib

In model.xml, I went over:
- FEATURE_ conditions that are disabled on Unix
- FEATURE_  conditions related to NetCF
- All ApiFxInternal methods
And flipped most them either to public, ImplRoot or deleted them.

Testing: Run all open CoreCLR and CoreFX tests, built legacy build razzle

[tfs-changeset: 1586209]

8 years agoRemove release only check.
jashook [Wed, 16 Mar 2016 02:24:17 +0000 (19:24 -0700)]
Remove release only check.

Allows debug and checked builds to run tests on arm64 machines.

8 years agoUpdate code to use COMPlus_ instead of COMPLUS_ when referencing knobs
Manu [Wed, 16 Mar 2016 01:44:44 +0000 (10:44 +0900)]
Update code to use COMPlus_ instead of COMPLUS_ when referencing knobs

8 years agoMerge pull request #3737 from sivarv/bugFix
Sivarv [Wed, 16 Mar 2016 01:03:21 +0000 (18:03 -0700)]
Merge pull request #3737 from sivarv/bugFix

Fix to issue #3734 - a block with jump kind BBJ_RETURN could also be empty if the method's return type is TYP_VOID

8 years agoEnsure proper spelling of COMPlus_xxx environment variables
Manu [Wed, 16 Mar 2016 00:32:34 +0000 (09:32 +0900)]
Ensure proper spelling of COMPlus_xxx environment variables

8 years agoCreates RunTime Dependency Layout as a seperate step
Rama Krishnan Raghupathy [Tue, 15 Mar 2016 21:48:36 +0000 (14:48 -0700)]
Creates RunTime Dependency Layout as a seperate step

8 years agoMerge pull request #3700 from rahku/updateBuildTools
Rahul Kumar [Wed, 16 Mar 2016 00:12:15 +0000 (17:12 -0700)]
Merge pull request #3700 from rahku/updateBuildTools

Update buildtools version to 00198

8 years agoMerge pull request #3739 from gkhanna79/FixRTJson
Gaurav Khanna [Wed, 16 Mar 2016 00:03:25 +0000 (17:03 -0700)]
Merge pull request #3739 from gkhanna79/FixRTJson

Fix runtime.json to include all platforms in the redirection package.…

8 years agoRemove nugetbuild myget feed from package restore.
Davis Goodin [Tue, 15 Mar 2016 23:49:23 +0000 (18:49 -0500)]
Remove nugetbuild myget feed from package restore.

8 years agoARM64: Revisit for Fix GC hole in indirect call site
Kyungwoo Lee [Sat, 12 Mar 2016 07:51:46 +0000 (23:51 -0800)]
ARM64: Revisit for Fix GC hole in indirect call site

This fixes https://github.com/dotnet/coreclr/issues/3738.
The fix I made in
https://github.com/dotnet/coreclr/commit/4dfd323dab88b902fc9479efa60cb5d6b7659e94
 used 3rd/4th operand to keep GC info, which actually conflicts with
 address field which is unioned with these operands.
So, I go back to the original fix that I proposed below:

Indirect call (```br``` or ```blr```) target is encoded with a register
which the first operand internally represents.
Unfortunately, call sites use the first two operands to hold GC callee-save registers.
So, this GC register information was overridden by the call target operand
in the indirect(virtual) call sites.
The fix is to split branch instruction categories for these two instructions
while keeping ```ret``` same as before. They internally use the third
operand to encode the target since the first two are used for GC info.
The reason I didn't change ```ret``` is because the return instruction
is created as a small instruction (not using operand 3 and more).

8 years agoMerge pull request #3741 from wtgodbe/r2r
William Godbe [Tue, 15 Mar 2016 22:30:20 +0000 (15:30 -0700)]
Merge pull request #3741 from wtgodbe/r2r

Fix file-too-long errors caused by adding R2R tests to CI

8 years agoFix file-too-long errors caused by adding R2R tests to CI
wtgodbe [Tue, 15 Mar 2016 21:56:16 +0000 (14:56 -0700)]
Fix file-too-long errors caused by adding R2R tests to CI

8 years agoFix to issue #3734
sivarv [Tue, 15 Mar 2016 20:23:29 +0000 (13:23 -0700)]
Fix to issue #3734

8 years agoRandom inliner
Andy Ayers [Fri, 11 Mar 2016 02:03:15 +0000 (18:03 -0800)]
Random inliner

This change creates an inline RandomPolicy which assigns a random
benefit to each discretionary inline candidate. Force inlines are
honored as they are with LegacyPolicy. The pool of discretionary
candidates is widened to include the "always inline" cases from the
LegacyPolicy. Discretionary inlines are accepted with a likelihood
that decreases with IL size, in a manner that mirrors the acceptance
probability of the LegacyPolicy.

The random inliner is intended to be used mainly as a stress testing
tool.

The RandomPolicy is enabled in non-retail builds when `JitStress` is
set to a nonzero value. By default the RandomPolicy will be used for
50% of the method being compiled, and the LegacyPolicy (in stress mode)
for the other 50%. Which policy is used for a given method depends on
the stress value. The stress value also forms part of the random seed,
so different random patterns can be invoked by varying the `JitStress`
value.

To enable the RandomPolicy for all methods, set `JitStress` to something
nonzero, then set `JitStressModeName=STRESS_RANDOM_INLINE`.
To do this without also enabling other stress modes, set `JitStressModeNameOnly=1'.

8 years agoFix runtime.json to include all platforms in the redirection package. Also update...
Gaurav Khanna [Tue, 15 Mar 2016 20:51:57 +0000 (13:51 -0700)]
Fix runtime.json to include all platforms in the redirection package. Also update the CLI build version (taken from CoreFX).

8 years agoMerge pull request #3706 from rahku/fixbug
Rahul Kumar [Tue, 15 Mar 2016 20:35:30 +0000 (13:35 -0700)]
Merge pull request #3706 from rahku/fixbug

fix dir of disabled test

8 years agoMerge pull request #3705 from wtgodbe/r2r
William Godbe [Tue, 15 Mar 2016 20:09:53 +0000 (13:09 -0700)]
Merge pull request #3705 from wtgodbe/r2r

Enable pri0 crossgen build/tests per-commit, and pri1 by trigger phrase

8 years agoMerge pull request #3729 from gkhanna79/FixNugetPackage
Gaurav Khanna [Tue, 15 Mar 2016 19:35:25 +0000 (12:35 -0700)]
Merge pull request #3729 from gkhanna79/FixNugetPackage

Fix 3724 - Include Runtime.json in redirection package

8 years agoMerge pull request #3711 from rahku/Helix
Rahul Kumar [Tue, 15 Mar 2016 19:17:29 +0000 (12:17 -0700)]
Merge pull request #3711 from rahku/Helix

Add dependency to apisets correctly

8 years agoEnable pri0 crossgen build/tests per-commit, and pri1 by trigger phrase
wtgodbe [Mon, 14 Mar 2016 23:10:10 +0000 (16:10 -0700)]
Enable pri0 crossgen build/tests per-commit, and pri1 by trigger phrase

8 years agoAdd dependency to apisets correctly
Rahul Kumar [Mon, 14 Mar 2016 21:40:55 +0000 (14:40 -0700)]
Add dependency to apisets correctly
Update version of apisets

8 years agoMerge pull request #3719 from dotnet-bot/from-tfs
Jan Kotas [Tue, 15 Mar 2016 16:14:00 +0000 (09:14 -0700)]
Merge pull request #3719 from dotnet-bot/from-tfs

Merge changes from TFS

8 years agoFix 3724 - Include Runtime.json in redirection package
Gaurav Khanna [Tue, 15 Mar 2016 15:04:53 +0000 (08:04 -0700)]
Fix 3724 - Include Runtime.json in redirection package

8 years agoMerge pull request #3720 from gkhanna79/FixTestTimeOut
Gaurav Khanna [Tue, 15 Mar 2016 14:26:05 +0000 (07:26 -0700)]
Merge pull request #3720 from gkhanna79/FixTestTimeOut

Fix timeout determination for tests

8 years agoMerge pull request #3694 from RussKeldorph/stresstags
Russ Keldorph [Tue, 15 Mar 2016 14:17:56 +0000 (07:17 -0700)]
Merge pull request #3694 from RussKeldorph/stresstags

Exclude doublearray/* from GCStress runs

8 years agoMerge pull request #3680 from mikedn/bad-disasm
Kyungwoo Lee [Tue, 15 Mar 2016 13:38:36 +0000 (06:38 -0700)]
Merge pull request #3680 from mikedn/bad-disasm

Fix some JIT disassembly issues

8 years agoMerge pull request #3698 from kyulee1/Fixovf
Kyungwoo Lee [Tue, 15 Mar 2016 13:38:04 +0000 (06:38 -0700)]
Merge pull request #3698 from kyulee1/Fixovf

ARM64: Fix genJumpToThrowHlpBlk

8 years agoMerge pull request #3692 from kyulee1/fixuint2float
Kyungwoo Lee [Tue, 15 Mar 2016 13:35:34 +0000 (06:35 -0700)]
Merge pull request #3692 from kyulee1/fixuint2float

ARM64: Fix casting unsigned int to double

8 years agoFix timeout determination for tests
Gaurav Khanna [Tue, 15 Mar 2016 03:36:14 +0000 (20:36 -0700)]
Fix timeout determination for tests

8 years agoMerge pull request #3699 from jkotas/tests
Jan Kotas [Tue, 15 Mar 2016 03:10:55 +0000 (20:10 -0700)]
Merge pull request #3699 from jkotas/tests

Test fixes

8 years agoMerge pull request #3634 from ramarag/testbuild
Rama krishnan Raghupathy [Tue, 15 Mar 2016 01:53:57 +0000 (18:53 -0700)]
Merge pull request #3634 from ramarag/testbuild

Enabling standalone builds for Test Project of any Priority

8 years agoMerge pull request #3702 from wtgodbe/disableEH
William Godbe [Tue, 15 Mar 2016 00:31:44 +0000 (17:31 -0700)]
Merge pull request #3702 from wtgodbe/disableEH

Disable failing Hardware EH test on non-windows

8 years agoMerge pull request #3654 from ramarag/lttngperf
Rama krishnan Raghupathy [Mon, 14 Mar 2016 23:49:25 +0000 (16:49 -0700)]
Merge pull request #3654 from ramarag/lttngperf

Using StackString to improve memory consumption in Lttng EventProvider