Sejong Oh [Thu, 3 Mar 2016 00:58:38 +0000 (16:58 -0800)]
Merge pull request dotnet/coreclr#3284 from sejongoh/pull_down_coredistool
Pulling down coredistool package for gcstress test
Commit migrated from https://github.com/dotnet/coreclr/commit/
f5efe1183c41d631c1c9596b4a570a167ef21126
Matt Mitchell [Thu, 3 Mar 2016 00:48:17 +0000 (16:48 -0800)]
Merge pull request dotnet/coreclr#3476 from mmitche/fix-triggers
Fix triggers
Commit migrated from https://github.com/dotnet/coreclr/commit/
f8a85cb44883ea265030c43a005a1cb78781a166
Davis Goodin [Thu, 3 Mar 2016 00:46:47 +0000 (18:46 -0600)]
Merge pull request dotnet/coreclr#3405 from dagood/new-cli
Upgrade dotnet CLI version, accumulated project.json changes
Commit migrated from https://github.com/dotnet/coreclr/commit/
475d8ddfb0408265313aa43bdc8f4acdb9efa79a
Matt Mitchell [Thu, 3 Mar 2016 00:25:29 +0000 (16:25 -0800)]
Fix triggers
The github triggers were broken with two types of windows builds using the same context next. One was the build only job that is just used to feed into the *Nix testing. We don't need to launch these builds at all, since they are just used for internal testing.
See also dotnet/coreclr#3475
Commit migrated from https://github.com/dotnet/coreclr/commit/
2a9a7f1574e140199ac461882f4b4b0fe4be9672
Pat Gavlin [Thu, 3 Mar 2016 00:09:10 +0000 (16:09 -0800)]
Merge pull request dotnet/coreclr#1668 from Dmitry-Me/assignmentOpReturningUnsuitableType
Impossible implicit downcast in assignment operator
Commit migrated from https://github.com/dotnet/coreclr/commit/
143466225c322418605ed58dd2aa60695613e547
Sivarv [Wed, 2 Mar 2016 23:45:05 +0000 (15:45 -0800)]
Merge pull request dotnet/coreclr#3467 from sivarv/emitInsMovFix
Fix to intermittent failure of jit test 200w1d-09_cpp_r.exe
Commit migrated from https://github.com/dotnet/coreclr/commit/
f397c047d361280666c7d771f98c97413ed35dcf
Jan Kotas [Wed, 2 Mar 2016 22:09:51 +0000 (14:09 -0800)]
Merge pull request dotnet/coreclr#3471 from dotnet-bot/from-tfs
Merge changes from TFS
Commit migrated from https://github.com/dotnet/coreclr/commit/
dc64c3254c7c60d8b7965defa97db61f5fddfe87
Mike McLaughlin [Wed, 2 Mar 2016 21:01:08 +0000 (13:01 -0800)]
Merge pull request dotnet/coreclr#3466 from mikem8361/armfix
Fixes issue dotnet/coreclr#3453 ARM build break.
Commit migrated from https://github.com/dotnet/coreclr/commit/
0129080cd44b590159c6aa2b1bb76a0aca2c480a
Maoni Stephens [Wed, 2 Mar 2016 20:23:49 +0000 (12:23 -0800)]
Integrate GC changes from full framework
[tfs-changeset: 1580785]
Commit migrated from https://github.com/dotnet/coreclr/commit/
da777e57e0d4625e13f630321fe0defd439f8d61
Andy Ayers [Wed, 2 Mar 2016 19:43:48 +0000 (11:43 -0800)]
Merge pull request dotnet/coreclr#3447 from AndyAyersMS/ForceInlineFix
Inliner: restore some force inline overrides
Commit migrated from https://github.com/dotnet/coreclr/commit/
d4e7e51e023339b833a4423614d64e3b25a72bd5
Jarret Shook [Wed, 2 Mar 2016 19:38:59 +0000 (11:38 -0800)]
Merge pull request dotnet/coreclr#3468 from jashook/amr64_rel
Turn off testing for arm64 for debug and checked builds.
Commit migrated from https://github.com/dotnet/coreclr/commit/
40576355fc8ecde605ca36c7e02e8b63684d7f0a
jashook [Wed, 2 Mar 2016 19:31:25 +0000 (11:31 -0800)]
Turn off testing for arm64 for debug and checked builds.
Commit migrated from https://github.com/dotnet/coreclr/commit/
69329fc32fec75f20878e123e16ebf645ddc31dd
Jarret Shook [Wed, 2 Mar 2016 18:48:27 +0000 (10:48 -0800)]
Merge pull request dotnet/coreclr#3435 from jashook/arm64_testing
Small changes to netci to enable arm64 testing.
Commit migrated from https://github.com/dotnet/coreclr/commit/
5c2de44cbb2eb39105904bfe603a5ea45a2a13c2
Mike McLaughlin [Wed, 2 Mar 2016 18:42:40 +0000 (10:42 -0800)]
Fixes issue dotnet/coreclr#3453 ARM build break.
Commit migrated from https://github.com/dotnet/coreclr/commit/
b7a80fdf7cbcd19a591217fb287e828138f6555f
Andy Ayers [Wed, 2 Mar 2016 18:34:41 +0000 (10:34 -0800)]
Merge pull request dotnet/coreclr#3460 from AndyAyersMS/FixBadInlineeRedundancy
Inliner: fix assert for multiple failure reasons when inlining
Commit migrated from https://github.com/dotnet/coreclr/commit/
8d746230215da166204659f172d2229f1511c3aa
Davis Goodin [Tue, 1 Mar 2016 23:18:01 +0000 (17:18 -0600)]
Change all dependency versions to match what was actually restored in the checked-in lockfiles.
Used a tool to look at lockfiles: when a dependency did not have a corresponding downloaded package, found the latest version that was downloaded and changed the project.json to match. This fixes any packages that don't exist (such as some beta-23302) and floating dependencies (*).
Commit migrated from https://github.com/dotnet/coreclr/commit/
89e6d00b951637e4961dd91b9e1cbcd8b24b0514
Davis Goodin [Wed, 24 Feb 2016 00:57:04 +0000 (18:57 -0600)]
Remove RestorePackages = true from all test csproj's.
Restore is performed once as a batch. csproj's share project.jsons, so restoring for each one was a race to update the lockfile.
Commit migrated from https://github.com/dotnet/coreclr/commit/
c62698eccc4ac1e74a1990d232cf3a3845d31e44
Davis Goodin [Wed, 24 Feb 2016 00:11:15 +0000 (18:11 -0600)]
Use tooling to add Platforms dependencies and imports where necessary.
Commit migrated from https://github.com/dotnet/coreclr/commit/
8fb1a723ff5f7099fb2b4f3014bf08ac5cfc5c5e
Davis Goodin [Tue, 23 Feb 2016 23:14:23 +0000 (17:14 -0600)]
Remove all lockfiles from source control.
Commit migrated from https://github.com/dotnet/coreclr/commit/
36cb6d858f8f84e8870b56441b82bb9a4e4faf51
Davis Goodin [Tue, 23 Feb 2016 20:37:36 +0000 (14:37 -0600)]
Upgrade CLI version and buildtools, and make build file changes.
Unset CORE_ROOT in environment on Windows before doing restore so that dotnet CLI doesn't try to run using binaries from the test CORE_ROOT.
Restore the xunit wrapper projects in a batch rather than individually to save a lot of time.
Work around xunit.runner.msbuild not having compatible package layout by ignoring errors and adding import so that a future fix will work.
Hard-code C# language for generated wrapper projects: the $(Language) property wasn't set.
Also Change www.myget.org to dotnet.myget.org, as we switched to enterprise myget.
Add System.ObjectModel to tests\src\JIT\config\benchmark+serialize\project.json to manually upgrade it to a version that doesn't require lifting for runtime. This fixes System.ObjectModel.dll being missing from CORE_ROOT and causing the test to fail.
Switch to v3 nuget feeds and sync NuGet.Configs.
Commit migrated from https://github.com/dotnet/coreclr/commit/
0d71a87375bfa54af10b68b74a4c8d93430ed308
sivarv [Wed, 2 Mar 2016 18:26:17 +0000 (10:26 -0800)]
Fix to intermittent failure of jit test 200w1d-09_cpp_r.exe
This is a long standing bug in xarch emitter that repros when a static field
access results in the following IR
lclvar = GT_IND(GT_LEA(GT_CLS_VAR_ADDR, offset=200))
GT_CLAS_VAR_ADDR represents address of the static class object and
offset is used to access a field of a static class.
In this case codegen of GT_IND would call emitInsMov(treeNode= GT_IND)
emiInsMov is checking whether 'base' of addr is GT_CLS_VAR_ADDR and if
so is disregarding offset/indiex/scale fields within addr mode. As a
result code generated is
lea rdx, [reloc classVar[0xddc44ce8]]
movsd xmm10, qword ptr [reloc classVar[0xddc44ce8]]
The bug is that emitInsMov() should be checking that oper of addr of GT_IND
is GT_CLS_VAR_ADDR. Same issue exists in GT_STOREIND case. After the
fix the following code is generated
lea rdx, [reloc classVar[0xdc5a4ce8]]
movsd xmm10, qword ptr [rdx+200]
Why this bug repros intermittently? fgMorphField() when morphing a static
field access obtains static's addr and checks to see whether its addr
can be encoded as pc-relative 32-bit offset. If so then fgMorphField() will create
GT_CLS_VAR_ADDR to represent static's addr. If static's addr cannot be
encoded pc-relative 32-bit offset then it will create long type icon to represent the
address. Later long icon + offset is folded into a single long constant
and the test passes in this case. The test fails whenver GT_CLS_VAR_ADDR +
offset materializes in IR which in turn depends on the distance between
jitted code address and the static's address. In most cases statics
were at a distance that cannot be encoded as pc-relative and hence works
correctly. Hence the intermittent failure of this test.
Commit migrated from https://github.com/dotnet/coreclr/commit/
3eb08188497063e8251144ba1f78d23e1b9306f8
Kyungwoo Lee [Wed, 2 Mar 2016 18:14:34 +0000 (10:14 -0800)]
Merge pull request dotnet/coreclr#3444 from kyulee1/mul
ARM64: Fix for Multiplication with Overflow Check
Commit migrated from https://github.com/dotnet/coreclr/commit/
28c6b8dacf69d374a4ac5d6a49d7f67d899c0454
Kyungwoo Lee [Tue, 1 Mar 2016 17:33:13 +0000 (09:33 -0800)]
ARM64: Fix for Multiplication with Overflow Check
For 4 byte integer multiplication, JIT emits a bad-code which is valid
only for 8 byte (i8) multiplication.
For the fix, I use ```smull```(signed)/```umull```(unsigned) instructions
that contain 8 byte results from 4 byte by 4 byte multiplication.
So only one multiplication is needed instead of two for this case.
By simply shifting the results, we could get the upper results that is
used to detect overflow.
Similar transform is made for the unsigned case.
Lower is also changed to reserve a register for overflow check.
Before
smulh w10, w8, w9 --> Incorrect use: smulh is for obtaining the upper
bits [127:64] of x8 * x9
mul w8, w8, w9
cmp x10, x8, ASR dotnet/coreclr#63
After
smull x8, x8, x9 --> x8 = w8 * w9
lsr x10, x8, dotnet/coreclr#32 --> shift the upper bit of x8 to get sign bit
cmp w10, w8, ASR dotnet/coreclr#31 --> check sign bit
Commit migrated from https://github.com/dotnet/coreclr/commit/
445a810039d0801d099fd5ba543876456b248c47
Pat Gavlin [Wed, 2 Mar 2016 18:07:11 +0000 (10:07 -0800)]
Merge pull request dotnet/coreclr#3464 from kyulee1/deltest
Delete a bad test (b06435) for double to long conversion
Commit migrated from https://github.com/dotnet/coreclr/commit/
bf1e2d8ac07ba2422fbb3119d86e4d0851d7197f
jashook [Tue, 1 Mar 2016 01:06:40 +0000 (17:06 -0800)]
Small changes to netci to enable arm64 testing.
Commit migrated from https://github.com/dotnet/coreclr/commit/
f3902d06a64eba17de66407b854d5940107a0ff6
Jan Kotas [Wed, 2 Mar 2016 17:59:39 +0000 (09:59 -0800)]
Merge pull request dotnet/coreclr#3456 from bbowyersmyth/StringReplace
Port String.Replace(char, char) from CoreRT
Commit migrated from https://github.com/dotnet/coreclr/commit/
ca6d9755b72f48b64dac9ec7a7b21c218c82588c
Kyungwoo Lee [Wed, 2 Mar 2016 01:17:14 +0000 (17:17 -0800)]
Delete a bad test (b06435) for double to long conversion
This test relies on unspecified value when a large double value
is converted to a long value where overflow occurs.
For x64(cvttsd2si), this value is MIN_INT(0x8000000000000000) while ARM64(fcvtzs) produces MAX_INT(0x7fffffffffffffff).
According to ECMA spec, the value is unspecified, so I simply delete this test.
Commit migrated from https://github.com/dotnet/coreclr/commit/
a65b75b6e0dc3a53d5fc3aa87f6a9f4029c7453d
Sejong OH [Sat, 20 Feb 2016 20:44:13 +0000 (12:44 -0800)]
Add pulling down coredistool package for gcstress test
Commit migrated from https://github.com/dotnet/coreclr/commit/
c4613e00119c798ec9804ebb12bf3bb89e58840c
Jan Kotas [Wed, 2 Mar 2016 11:45:39 +0000 (03:45 -0800)]
Merge pull request dotnet/coreclr#3458 from dotnet-bot/from-tfs
Merge changes from TFS
Commit migrated from https://github.com/dotnet/coreclr/commit/
9c8484734621f36d2e4113644e56109cb76192e3
Andy Ayers [Wed, 2 Mar 2016 07:24:43 +0000 (23:24 -0800)]
Inliner: fix assert for multiple failure reasons when inlining
Change dotnet/coreclr#3436 added asserts that checked that the LegacyPolicy would not
see multiple failing observations when inlining because we expect the
inliner to fail fast when it hits the first bad observation.
This change adds a test case that shows one example where we could get
two failing observations, along with code changes to fix the issue.
When an inlinee has invalid IL, an exception is raised and caught in
`jitNativeCode`. The catch there sets the inline result to the never
state. A failure code is propagated back to `fgInvokeInlineeCompiler`
which redundantly sets the inline result to a failing state with a
generic "something bad happened" observation. This second observation
triggers an assert since the jit is inlining and the result is already
known to be a failure.
The fix is to check in `fgInvokeInlineeCompiler` if the inline result
is already known to be in a failing state, and if so, forgo the new
observation.
Commit migrated from https://github.com/dotnet/coreclr/commit/
eec9185b2257e8810d8e2af1a4bc41a05cdf51b6
John Chen [Wed, 2 Mar 2016 06:43:03 +0000 (22:43 -0800)]
Fix build break on arm caused by long path support change
[tfs-changeset: 1580615]
Commit migrated from https://github.com/dotnet/coreclr/commit/
7351e9bef26eb95cdf853a35aa45954023fd0091
Sean Gillespie [Wed, 2 Mar 2016 04:02:52 +0000 (20:02 -0800)]
Merge pull request dotnet/coreclr#3448 from swgillespie/license_headers
Fix license header for test files
Commit migrated from https://github.com/dotnet/coreclr/commit/
2b4fec4cd86eab7f3b6e3331a84808554485265f
Bruce Bowyer-Smyth [Wed, 2 Mar 2016 03:49:41 +0000 (13:49 +1000)]
Port String.Replace(char, char) from CoreRT
Commit migrated from https://github.com/dotnet/coreclr/commit/
f007485a78024b1953a7fe1ffa845be28e93ab6c
Andy Ayers [Tue, 1 Mar 2016 21:11:59 +0000 (13:11 -0800)]
Inliner: restore some force inline overrides
Force inline should override the IL size and maxstack limits imposed
for normal inlines. This change undoes an unintentional behavior change
from recent refactoring.
Added some test cases which are sensitive to this behavior.
Also, since we now track failing inlines, dump the inline tree even
if no methods were successfully inlined.
Commit migrated from https://github.com/dotnet/coreclr/commit/
8651c4b949d700bc952c9ce5a64098486ec55d90
Swaroop Sridhar [Tue, 1 Mar 2016 22:21:13 +0000 (14:21 -0800)]
Merge pull request dotnet/coreclr#3438 from swaroop-sridhar/corjithost
Export CorJitHost interface
Commit migrated from https://github.com/dotnet/coreclr/commit/
526d355acc407ab59348ae97d5ade4b48ddad307
Mike McLaughlin [Tue, 1 Mar 2016 21:58:43 +0000 (13:58 -0800)]
Merge pull request dotnet/coreclr#3445 from mikem8361/buildsymbols
Enable source/line info on "release" builds
Commit migrated from https://github.com/dotnet/coreclr/commit/
d0d5891047731af024230a56d8374532f73ae1c2
John Chen [Tue, 1 Mar 2016 21:48:22 +0000 (13:48 -0800)]
Merge pull request dotnet/coreclr#3433 from JohnChen0/longpath
Support long paths in CoreCLR runtime on Windows
Commit migrated from https://github.com/dotnet/coreclr/commit/
ce83861b249144d681077b178e6458374a0e8397
Gaurav Khanna [Tue, 1 Mar 2016 19:42:21 +0000 (11:42 -0800)]
Merge pull request dotnet/coreclr#3440 from gkhanna79/InitToolsUpdate
Map RHEL distribution to download CentOS CLI
Commit migrated from https://github.com/dotnet/coreclr/commit/
07235f7b4c3b96ff31ea36774832901958634b5f
Andy Ayers [Tue, 1 Mar 2016 19:02:10 +0000 (11:02 -0800)]
Merge pull request dotnet/coreclr#3436 from AndyAyersMS/InlineRefactorResilientPolicy
Inliner refactoring: allow repeated bad observations
Commit migrated from https://github.com/dotnet/coreclr/commit/
854af6a4e11dff8d9e09b7b7fd7a9c32eb14ca47
Kyungwoo Lee [Tue, 1 Mar 2016 17:35:54 +0000 (09:35 -0800)]
Merge pull request dotnet/coreclr#3385 from kyulee1/fixmod1
ARM64: Fix for Mod 1
Commit migrated from https://github.com/dotnet/coreclr/commit/
453884df9dc9e7082c49126b3c1d4d356d6119ed
Mike McLaughlin [Tue, 1 Mar 2016 17:26:07 +0000 (09:26 -0800)]
Enable source/line info on "release" builds
The symbol info will be stripped and put into a separate *-dbg by dotnet cli (soon).
Commit migrated from https://github.com/dotnet/coreclr/commit/
1e86aaad7f673261553895f58f5bad461b06c720
Kyungwoo Lee [Fri, 26 Feb 2016 19:30:23 +0000 (11:30 -0800)]
ARM64: Fix for Mod 1
In Arm64, mod a % b is simulated as a - a / b * b.
When b (divisor) is 1, the result is simply 0.
This optimization is done in the post-pass of morph
while JIT already expands the mod operation in the pre-pass of morph.
This unnessary expansion results in bad codegen down the road.
So, the fix is to move this special case handling in the pre-pass.
Before
fgMorphTree BB02, stmt 2 (after)
[000035] ------------- /--* lclVar int V02 tmp1
[000036] -A----------- /--* comma int
[000001] ------------- | | /--* const int 0xffffffff80000000
[000034] -A----------- | \--* = int
[000033] D------N----- | \--* lclVar int V02 tmp1
[000041] -A----------- /--* - int
[000040] ------------- | \--* lclVar int V02
[000006] -A----------- * = int
[000005] D------N----- \--* lclVar int V01 tmp0
After
[000033] ------------- /--* const int 0
[000006] -A----------- * = int
[000005] D------N----- \--* lclVar int V01 tmp0
Commit migrated from https://github.com/dotnet/coreclr/commit/
0f63f98870ad426e3b41beab03f9b3b4ec8499e9
Gaurav Khanna [Tue, 1 Mar 2016 06:50:01 +0000 (22:50 -0800)]
Map RHEL distribution to download CentOS CLI
Commit migrated from https://github.com/dotnet/coreclr/commit/
5f4fc97f24316cdf464671cbaeca5710a1b76665
Lubomir Litchev [Tue, 1 Mar 2016 05:29:51 +0000 (21:29 -0800)]
Merge pull request dotnet/coreclr#3351 from LLITCHEV/Issue2757
Add support for emitting GC-ness of the second return register for 16…
Commit migrated from https://github.com/dotnet/coreclr/commit/
444ca211c12c1f424acc1fa275272f284dcccb75
Brian Sullivan [Tue, 1 Mar 2016 03:21:28 +0000 (19:21 -0800)]
Merge pull request dotnet/coreclr#3437 from briansull/update-tests
Updated arm64 Tests.lst for PR dotnet/coreclr#3430
This is a test metadata only update, it contains no source code changes
Commit migrated from https://github.com/dotnet/coreclr/commit/
6f6d0f0d797cd6b04ec8678245f73af5b64e89e3
Brian Sullivan [Tue, 1 Mar 2016 02:57:36 +0000 (18:57 -0800)]
Moved 42 tests from UNSTABLE to EXPECTED_PASS
Commit migrated from https://github.com/dotnet/coreclr/commit/
47ffdb17db3ab6ab3006570660130bbb61830478
Swaroop Sridhar [Tue, 1 Mar 2016 02:24:28 +0000 (18:24 -0800)]
Export CorJitHost interface
Export the CorJitHost interface to the build directory, so that
alternate JITs can use it.
This change is necessary to fix LLILC build break.
Commit migrated from https://github.com/dotnet/coreclr/commit/
7f0c849b562b1bec5aae353b5f8aba9c0c32a6bb
Brian Sullivan [Tue, 1 Mar 2016 01:58:53 +0000 (17:58 -0800)]
Updated arm64 Tests.lst for PR dotnet/coreclr#3430
That PR fixed Issue dotnet/coreclr#3104 and we now have 20 new passing tests
There are still 5 tests with that tag that still fail and now are marked with NEED_TRIAGE
The tests that fail when we do not set COMPLUS_GCgen0size=
50000000 are now tagged with REQ_LARGE_GEN0
Commit migrated from https://github.com/dotnet/coreclr/commit/
eba194a5365d8ed3b38d8461b9d98ec0d67d2e7f
Andy Ayers [Mon, 29 Feb 2016 22:59:46 +0000 (14:59 -0800)]
Inliner refactoring: allow repeated bad observations
The LegacyPolicy now allows repeated observations leading to never
or failing inlines, provided the policy is used as part of the prejit
scan and the observations all have the same impact (that is, all nevers
or all failures). Only the first bad observation is remembered and it
is used as the reason for badness.
This addresses another of the items in issue dotnet/coreclr#3371.
Also, clean up a few things:
Fix a few copy and paste errors in comment headers.
Fix broken "disallow copy-assignment" pattern for InlineResult
and uncomment and fix same for InlinePolicy.
Remove an accidentally duplicated comment block (original is still
there in inline.h).
Commit migrated from https://github.com/dotnet/coreclr/commit/
67e18a3a731f5071e2e33169fc2e31e7305e3672
Lubomir Litchev [Thu, 25 Feb 2016 05:26:55 +0000 (21:26 -0800)]
Add support for emitting GC-ness of the second return register for 16 byte
structs.
This changeset adds support for emitting the GC-ness of the second return
register (RDX for System V Amd64) for multi-register return structs.
It closes a hole in the GC info and resolves multiple GC stress failures.
Fixes dotnet/coreclr#2757.
Commit migrated from https://github.com/dotnet/coreclr/commit/
31cb7975335b33bd04268216e3409a4cd6e9dc29
Pat Gavlin [Mon, 29 Feb 2016 23:50:37 +0000 (15:50 -0800)]
Merge pull request dotnet/coreclr#3434 from dotnet-bot/from-tfs
Merge changes from TFS
Commit migrated from https://github.com/dotnet/coreclr/commit/
a05632c70d588bed5099a67f032ad510c0164aaa
Andy Ayers [Mon, 29 Feb 2016 23:48:10 +0000 (15:48 -0800)]
Merge pull request dotnet/coreclr#3432 from AndyAyersMS/InlineRefactorRemoveLRMode
Inliner refactoring: remove the LR sampling mode
Commit migrated from https://github.com/dotnet/coreclr/commit/
c63e15b42cc257e160147a2907ea4fd5bf7d476e
Pat Gavlin [Mon, 29 Feb 2016 22:40:59 +0000 (14:40 -0800)]
Fix a build break in ArenaAllocator.
The toolset used by the internal build (and the ARM build in CI) seems to be a bit
buggy w.r.t. move assignment and deleted assignment operators. In particular,
it attempts to generate an assignment operator for a derived type whose base
type has deleted the corresponding operator and it chooses deleted copy
assignment operators over move assignment operators unless std::move is
used.
[tfs-changeset: 1579941]
Commit migrated from https://github.com/dotnet/coreclr/commit/
fae40713f43f72701a36851f177d1a61d34e40d3
John Chen (JOCHEN7) [Wed, 24 Feb 2016 04:36:07 +0000 (20:36 -0800)]
Support long paths in CoreCLR runtime on Windows
The CoreCLR runtime is updated to support long file paths on Windows.
Pending updates to mscorlib.dll, the following scenarios are supported:
* Run managed apps from a long path.
* Load CoreCLR runtime and framework from a long path.
* Load user assemblies from a long path.
* Run CrossGen from a long path, with its input/output from a long path.
* Generate debug log file at a long path.
The following scenarios are not yet supported, and will be fixed in
future commits:
* Mscorlib.dll and framework assemblies are not yet long path compatible.
Note that until mscorlib.dll is fixed, most of the runtime changes can't
actually be used.
* Support on non-Windows platforms.
* Support for debugging and error reporting.
* Tools such as ilasm or ildasm.
Commit migrated from https://github.com/dotnet/coreclr/commit/
488e6a16685241ed1aed3b3d386b78ed32e428f0
Andy Ayers [Mon, 29 Feb 2016 18:33:23 +0000 (10:33 -0800)]
Inliner refactoring: remove the LR sampling mode
Remove code that sampled methods and provided data for the linear
regresssion (LR) size model used by the inliner. We plan on preserving
the current model for legacy behavior and creating new and different
models for future work.
Addreses one part of dotnet/coreclr#3371.
Commit migrated from https://github.com/dotnet/coreclr/commit/
563910fef1d865f71cde8244ff7287ffecddb332
Pat Gavlin [Mon, 29 Feb 2016 20:55:50 +0000 (12:55 -0800)]
Merge pull request dotnet/coreclr#3431 from CarolEidt/ProtojitAltJit
Define ALT_JIT for protojit.dll
Commit migrated from https://github.com/dotnet/coreclr/commit/
2d98b6a53263b9ad4b98e4a5dee35e703fd7ddf5
Pat Gavlin [Mon, 29 Feb 2016 19:33:15 +0000 (11:33 -0800)]
Merge pull request dotnet/coreclr#3389 from pgavlin/AllocatorRefactor
Refactor the pooled ArenaAllocator.
Commit migrated from https://github.com/dotnet/coreclr/commit/
156971c8b4fe09797e8e9bf480fa1cc302ff679a
Pat Gavlin [Mon, 29 Feb 2016 19:32:46 +0000 (11:32 -0800)]
Merge pull request dotnet/coreclr#3429 from kyulee1/pow
ARM64: Fix for pow test
Commit migrated from https://github.com/dotnet/coreclr/commit/
98e6343eb0d52a98c08f00b74ff2cc3c3a80f4dd
Rahul Kumar [Mon, 29 Feb 2016 19:21:29 +0000 (11:21 -0800)]
Merge pull request dotnet/coreclr#3430 from rahku/arm64
Fixes issue dotnet/coreclr#2643 and dotnet/coreclr#2731
Commit migrated from https://github.com/dotnet/coreclr/commit/
a8c495699b76908bccb2af6fb1663d7a5b24e7d8
Carol Eidt [Mon, 29 Feb 2016 19:18:02 +0000 (11:18 -0800)]
Define ALT_JIT for protojit.dll
This enables the use of the COMPlus variables for controlling which
files use the altjit, as well as for dumps, etc.
Commit migrated from https://github.com/dotnet/coreclr/commit/
f3c874c60032a1e065c96187b4dd056ddbde51d4
William Godbe [Mon, 29 Feb 2016 18:23:23 +0000 (10:23 -0800)]
Merge pull request dotnet/coreclr#3328 from wtgodbe/centos
Enable checked CentOS pri 1 build & test jobs per-commit in CI
Commit migrated from https://github.com/dotnet/coreclr/commit/
02a59396ec4271eced2b4c7c93380ff64b35ddf1
William Godbe [Tue, 23 Feb 2016 19:52:19 +0000 (11:52 -0800)]
Enable checked CentOS pri 1 build & test jobs per-commit in CI
Commit migrated from https://github.com/dotnet/coreclr/commit/
9ff62096f5a1e79ced505c2def9309641392ed7a
Rahul Kumar [Mon, 29 Feb 2016 18:01:04 +0000 (10:01 -0800)]
Fixes issue dotnet/coreclr#2643 and dotnet/coreclr#2731
Commit migrated from https://github.com/dotnet/coreclr/commit/
bc27b37c381c842b153f1d1777f2903a3ea2a9ac
Pat Gavlin [Mon, 29 Feb 2016 17:57:25 +0000 (09:57 -0800)]
Merge pull request dotnet/coreclr#3399 from pgavlin/Disable374539
Move devdiv374539 out of test priority 0.
Commit migrated from https://github.com/dotnet/coreclr/commit/
50aa063e74a277a576122ca824d062e12ae3af26
Pat Gavlin [Fri, 26 Feb 2016 19:17:03 +0000 (11:17 -0800)]
Refactor the pooled ArenaAllocator.
The mark/release functionality on `ArenaAllocator` was only being used by the pooled
allocator, and caused some complications in API and implementation. Instead of
providing this functionality on all allocators, refactor this functionality out of
`ArenaAllocator` and into a new subclass, `PooledAllocator`, that provides the
singleton pooled allocator.
A number of additional usability/reliability changes have been enabled as part of this
change:
- `ArenaAllocator::initialize` has been replaced with move assignment
- Asserts have been added on all relevant instance methods to ensure that
`ArenaAllocator` values are initialized before use
- `ArenaAllocator::returnPooledAllocator` has been replaced by making
`ArenaAllocator::destroy` virtual and having `PooledAllocator::destroy` return the
singleton
- The teardown of the pooled allocator is now thread-safe w.r.t. the shutdown of the
arena allocator subsystem
Commit migrated from https://github.com/dotnet/coreclr/commit/
688e7869d18be350f3e32b6a6bd8f347d722b3dd
Kyungwoo Lee [Mon, 29 Feb 2016 16:18:33 +0000 (08:18 -0800)]
ARM64: Fix for pow test
This skips Pow(Double.Epsilon,1) test for ARM64 same as ARM.
Commit migrated from https://github.com/dotnet/coreclr/commit/
7f4ad09a94ceab16ff3c0b4e4455d19c890633e3
Gaurav Khanna [Mon, 29 Feb 2016 03:42:52 +0000 (19:42 -0800)]
Merge pull request dotnet/coreclr#3423 from gkhanna79/ExtendNugetPkgSupport
Generate CoreCLR Nuget Package for CentOS, Debian and RHEL
Commit migrated from https://github.com/dotnet/coreclr/commit/
8b687145c7806d43ed3ad19b95e13dabaa31df73
Matt Ellis [Mon, 29 Feb 2016 02:43:19 +0000 (18:43 -0800)]
Merge pull request dotnet/coreclr#3424 from dotnet-bot/from-tfs
Merge changes from TFS
Commit migrated from https://github.com/dotnet/coreclr/commit/
f23c602bc78796baf7358b3ff5789ef7360dd2dd
Matt Ellis [Mon, 29 Feb 2016 01:40:42 +0000 (17:40 -0800)]
Add missing .gitmirror file.
[tfs-changeset: 1579610]
Commit migrated from https://github.com/dotnet/coreclr/commit/
c16f415fa11a1e233dcc57e6e37fa3ac9262bec7
Stephen Toub [Sun, 28 Feb 2016 23:46:10 +0000 (18:46 -0500)]
Merge pull request dotnet/coreclr#3418 from krytarowski/netbsd-support-58
Add netbsdmscorlib to build.cmd
Commit migrated from https://github.com/dotnet/coreclr/commit/
cd377565b896fe3323f319c3ceaea2d82edc608f
Rahul Kumar [Sun, 28 Feb 2016 23:40:16 +0000 (15:40 -0800)]
Merge pull request dotnet/coreclr#3387 from rahku/Helix
Helix test: remove hack to copy currently built runtime.
Commit migrated from https://github.com/dotnet/coreclr/commit/
bdef6f7cedb50988ab8d90a076c4284350dd0d67
Rahul Kumar [Fri, 26 Feb 2016 01:13:49 +0000 (17:13 -0800)]
remove hack to copy currently built runtime.
Instead add dependency to currently built runtime package
Commit migrated from https://github.com/dotnet/coreclr/commit/
d39c8a145ced54a4ffdcec75180e7e843ab85760
Gaurav Khanna [Sun, 28 Feb 2016 17:38:18 +0000 (09:38 -0800)]
Generate CoreCLR Nuget Package for CentOS, Debian and RHEL
Commit migrated from https://github.com/dotnet/coreclr/commit/
a20e204df9111cddab6246b1ba17fa34fb61bce2
Rahul Kumar [Sun, 28 Feb 2016 16:16:24 +0000 (08:16 -0800)]
Merge pull request dotnet/coreclr#3402 from rahku/fixBbuil
fix warning C4334
Commit migrated from https://github.com/dotnet/coreclr/commit/
65bc50c6fa07750154ab3aa2adeef811bfb2d948
Jan Kotas [Sun, 28 Feb 2016 06:17:46 +0000 (22:17 -0800)]
Merge pull request dotnet/coreclr#3410 from jkotas/license
Update license header
Commit migrated from https://github.com/dotnet/coreclr/commit/
26003bc83f793412a16f7f53e16640efc06e2640
Jan Kotas [Sat, 27 Feb 2016 23:44:21 +0000 (15:44 -0800)]
Merge pull request dotnet/coreclr#3415 from krytarowski/netbsd-support-57
Fix build on NetBSD: Include <stdarg.h> for va_arg(3)
Commit migrated from https://github.com/dotnet/coreclr/commit/
4245b685acab77bd8b60f197f9db3c2def441b5a
Kamil Rytarowski [Sat, 27 Feb 2016 22:42:42 +0000 (23:42 +0100)]
Add netbsdmscorlib to build.cmd
Commit migrated from https://github.com/dotnet/coreclr/commit/
9dbc7618d427491a7542cb5bf1df422ca5391cc6
Aditya Mandaleeka [Sat, 27 Feb 2016 22:34:51 +0000 (14:34 -0800)]
Merge pull request dotnet/coreclr#3140 from adityamandaleeka/env_pal
Fix usage of environment in PAL
Commit migrated from https://github.com/dotnet/coreclr/commit/
70f034a8ee1ec9bd5532663ec54e3f885eea692d
Kamil Rytarowski [Sat, 27 Feb 2016 21:19:11 +0000 (22:19 +0100)]
Fix build on NetBSD: Include <stdarg.h> for va_arg(3)
STDARG(3) Library Functions Manual STDARG(3)
NAME
stdarg, va_arg, va_copy, va_end, va_start - variable argument lists
SYNOPSIS
#include <stdarg.h>
void
va_start(va_list ap, last);
type
va_arg(va_list ap, type);
void
va_copy(va_list dest, va_list src);
void
va_end(va_list ap);
NetBSD 7.99 June 14, 2015 NetBSD 7.99
Commit migrated from https://github.com/dotnet/coreclr/commit/
35c78b974239034a21d58fcad357f3d7b10c5ff4
Aditya Mandaleeka [Sat, 27 Feb 2016 21:12:17 +0000 (13:12 -0800)]
Merge pull request dotnet/coreclr#3261 from krytarowski/netbsd-support-51
Fix NetBSD build: Define PAL_STDCPP_COMPAT=1 for twowaypipe.cpp
Commit migrated from https://github.com/dotnet/coreclr/commit/
beccdbf19acba2cbc69dfe4e5c4abdb5173c339e
Aditya Mandaleeka [Fri, 12 Feb 2016 03:08:06 +0000 (19:08 -0800)]
Further cleanup of environment code.
Commit migrated from https://github.com/dotnet/coreclr/commit/
d26de9e1b371ba5598e2e004a4402e5d30d70eff
Jan Kotas [Sat, 27 Feb 2016 16:38:31 +0000 (08:38 -0800)]
Merge pull request dotnet/coreclr#3406 from BruceForstall/RemoveDupGS2
Remove duplicate GS compiler switch setting
Commit migrated from https://github.com/dotnet/coreclr/commit/
d9b36fbcf2b06e9d9add05e9cf4c7c55061f4f03
Jan Kotas [Sat, 27 Feb 2016 16:36:55 +0000 (08:36 -0800)]
Update license header
Commit migrated from https://github.com/dotnet/coreclr/commit/
dd09dd93a6c9cf4dd72f71b780c1bd1c151e602d
Jan Kotas [Sat, 27 Feb 2016 16:33:58 +0000 (08:33 -0800)]
Merge pull request dotnet/coreclr#3395 from dotnet-bot/from-tfs
Merge changes from TFS
Commit migrated from https://github.com/dotnet/coreclr/commit/
be7be85639e952ec3327b520511de21e4dad47d1
Bruce Forstall [Sat, 27 Feb 2016 16:25:50 +0000 (08:25 -0800)]
Merge pull request dotnet/coreclr#3397 from BruceForstall/AddRuntimeInformationReference
Add reference to System.Runtime.InteropServices.RuntimeInformation
Commit migrated from https://github.com/dotnet/coreclr/commit/
39d430f869340d5c3fd81b6e2bc01d574c2a2870
Bruce Forstall [Sat, 27 Feb 2016 16:21:48 +0000 (08:21 -0800)]
Merge pull request dotnet/coreclr#3403 from BruceForstall/FixLinuxStandalone
Add linker magic to non-Windows standalone RyuJIT build
Commit migrated from https://github.com/dotnet/coreclr/commit/
1cfda8d6546ad8b5044037e604817da963686a7d
Jan Kotas [Sat, 27 Feb 2016 16:09:41 +0000 (08:09 -0800)]
Merge pull request dotnet/coreclr#3409 from stephentoub/stop_masking_job_signals
Stop masking SIGTSTP and SIGCONT
Commit migrated from https://github.com/dotnet/coreclr/commit/
876ab1b42e9b489f3fbd0a37fca7559cf91eb836
Pat Gavlin [Sat, 27 Feb 2016 15:52:07 +0000 (07:52 -0800)]
Merge pull request dotnet/coreclr#3407 from mikedn/nra-comments
Update JIT's ArenaAllocator comments
Commit migrated from https://github.com/dotnet/coreclr/commit/
9c960c75fa44e247b31e37e09db056687415d3ff
Stephen Toub [Sat, 27 Feb 2016 13:51:58 +0000 (08:51 -0500)]
Stop masking SIGTSTP and SIGCONT
These are needed for job management, e.g. with SIGTSTP masked, ctrl-z doesn't work to suspend a process, and with SIGCONT masked, when the process is resumed it doesn't get notified.
Commit migrated from https://github.com/dotnet/coreclr/commit/
f7c471478c21bf567dfbf12c99e43bb081ccb1e6
Mike Danes [Sat, 27 Feb 2016 11:34:28 +0000 (13:34 +0200)]
Update JIT's ArenaAllocator comments
A recent allocator refactoring changed function and class names but the old names were still referenced in a comment.
Commit migrated from https://github.com/dotnet/coreclr/commit/
4ef14d7df2345d6c9ca0a4e0c0d762de1f867982
Sean Gillespie [Sat, 27 Feb 2016 06:37:01 +0000 (22:37 -0800)]
Fix license header for test files
Commit migrated from https://github.com/dotnet/coreclr/commit/
3ac97ffe15312ead86cb90220c0f945820abfa2e
Pat Gavlin [Sat, 27 Feb 2016 03:58:34 +0000 (19:58 -0800)]
Merge pull request dotnet/coreclr#3400 from pgavlin/TruncationCleanup
Clean up some truncation warnings in the JIT.
Commit migrated from https://github.com/dotnet/coreclr/commit/
4dcc5e5e307e98811f599c5bdb245e7d13795c82
Mike McLaughlin [Sat, 27 Feb 2016 03:29:35 +0000 (19:29 -0800)]
Merge pull request dotnet/coreclr#3401 from mikem8361/sosdocs
Add the "sosdocsunix.txt" sos help file to the nuget packages.
Commit migrated from https://github.com/dotnet/coreclr/commit/
2916207efaae0dd7800aa69ee4c4f112b72d7fae
Bruce Forstall [Sat, 27 Feb 2016 01:40:23 +0000 (17:40 -0800)]
Add linker magic to non-Windows standalone RyuJIT build to make PAL work better when dynamically loading it.
Commit migrated from https://github.com/dotnet/coreclr/commit/
deb42acb17313457bd9eb7b3c50c3aca06024202
Bruce Forstall [Sat, 27 Feb 2016 03:08:24 +0000 (19:08 -0800)]
Remove duplicate /GS switch
Also, fix a typo.
Commit migrated from https://github.com/dotnet/coreclr/commit/
0582ab0dcc142e84cd16e15623f37ffe76cba24d
Matt Ellis [Sat, 27 Feb 2016 02:22:11 +0000 (18:22 -0800)]
Merge pull request dotnet/coreclr#3398 from mikem8361/fixstrike
Fix sos/strike build.
Commit migrated from https://github.com/dotnet/coreclr/commit/
2effea2c48268a3203e07b035a39ab20fa13fb8f
Brian Sullivan [Sat, 27 Feb 2016 01:59:44 +0000 (17:59 -0800)]
Merge pull request dotnet/coreclr#3390 from briansull/mod-fixes
Fixes GT_MOD codegen and three other issues for ARM64
Commit migrated from https://github.com/dotnet/coreclr/commit/
420d6fa5171df70f38ae44e4920ae9be25668106
Brian Sullivan [Fri, 26 Feb 2016 22:21:51 +0000 (14:21 -0800)]
Fixes GT_MOD codegen and three other issues for ARM64
Fix Issue 3263 - Incorrect codegen for rem.un - Unisgned Remainder
Fix Issue 3317 - Improve the codegen for divide so that we omit checks when we have a constant divisor
Fix Issue 3326 - assert EA_4BYTE or EA_8BYTE
Fix an assert when using alloca with allocation between 65 and 4095 bytes
Also fixed the name for GT_UDIV and GT_UDIV to contain a "un-" prefix.
Added 10 additional passing tests with tag REL_PASS
Commit migrated from https://github.com/dotnet/coreclr/commit/
57fcdf4b6982322dd1fe76dd41bd07a545f74985
Rahul Kumar [Sat, 27 Feb 2016 00:42:48 +0000 (16:42 -0800)]
fix warning C4334
Commit migrated from https://github.com/dotnet/coreclr/commit/
fde7b2cd22a8c67ecf145e8602a132baa9a70156
Mike McLaughlin [Sat, 27 Feb 2016 01:15:13 +0000 (17:15 -0800)]
Add the "sosdocsunix.txt" sos help file to the nuget packages.
This allows the sos help command to work when installed from our packages.
Commit migrated from https://github.com/dotnet/coreclr/commit/
e5678e05128ac84347109cb1528452ee3628ab4b