platform/upstream/coreclr.git
8 years agoEnable compiling ReJIT functionality in CoreCLR
mjsabby [Wed, 23 Mar 2016 01:18:58 +0000 (18:18 -0700)]
Enable compiling ReJIT functionality in CoreCLR

8 years agoMerge pull request #3830 from leemgs/upstream-sh-to-bash
Jan Kotas [Wed, 23 Mar 2016 00:14:44 +0000 (17:14 -0700)]
Merge pull request #3830 from leemgs/upstream-sh-to-bash

Don't use symbolic link 'sh'(/bin/sh) in ./coreclr/init-tools.sh

8 years agoMerge pull request #3863 from jkotas/legacynetcf-2
Jan Kotas [Tue, 22 Mar 2016 22:32:43 +0000 (15:32 -0700)]
Merge pull request #3863 from jkotas/legacynetcf-2

Delete legacy netcf compat support (part 2)

8 years agoMerge pull request #3794 from mikem8361/stripsym
Mike McLaughlin [Tue, 22 Mar 2016 21:28:18 +0000 (14:28 -0700)]
Merge pull request #3794 from mikem8361/stripsym

Strip symbols on release builds into separate binaries

8 years agoStrip symbols on release builds into separate binaries
Mike McLaughlin [Tue, 15 Mar 2016 23:04:06 +0000 (16:04 -0700)]
Strip symbols on release builds into separate binaries

Issue #3669

Created a common cmake strip_symbols function that all the modules and programs
use to strip the symbols out of the main into a separate .dbg (Linux) or .dSYM (OSX)
file.

Added an install_clr cmake function to encapsulate the install logic.

Changed all the library module cmake install lines from a TARGETS to a FILES one. The
TARGETS based install directives caused cmake to relink the binary and copy the unstripped
version to the install path. Left the all programs like corerun or ildasm as TARGETS
installs because on OSX FILES type installs don't get marked as executable.

Need to use "get_property(strip_source_file TARGET ${targetName} PROPERTY LOCATION)" for
the older versions of cmake and "set(strip_source_file $<TARGET_FILE:${targetName}>)" on
newer versions (v3 or greater).

8 years agoMerge pull request #3851 from briansull/update-tests-lst
Brian Sullivan [Tue, 22 Mar 2016 21:02:12 +0000 (14:02 -0700)]
Merge pull request #3851 from briansull/update-tests-lst

ARM64: Remove the Pri2 tests from Tests.lst

8 years agoMerge pull request #3862 from dotnet-bot/from-tfs
Jan Kotas [Tue, 22 Mar 2016 20:12:29 +0000 (13:12 -0700)]
Merge pull request #3862 from dotnet-bot/from-tfs

Merge changes from TFS

8 years agoMerge pull request #3858 from janvorli/fix-exception-callstack
Jan Vorlicek [Tue, 22 Mar 2016 20:06:18 +0000 (21:06 +0100)]
Merge pull request #3858 from janvorli/fix-exception-callstack

Fix exception to string in case of exception in callstack extraction

8 years agoDelete legacy netcf compat support (part 2)
Jan Kotas [Mon, 21 Mar 2016 16:06:54 +0000 (09:06 -0700)]
Delete legacy netcf compat support (part 2)

8 years agoFix exception to string in case of exception in callstack extraction
Jan Vorlicek [Tue, 22 Mar 2016 11:05:07 +0000 (12:05 +0100)]
Fix exception to string in case of exception in callstack extraction

This change fixes a problem when exception happens while converting an exception
call stack to string. Without this change, Exception.ToString would fail and
if the exception was unhandled, it would just print "Cannot print exception string
because Exception.ToString() failed." without any details on what exception happened.
The problem happens e.g. in case when a method on the call stack has a parameter
that contains members of types from an assembly that cannot be resolved.

The fix was to catch exception from parameter info extraction and if it happens,
just exclude the parameter list from the reported frame.

8 years agoUpdate Runtime packages to use netstandard1.0 instead of dotnet as the TFM.
Wes Haggard [Tue, 22 Mar 2016 16:21:28 +0000 (09:21 -0700)]
Update Runtime packages to use netstandard1.0 instead of dotnet as the TFM.

CR: ericstj

[tfs-changeset: 1588560]

8 years agoMerge pull request #3803 from manu-silicon/arm_struct
Carol Eidt [Tue, 22 Mar 2016 13:21:11 +0000 (06:21 -0700)]
Merge pull request #3803 from manu-silicon/arm_struct

Fix for issue #3754 when passing struct as argument on ARM

8 years agoDon't use symbolic link 'sh'(/bin/sh) in ./coreclr/init-tools.sh
Geunsik Lim [Tue, 22 Mar 2016 05:00:19 +0000 (14:00 +0900)]
Don't use symbolic link 'sh'(/bin/sh) in ./coreclr/init-tools.sh

There are a lot of different shells among the Linux distributions.
The up-to-date Ubuntu distribution uses /bin/dash without /bin/bash by default.
Also, the /bin/sh command has been using as a symbolic link without the original
/bin/sh in the some popular Linux distributions such as Ubuntu 14.04.

Ver 3:
- Don't use 'sh' command thanks to the  "#!/usr/bin/env bash" (first line)
- /bin/sh of Ubuntu 14.04 is symbolic link. It calls /bin/dash by default.

Ver 1:
- Let's replace a symbolic 'sh' with 'bash' such as
"#!/usr/bin/env bash" declaration (shebang) of ./coreclr/init-tools.sh

lgs@u14.04:~$ ls -l `which sh`
lrwxrwxrwx 1 root root 4 12 21 17:01 /bin/sh -> dash
lgs@u14.04:~$

Signed-off-by: Geunsik Lim geunsik.lim@samsung.com
Signed-off-by: MyungJoo Ham myungjoo.ham@samsung.com
Signed-off-by: Prajwal A N an.prajwal@samsung.com
8 years agoMerge pull request #3845 from erozenfeld/RegressionTests
Eugene Rozenfeld [Tue, 22 Mar 2016 05:53:32 +0000 (22:53 -0700)]
Merge pull request #3845 from erozenfeld/RegressionTests

Add regression tests for two previously fixed bugs.

8 years agoMerge pull request #3855 from jkotas/mscorlib-build
Jan Kotas [Tue, 22 Mar 2016 05:15:11 +0000 (22:15 -0700)]
Merge pull request #3855 from jkotas/mscorlib-build

Fix intermediate directory for mscorlib build

8 years agoMerge pull request #3852 from jkotas/legacynetcf-1
Jan Kotas [Tue, 22 Mar 2016 03:17:14 +0000 (20:17 -0700)]
Merge pull request #3852 from jkotas/legacynetcf-1

Delete legacy netcf compat support (part 1)

8 years agoMerge pull request #3650 from sivarv/blockSeqFix
Sivarv [Tue, 22 Mar 2016 02:57:02 +0000 (19:57 -0700)]
Merge pull request #3650 from sivarv/blockSeqFix

Fix to Huffman benchmark decompression loop has unnecessary spills and reloads

8 years agoFix intermediate directory for mscorlib build
Jan Kotas [Tue, 22 Mar 2016 02:56:24 +0000 (19:56 -0700)]
Fix intermediate directory for mscorlib build

8 years agoMerge pull request #3843 from AndyAyersMS/DataGathering
Andy Ayers [Tue, 22 Mar 2016 02:00:19 +0000 (19:00 -0700)]
Merge pull request #3843 from AndyAyersMS/DataGathering

Inliner: initial data gathering for code size estimates

8 years agoMerge pull request #3854 from mikem8361/docs
Mike McLaughlin [Tue, 22 Mar 2016 01:35:07 +0000 (18:35 -0700)]
Merge pull request #3854 from mikem8361/docs

Update SOS documentation

8 years agoDelete legacy netcf compat support (part 1)
Jan Kotas [Mon, 21 Mar 2016 16:06:54 +0000 (09:06 -0700)]
Delete legacy netcf compat support (part 1)

8 years agoMerge pull request #3847 from dotnet-bot/from-tfs
Jan Kotas [Tue, 22 Mar 2016 00:20:43 +0000 (17:20 -0700)]
Merge pull request #3847 from dotnet-bot/from-tfs

Merge changes from TFS

8 years agoAdd regression tests for two previously fixed bugs.
Eugene Rozenfeld [Mon, 21 Mar 2016 20:52:23 +0000 (13:52 -0700)]
Add regression tests for two previously fixed bugs.

One of the repros is in il rather than C# because the
repro was sensitive to what different versions of C#
compiler generated.

8 years agoFix for issue #3754 when passing struct as argument on ARM
Manu [Fri, 18 Mar 2016 02:59:12 +0000 (11:59 +0900)]
Fix for issue #3754 when passing struct as argument on ARM

When enabling Unix AMD64 struct passing, we broke ARM we were need to
check if the register is an HFA one or not, and if so uses the HFA type
instead.

8 years agoUpdate SOS documentation.
Mike McLaughlin [Mon, 21 Mar 2016 23:58:20 +0000 (16:58 -0700)]
Update SOS documentation.

8 years agoRemove the Pri2 tests from Tests.lst
Brian Sullivan [Mon, 21 Mar 2016 23:47:37 +0000 (16:47 -0700)]
Remove the Pri2 tests from Tests.lst

These tests are not run by the CI automation for the other architectures
Removing them will eliminate 26 failing tests

8 years agoMerge pull request #3815 from briansull/struct16-fp-args
Brian Sullivan [Mon, 21 Mar 2016 23:11:43 +0000 (16:11 -0700)]
Merge pull request #3815 from briansull/struct16-fp-args

Fixes issue 3750 - passing fp arguments

8 years agoInliner: initial data gathering for code size estimates
Andy Ayers [Fri, 18 Mar 2016 00:23:19 +0000 (17:23 -0700)]
Inliner: initial data gathering for code size estimates

Some initial work to gather data to drive the modelling of inline
code size impact. See #3775 for context.

Update the `DiscretionaryPolicy` to capture more observations.

Add a limit feature `JitInlineLimit` so the jit will stop inlining after
a given number of successful inlines.

Add a `DumpData` method to `InlinePolicy` which will display all the
observations that were made to evaluate an inline. Implement this for the
`DiscretionaryPolicy`. Add a matching `DumpSchema` that writes out
column headers for each of the observations.

Modify `InlineResult` to cache the last successful policy on the root
compiler instance. Use that along with the `JitInlineLimit` and
`DumpData` to display detailed information about the last sucessful
inline along with the code size for the method. All this is displayed
if `JitInlineDumpData ` is enabled.

This allows for isolating code size measurements as follows. Compile or
jit something with `JitInlineLimit = 0` and `JitInlineDumpData =1` (and
for now, `JitInlinePolicyDiscretionary = 1`, since other policies do not
implement any interesting data dumping).

Record the this root set of method sizes and IDs. Repeat with
`JitInlineLimit=1`. For each method where there was an inline, the size
impact of that inline can be computed by comparing this version versus
the version from the root set. Repeat with `JitInlineLimit=2`, comparing
versus the `=1` versions.

Currently the method token is used to identify the root method. This is
not sufficiently unique but unfortunately there currently aren't
substantially better alternatives. See #1957 for some discussion.

8 years agoMerge pull request #3840 from wtgodbe/HardwareEh
William Godbe [Mon, 21 Mar 2016 22:37:10 +0000 (15:37 -0700)]
Merge pull request #3840 from wtgodbe/HardwareEh

Disable OutOfMemoryException test in HardwareEh test

8 years agoMerge pull request #3841 from kyulee1/exclusion
Kyungwoo Lee [Mon, 21 Mar 2016 22:24:12 +0000 (15:24 -0700)]
Merge pull request #3841 from kyulee1/exclusion

ARM64: Apply exclusion list to Tests.lst file

8 years agoTrim Windows-specific System.Security.Principal types from CoreCLR mscorlib
Jan Kotas [Mon, 21 Mar 2016 21:02:42 +0000 (14:02 -0700)]
Trim Windows-specific System.Security.Principal types from CoreCLR mscorlib

[tfs-changeset: 1588225]

8 years agoDisable OutOfMemoryException test in HardwareEh test
wtgodbe [Mon, 21 Mar 2016 17:10:16 +0000 (10:10 -0700)]
Disable OutOfMemoryException test in HardwareEh test

8 years agoTests and fixes for struct16 arguments and floating point arguments
Brian Sullivan [Fri, 18 Mar 2016 23:58:50 +0000 (16:58 -0700)]
Tests and fixes for struct16 arguments and floating point arguments

Updated Tests.lst with 50 new passing tests
Updated this fix to be under #ifdef ARM64 only

8 years agoARM64: Apply exclusion list to Tests.lst file
Kyungwoo Lee [Mon, 21 Mar 2016 17:48:14 +0000 (10:48 -0700)]
ARM64: Apply exclusion list to Tests.lst file

Currently ARM64 tests run all tests even if those are excluded in
issues.targets, which is not only waste of resource but also confusing
ourselves to track such issues.
This adds a script to apply excluded tests specified in issues.targets to
Tests.lst file. Also new Tests.lst file is accordingly updated with 101
tests removed.

8 years agoMerge pull request #3833 from JohnChen0/master
John Chen [Mon, 21 Mar 2016 14:54:23 +0000 (07:54 -0700)]
Merge pull request #3833 from JohnChen0/master

Add documentation for CrossGen

8 years agoAdd documentation for CrossGen
John Chen [Fri, 18 Mar 2016 22:48:41 +0000 (15:48 -0700)]
Add documentation for CrossGen

8 years agoMerge pull request #3563 from adityamandaleeka/threading_test_port_2
Sergiy Kuryata [Sun, 20 Mar 2016 23:39:36 +0000 (16:39 -0700)]
Merge pull request #3563 from adityamandaleeka/threading_test_port_2

Open source even more threading tests

8 years agoMove all new tests to Pri 1.
Aditya Mandaleeka [Sun, 20 Mar 2016 03:53:43 +0000 (20:53 -0700)]
Move all new tests to Pri 1.

8 years agoAdd waitallex8 and waitallex8a to x86 legacy issues.
Aditya Mandaleeka [Sat, 19 Mar 2016 17:46:26 +0000 (10:46 -0700)]
Add waitallex8 and waitallex8a to x86 legacy issues.

8 years agoDelete tests that rely on Thread Abort functionality
Aditya Mandaleeka [Fri, 18 Mar 2016 18:16:45 +0000 (11:16 -0700)]
Delete tests that rely on Thread Abort functionality

8 years agoUpdate project.json files.
Aditya Mandaleeka [Tue, 15 Mar 2016 23:03:33 +0000 (16:03 -0700)]
Update project.json files.

8 years agoAdd some new threading tests to testsUnsupportedOutsideWindows
Aditya Mandaleeka [Mon, 7 Mar 2016 23:35:14 +0000 (15:35 -0800)]
Add some new threading tests to testsUnsupportedOutsideWindows

8 years agoOpen source more threading tests.
Aditya Mandaleeka [Mon, 7 Mar 2016 23:16:27 +0000 (15:16 -0800)]
Open source more threading tests.

8 years agoMerge pull request #3831 from dotnet-bot/from-tfs
Sergiy Kuryata [Sat, 19 Mar 2016 23:37:29 +0000 (16:37 -0700)]
Merge pull request #3831 from dotnet-bot/from-tfs

Merge changes from TFS

8 years agoFix a CrossGen CreatePDB issue that caused a Windows build break
John Chen [Sat, 19 Mar 2016 16:53:24 +0000 (09:53 -0700)]
Fix a CrossGen CreatePDB issue that caused a Windows build break

CrossGen /CreatePDB command gives preference to the TPA list while loading assemblies. So if the TPA contains the IL version of the input assembly but not the NI version, we would end up loading the IL instead of NI. This causes the CreatePDB command to fail, since it can't operate on IL images. This is fixed by putting the input file as the first entry in the TPA list.

Another issue is when the above error does occur, the error message is very unclear (it only shows "Unspecified error"). This is fixed with a better error message.

[tfs-changeset: 1587876]

8 years agoMerge pull request #3810 from kyulee1/FixPath
Kyungwoo Lee [Sat, 19 Mar 2016 04:22:01 +0000 (21:22 -0700)]
Merge pull request #3810 from kyulee1/FixPath

ARM64: Prepend toolset path

8 years agoMerge pull request #3655 from sejongoh/fix_u64_to_f64_cast
Sejong Oh [Sat, 19 Mar 2016 02:23:15 +0000 (19:23 -0700)]
Merge pull request #3655 from sejongoh/fix_u64_to_f64_cast

Fix inconsistent uint64-to-double cast

8 years agoMerge pull request #3813 from briansull/update-tests-lst
Brian Sullivan [Fri, 18 Mar 2016 23:35:31 +0000 (16:35 -0700)]
Merge pull request #3813 from briansull/update-tests-lst

ARM64: Native test build -  Update Tests.lst with passing/failing Interop tests

8 years agoFix inconsistent uint64-to-double cast
Sejong OH [Fri, 11 Mar 2016 07:30:23 +0000 (23:30 -0800)]
Fix inconsistent uint64-to-double cast

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 agoRemoving Tests.sav
Brian Sullivan [Fri, 18 Mar 2016 22:23:10 +0000 (15:23 -0700)]
Removing Tests.sav

8 years agoUpdated one UNSTABLE test
Brian Sullivan [Fri, 18 Mar 2016 22:10:00 +0000 (15:10 -0700)]
Updated one UNSTABLE test

8 years agoMerge branch 'master' into update-tests-lst
Brian Sullivan [Fri, 18 Mar 2016 22:09:17 +0000 (15:09 -0700)]
Merge branch 'master' into update-tests-lst

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 agoUpdate with passing Interop tests
Brian Sullivan [Fri, 18 Mar 2016 20:08:35 +0000 (13:08 -0700)]
Update with passing Interop tests

8 years agoARM64: Prepend toolset path
Kyungwoo Lee [Fri, 18 Mar 2016 19:41:04 +0000 (12:41 -0700)]
ARM64: Prepend toolset path

Currently ARM64 build requires a plain CMD environment which often causes
a trouble when we use a different CMD or other native tools are in the path.
The fix is to simply prepend the tool path instead of appending it.

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