platform/upstream/coreclr.git
8 years agoMerge pull request #5614 from adityamandaleeka/debian_84_badges
Aditya Mandaleeka [Wed, 8 Jun 2016 21:59:21 +0000 (14:59 -0700)]
Merge pull request #5614 from adityamandaleeka/debian_84_badges

Update Debian build status badges/links to 8.4

8 years agoUpdate Debian build status badges/links to 8.4.
Aditya Mandaleeka [Wed, 8 Jun 2016 21:49:27 +0000 (14:49 -0700)]
Update Debian build status badges/links to 8.4.

8 years agoFix error in RemoveDuplicateAssemblies task for perf (#5605)
Deepak Shankargouda [Wed, 8 Jun 2016 21:39:31 +0000 (14:39 -0700)]
Fix error in RemoveDuplicateAssemblies task for perf (#5605)

8 years agoMerge pull request #5586 from adityamandaleeka/osx_strip_debug
Aditya Mandaleeka [Wed, 8 Jun 2016 20:06:42 +0000 (13:06 -0700)]
Merge pull request #5586 from adityamandaleeka/osx_strip_debug

Strip debugging symbol table entries on OS X Release builds

8 years agoMerge pull request #5604 from rahku/CiFix
Kyungwoo Lee [Wed, 8 Jun 2016 18:39:03 +0000 (11:39 -0700)]
Merge pull request #5604 from rahku/CiFix

temporarily disable R2R tests for arm64

8 years agoMerge pull request #5495 from lemmaa/disable-nyi-features
Rahul Kumar [Wed, 8 Jun 2016 17:35:04 +0000 (10:35 -0700)]
Merge pull request #5495 from lemmaa/disable-nyi-features

[ARM64/Linux] Disable not yet implemented features.

8 years agoMerge pull request #5361 from wateret/fix-hfa-armsoftfp
Brian Sullivan [Wed, 8 Jun 2016 17:32:57 +0000 (10:32 -0700)]
Merge pull request #5361 from wateret/fix-hfa-armsoftfp

[ARM/Linux] Fix arm-softfp calling convention

8 years agotemporarily disable R2R tests for arm64
Rahul Kumar [Wed, 8 Jun 2016 17:16:51 +0000 (10:16 -0700)]
temporarily disable R2R tests for arm64

8 years agoMerge pull request #5426 from CarolEidt/IsOne
Carol Eidt [Wed, 8 Jun 2016 14:04:51 +0000 (07:04 -0700)]
Merge pull request #5426 from CarolEidt/IsOne

Add methods to check for integer constants one and minus one

8 years agoMerge pull request #5597 from dotnet-bot/from-tfs
Jan Kotas [Wed, 8 Jun 2016 07:26:47 +0000 (00:26 -0700)]
Merge pull request #5597 from dotnet-bot/from-tfs

Merge changes from TFS

8 years agoLinux/ARM: Revert -O1 to -O3 for Linux/ARM Release Build. (#5598)
Geunsik Lim [Wed, 8 Jun 2016 07:25:58 +0000 (16:25 +0900)]
Linux/ARM: Revert -O1 to -O3 for Linux/ARM Release Build. (#5598)

We have completed the bug fix of llvm in order to support thread-local
storage(TLS) via  __thread variable with -O3 optimization level of clang.
Let's enable the -O3 optimization level of clange for release build
on Linux/ARM.

Signed-off-by: Geunsik Lim <geunsik.lim@samsung.com>
8 years agoFixing perf runs on helix (#5102)
Deepak Shankargouda [Wed, 8 Jun 2016 06:28:13 +0000 (23:28 -0700)]
Fixing perf runs on helix (#5102)

* Fixing issue with perf targets restoring test runtime

* Fixing perf runs on helix

8 years agoMerge pull request #5587 from dotnet-bot/from-tfs
Jan Kotas [Wed, 8 Jun 2016 05:27:15 +0000 (22:27 -0700)]
Merge pull request #5587 from dotnet-bot/from-tfs

Merge changes from TFS

8 years agoFix build issue http://buildstatus/Issues/Issues.aspx?iid=802303
Gaurav Khanna [Wed, 8 Jun 2016 04:57:56 +0000 (21:57 -0700)]
Fix build issue buildstatus/Issues/Issues.aspx?iid=802303

Ready2Run opt-out should be under #ifdef since closed Arm64 build does not compile with Ready2Run enabled.

[tfs-changeset: 1611275]

8 years agoMerge pull request #5581 from AndyAyersMS/InlineReplayNoForceInline
Andy Ayers [Wed, 8 Jun 2016 04:00:23 +0000 (21:00 -0700)]
Merge pull request #5581 from AndyAyersMS/InlineReplayNoForceInline

Inliner: allow replay log to override force inlines

8 years agoFix backwards compatibility bug: RC2 dbgshim debugging RTM runtime (#5593)
Mike McLaughlin [Wed, 8 Jun 2016 03:39:31 +0000 (20:39 -0700)]
Fix backwards compatibility bug: RC2 dbgshim debugging RTM runtime (#5593)

8 years agoMerge pull request #5543 from briansull/feature-x8-refbuf
Brian Sullivan [Wed, 8 Jun 2016 01:51:00 +0000 (18:51 -0700)]
Merge pull request #5543 from briansull/feature-x8-refbuf

ARM64: ABI - Support for using register x8 as the return buffer argument for structs

8 years agoMerge pull request #5547 from schellap/master
Senthil [Wed, 8 Jun 2016 01:50:43 +0000 (18:50 -0700)]
Merge pull request #5547 from schellap/master

Fix packaging attributes

8 years agoASP.NET 5 -> Core (#5591)
James Ko [Wed, 8 Jun 2016 01:41:28 +0000 (21:41 -0400)]
ASP.NET 5 -> Core (#5591)

8 years agoUpdates tryrun.cmake for ARM64 cross build (#5406)
Sung-Jae Lee [Wed, 8 Jun 2016 01:40:53 +0000 (10:40 +0900)]
Updates tryrun.cmake for ARM64 cross build (#5406)

8 years ago[ARM64/Linux] Disable not yet implemented features.
Sung-Jae Lee [Sat, 4 Jun 2016 16:19:56 +0000 (01:19 +0900)]
[ARM64/Linux] Disable not yet implemented features.

This patch temporary disables NYIs of SOS for ARM64 architecture.

8 years agoMethods to check for integer constants and zero
Carol Eidt [Thu, 2 Jun 2016 21:01:38 +0000 (14:01 -0700)]
Methods to check for integer constants and zero

These are primarily motivated by simplifying the RyuJIT tutorial,
but also make the existing code a bit cleaner.

8 years agoMerge pull request #5534 from swgillespie/weak-reference-get-generation
Sean Gillespie [Tue, 7 Jun 2016 23:33:37 +0000 (16:33 -0700)]
Merge pull request #5534 from swgillespie/weak-reference-get-generation

Disable two tests that rely on an API not exposed on coreclr

8 years agoMerge pull request #5573 from dotnet-bot/from-tfs
Matt Ellis [Tue, 7 Jun 2016 23:06:37 +0000 (16:06 -0700)]
Merge pull request #5573 from dotnet-bot/from-tfs

Merge changes from TFS

8 years agoStrip debugging symbol table entries on OS X Release builds.
Aditya Mandaleeka [Tue, 7 Jun 2016 23:01:32 +0000 (16:01 -0700)]
Strip debugging symbol table entries on OS X Release builds.

8 years agoMerge pull request #5577 from kyulee1/r2rci
Kyungwoo Lee [Tue, 7 Jun 2016 23:00:34 +0000 (16:00 -0700)]
Merge pull request #5577 from kyulee1/r2rci

ARM64: Support R2R Private Run in CI

8 years agoARM64: ABI - Support for using register x8 as the return buffer argument for structs
Brian Sullivan [Mon, 6 Jun 2016 23:25:26 +0000 (16:25 -0700)]
ARM64: ABI - Support for using register x8 as the return buffer argument for structs

This is feature complete and fixes #4949 but is being checked in disabled as it has dependencies
on some additional work in the VM #4950 (saving and restoring register x8 in thePrestub, etc..)

In target.h
Added defines on ARM64 for the additional argument register used to pass the return buffer
This is register x8 and when it used it is considered the 9th argiment with an arg num of 8 (zero based)
Added new method hasFixedRetBuffReg() that will return true on ARM64 (when this feature is fully enabled)
Added new method theFixedRetBuffReg() that returns register REG_R8 (x8) for ARM64
Added new method theFixedRetBuffArgNum that returns RET_BUFF_ARGNUM (8) for ARM64
Updated isValidIntArgReg to allow for a fixed return buff register

In codegencommon.cpp:
Increase the static size of regArgTab[] by one for the integer registers
This allows us to optionally support having a fixed return buffer registers
We now track the maximum index into regArgTab[] using argMax which is
either the old value of  regState->rsCalleeRegArgCount or thefixedRetBufArgNum()
Corrected the emitAttr size value for 64-bit targets to use EA_PTRSIZE instead of EA_4BYTE

In codegeninterface.cpp: (and other places)
Renamed rsCalleeRegNum to be rsCalleeRegArgCount to better reflect what it represents

In compiler.hpp
Updated genMapIntRegArgNumToRegNum and genMapIntRegNumToRegArgNum to handle
the fixed return buffer register for ARM64

In lclvars.cpp
Updated lvaInitRetBuffArg to handle the fixed return buffer register for ARM64

In morph.cpp
Updated fgMorphArgs to properly handle the fixed return buffer register for ARM64

In regalloc.cpp
Updated the assert check raUpdateRegStateForArg to allow for the fixed return buffer register for ARM64

Updated with changes from code review feedback

8 years agoARM64: Support R2R Private Run in CI
Kyungwoo Lee [Tue, 7 Jun 2016 21:21:52 +0000 (14:21 -0700)]
ARM64: Support R2R Private Run in CI

8 years agoMerge pull request #5574 from wtgodbe/debian
William Godbe [Tue, 7 Jun 2016 22:41:24 +0000 (15:41 -0700)]
Merge pull request #5574 from wtgodbe/debian

Update Debian 8.2 to 8.4 to match coreFX

8 years agoFix project and release notes URL to 1.1.0
Senthil [Tue, 7 Jun 2016 00:45:12 +0000 (17:45 -0700)]
Fix project and release notes URL to 1.1.0

8 years agoMerge pull request #5576 from ericstj/serviceable
Eric StJohn [Tue, 7 Jun 2016 22:15:40 +0000 (15:15 -0700)]
Merge pull request #5576 from ericstj/serviceable

[master] Update buildtools to add Serviceable to nupkgs

8 years agoInliner: allow replay log to override force inlines
Andy Ayers [Tue, 7 Jun 2016 22:09:16 +0000 (15:09 -0700)]
Inliner: allow replay log to override force inlines

ReplayPolicy only impacts discretionary inlines, so could not control
force inline candidates. This has lead to some confusion during inline
studies.

Since most cases of force inline are performance related, allow replay
to override and control these force inline candidates.

This might be useful down the road to study how likely it is that a force
inline directive is either unnecessary or perhaps even detremental to
performance.

8 years agoUpdate VS dependency details (#5578)
Gaurav Khanna [Tue, 7 Jun 2016 21:41:53 +0000 (14:41 -0700)]
Update VS dependency details (#5578)

8 years agoDisable two tests that rely on an API not exposed on coreclr
Sean Gillespie [Mon, 6 Jun 2016 22:20:20 +0000 (15:20 -0700)]
Disable two tests that rely on an API not exposed on coreclr

8 years agoUpdate buildtools to add Serviceable to nupkgs
Eric St. John [Tue, 7 Jun 2016 21:18:50 +0000 (14:18 -0700)]
Update buildtools to add Serviceable to nupkgs

8 years agoUpdate the way the type forwarders are build to make sure they are correctly included...
Alex Ghiondea [Tue, 7 Jun 2016 21:16:01 +0000 (14:16 -0700)]
Update the way the type forwarders are build to make sure they are correctly included in the build

[tfs-changeset: 1611158]

8 years agoUpdate Debian 8.2 to 8.4 to match coreFX
wtgodbe [Tue, 7 Jun 2016 21:07:19 +0000 (14:07 -0700)]
Update Debian 8.2 to 8.4 to match coreFX

8 years agoAdd back internal Array ctor
Jan Kotas [Tue, 7 Jun 2016 20:26:28 +0000 (13:26 -0700)]
Add back internal Array ctor

[tfs-changeset: 1611139]

8 years agoUpdate first-class-structs.md
Carol Eidt [Tue, 7 Jun 2016 20:26:18 +0000 (13:26 -0700)]
Update first-class-structs.md

Add a link to Issue #5556, and correct some formatting issues.

8 years agoMerge pull request #5525 from pgavlin/gh5484
Pat Gavlin [Tue, 7 Jun 2016 17:35:51 +0000 (17:35 +0000)]
Merge pull request #5525 from pgavlin/gh5484

Skip reloads and copies in `gcIsWriteBarrierCandidate`.

8 years agoMerge pull request #5554 from yizhang82/rtlzeromemory-fix
Gaurav Khanna [Tue, 7 Jun 2016 17:28:16 +0000 (10:28 -0700)]
Merge pull request #5554 from yizhang82/rtlzeromemory-fix

Use Ntdll!RtlZeroMemory instead of kernel32!RtlZeroMemory to support NanoServer

8 years agoMerge pull request #5533 from wtgodbe/groovyFXFix
William Godbe [Tue, 7 Jun 2016 17:23:05 +0000 (10:23 -0700)]
Merge pull request #5533 from wtgodbe/groovyFXFix

Copy linux builds from the right place

8 years agoMerge pull request #5480 from rahku/arm64EnableR2R
Rahul Kumar [Tue, 7 Jun 2016 16:59:09 +0000 (09:59 -0700)]
Merge pull request #5480 from rahku/arm64EnableR2R

ARM64: R2R - Implement CreateDictionaryLookupHelper stub

8 years agoFix for issue 3146: dotnet build is slower on Linux than Windows (#5524)
Fadi Hanna [Tue, 7 Jun 2016 16:32:01 +0000 (09:32 -0700)]
Fix for issue 3146: dotnet build is slower on Linux than Windows (#5524)

Fixing the loader logic on Unix to mimic the behavior on Windows,
in order to be able to successfully load and use R2R images on
Unix where the file extension does not have the ".ni." portion.

8 years agoUse cached empty arrays for "".ToCharArray (#5504)
James Ko [Tue, 7 Jun 2016 16:26:39 +0000 (12:26 -0400)]
Use cached empty arrays for "".ToCharArray (#5504)

8 years agoUpdate GC from CoreRT (#5522)
Jan Kotas [Tue, 7 Jun 2016 16:26:19 +0000 (09:26 -0700)]
Update GC from CoreRT (#5522)

https://github.com/dotnet/corert/tree/master/src/Native/gc 3bd148c2089a781458b99d787395377a25bd23d0

8 years agoDelegate ABI Test (#5507)
papaslavik [Tue, 7 Jun 2016 16:25:58 +0000 (19:25 +0300)]
Delegate ABI Test (#5507)

Detects issue #5275

8 years agoMerge pull request #5539 from JohnChen0/r2r
John Chen [Tue, 7 Jun 2016 16:10:24 +0000 (09:10 -0700)]
Merge pull request #5539 from JohnChen0/r2r

Add config switch to selectively disable R2R images

8 years agoUpdate wrong newline behavior for callipinvoke tests (#5553)
Jiyoung Giuliana Yun [Tue, 7 Jun 2016 14:10:35 +0000 (23:10 +0900)]
Update wrong newline behavior for callipinvoke tests (#5553)

Signed-off-by: Jiyoung Yun <jy910.yun@samsung.com>
8 years agoDisable HeapDump on Linux if FEATURE_EVENT_TRACE is not set (#5550)
Jonghyun Park [Tue, 7 Jun 2016 13:31:59 +0000 (22:31 +0900)]
Disable HeapDump on Linux if FEATURE_EVENT_TRACE is not set (#5550)

This commit tries to disable heap dump on linux if FEATURE_EVENT_TRACE
is not set in order to fix #5546.

8 years agoFix GC references reporting in tailcalls with helpers on Windows (#5538)
Jan Vorlicek [Tue, 7 Jun 2016 05:52:50 +0000 (07:52 +0200)]
Fix GC references reporting in tailcalls with helpers on Windows (#5538)

This change fixes a problem with reporting a range of exactly 3 continuous
GC references in tailcall with helper. The code was asserting in that case
in debug build and generating incorrect offsets in release build.
The problem was that the offset generation and assert was off by 1. It was
supposed to generate offset of the last reference in the range, but instead
generated offset after the last reference.

8 years agoMerge pull request #5545 from dotnet-bot/from-tfs
Jan Kotas [Tue, 7 Jun 2016 05:47:18 +0000 (22:47 -0700)]
Merge pull request #5545 from dotnet-bot/from-tfs

Merge changes from TFS

8 years agoMerge pull request #5528 from CarolEidt/IsLclVarUpdate
Carol Eidt [Tue, 7 Jun 2016 05:15:36 +0000 (22:15 -0700)]
Merge pull request #5528 from CarolEidt/IsLclVarUpdate

Factor out method to check for a lclVar update tree

8 years agoUse Ntdll!RtlZeroMemory instead of kernel32!RtlZeroMemory to support Nano Server
Yi Zhang [Tue, 7 Jun 2016 03:15:46 +0000 (20:15 -0700)]
Use Ntdll!RtlZeroMemory instead of kernel32!RtlZeroMemory to support Nano Server

8 years agoMerge pull request #5548 from adityamandaleeka/remove_mmap_ignores_hint
Aditya Mandaleeka [Tue, 7 Jun 2016 02:36:31 +0000 (19:36 -0700)]
Merge pull request #5548 from adityamandaleeka/remove_mmap_ignores_hint

Remove MMAP_IGNORES_HINT

8 years agoAdd config switch to selectively disable R2R images
John Chen (CLR) [Mon, 6 Jun 2016 23:00:42 +0000 (16:00 -0700)]
Add config switch to selectively disable R2R images

New config switch ReadyToRunExcludeList can be used to specify a
list of assembly simple names (separated by ';') that cannot use
Ready to Run images.

8 years agoFactor out method to check for a lclVar update tree
Carol Eidt [Mon, 6 Jun 2016 21:24:05 +0000 (14:24 -0700)]
Factor out method to check for a lclVar update tree

This is functionality currently incorporated in optIsLoopIncrTree(),
but which is also useful for the RyuJIT tutorial.

8 years agoRemove MMAP_IGNORES_HINT.
Aditya Mandaleeka [Tue, 7 Jun 2016 01:09:21 +0000 (18:09 -0700)]
Remove MMAP_IGNORES_HINT.

8 years agoIntroduce explicity typeforwards to internal types that are needed by WinRT
Alex Ghiondea [Tue, 7 Jun 2016 00:31:43 +0000 (17:31 -0700)]
Introduce explicity typeforwards to internal types that are needed by WinRT

GenFacades does not correcty create the type forwards for internal types even if there are internalsvisibleto attributes setup.

[tfs-changeset: 1610866]

8 years agoFixed issue #5391 "libsosplugin.so getting an RPATH of /usr/lib/llvm on RHEL" (#5482)
Mike McLaughlin [Mon, 6 Jun 2016 23:14:07 +0000 (16:14 -0700)]
Fixed issue #5391 "libsosplugin.so getting an RPATH of /usr/lib/llvm on RHEL" (#5482)

8 years agoMerge pull request #5452 from seanshpark/fixgccover
Rahul Kumar [Mon, 6 Jun 2016 22:29:46 +0000 (15:29 -0700)]
Merge pull request #5452 from seanshpark/fixgccover

ARM64/Linux: fix compile error 'cannot be narrowed to type int'

8 years agoCopy linux builds from the right place
wtgodbe [Mon, 6 Jun 2016 22:18:23 +0000 (15:18 -0700)]
Copy linux builds from the right place

8 years agoARM64: R2R - Implement CreateDictionaryLookupHelper stub
Rahul Kumar [Fri, 3 Jun 2016 20:30:04 +0000 (13:30 -0700)]
ARM64: R2R - Implement CreateDictionaryLookupHelper stub

8 years agoMerge pull request #5529 from brianrob/spellcheck
Brian Robbins [Mon, 6 Jun 2016 22:01:49 +0000 (15:01 -0700)]
Merge pull request #5529 from brianrob/spellcheck

Fix Incorrect URLs in Linux Tracing HOWTO

8 years agoAdd doc on how to building lldb for OS X. (#5520)
Mike McLaughlin [Mon, 6 Jun 2016 21:55:30 +0000 (14:55 -0700)]
Add doc on how to building lldb for OS X. (#5520)

8 years agoFix incorrect URL.
Brian Robbins [Mon, 6 Jun 2016 21:50:11 +0000 (14:50 -0700)]
Fix incorrect URL.

8 years agoSkip reloads and copies in `gcIsWriteBarrierCandidate`.
Pat Gavlin [Mon, 6 Jun 2016 20:07:20 +0000 (13:07 -0700)]
Skip reloads and copies in `gcIsWriteBarrierCandidate`.

The change is actually in `gcWriteBarrierFormFromTargetAddress`. Because copies/reloads
may be placed inside of address-forming trees and because such operations are
transparent w.r.t. the GC-ness of their operand, these nodes should be skipped during
the check for write barriers.

Fixes #5484.

8 years agoMerge pull request #5513 from pgavlin/RemoveOldJITPackaging
Pat Gavlin [Mon, 6 Jun 2016 20:29:54 +0000 (20:29 +0000)]
Merge pull request #5513 from pgavlin/RemoveOldJITPackaging

Remove the deprecated JIT packaging tools.

8 years agoMerge pull request #5512 from pgavlin/ToplevelPrereleaseLabel
Pat Gavlin [Mon, 6 Jun 2016 20:28:47 +0000 (20:28 +0000)]
Merge pull request #5512 from pgavlin/ToplevelPrereleaseLabel

Use top level PreReleaseLabel

8 years agoMerge pull request #5511 from brianrob/linuxperf
Brian Robbins [Mon, 6 Jun 2016 20:03:34 +0000 (13:03 -0700)]
Merge pull request #5511 from brianrob/linuxperf

Add Performance Tracing Documentation for Windows and Linux

8 years agoAdd performance tracing documentation for Windows and Linux.
Brian Robbins [Tue, 31 May 2016 21:59:47 +0000 (14:59 -0700)]
Add performance tracing documentation for Windows and Linux.

8 years agoRemove Mono section from OS X build docs (#5499)
Peter Jas [Mon, 6 Jun 2016 19:56:21 +0000 (22:56 +0300)]
Remove Mono section from  OS X build docs (#5499)

With some minor formatting changes.

8 years agoMerge pull request #5448 from lemmaa/arm64-test-build-3
Rahul Kumar [Mon, 6 Jun 2016 17:49:58 +0000 (10:49 -0700)]
Merge pull request #5448 from lemmaa/arm64-test-build-3

[ARM64/Linux] Fix wrong filename for case sensitive filesystem.

8 years agoRemove the deprecated JIT packaging tools.
Pat Gavlin [Mon, 6 Jun 2016 15:58:39 +0000 (08:58 -0700)]
Remove the deprecated JIT packaging tools.

8 years agoUse top level PreReleaseLabel
Matt Ellis [Sun, 5 Jun 2016 08:38:54 +0000 (01:38 -0700)]
Use top level PreReleaseLabel

Some projects were overriding PreReleaseLabel instead of inheriting the
parent one in the top level dir.props. In addition, some projects had
the value set to 'rc4' instead of 'rc3'.

Clean this up so we always use the label in the root dir.props

8 years ago[ARM64/Linux] Fix 'error: 109 enumeration values not handled in switch' (#5493)
Sung-Jae Lee [Sun, 5 Jun 2016 15:01:58 +0000 (00:01 +0900)]
[ARM64/Linux] Fix 'error: 109 enumeration values not handled in switch' (#5493)

This fixes ARM64 Linux compilation error
```
/home/sjlee/git/coreclr/src/jit/emit.h:988:61: error: 109 enumeration
values not handled in switch: 'IF_NONE', 'IF_LABEL', 'IF_EN9'...
[-Werror,-Wswitch]
```

8 years agoLinux/ARM: Adding rpath for shared library of exception_handling.pal_sxs.test1 (...
Geunsik Lim [Sat, 4 Jun 2016 15:07:05 +0000 (00:07 +0900)]
Linux/ARM: Adding rpath for shared library of exception_handling.pal_sxs.test1 (#5328)

Let's add the 'rpath' in order to fix error happened while
'paltest_pal_sxs_test1' (ELF) of PAL test is loading a shared library.
This 'rpath' statement is derived from the existing files such as
./ToolBox/SOS/Strike/CMakeLists.txt and dlls/mscordbi/CMakeLists.txt.

Ver2:
Apply 'rpath' in case of the Linux platform only

Ver1:
Let's add 'rpath' statement to the Linux platform environment
that we have experienced issue.

Signed-off-by: Geunsik Lim <geunsik.lim@samsung.com>
CC: Mike McLaughlin <mikem@microsoft.com>
8 years agoFix allocation failure handling (#5473)
Jan Vorlicek [Sat, 4 Jun 2016 08:26:48 +0000 (10:26 +0200)]
Fix allocation failure handling (#5473)

While investigating OOM related issues, I have hit two places where we were
not handling correctly the case when memory allocation failed.
In the StackString::OpenStringBuffer, when the Resize failed to allocate
properly sized buffer, we were returning the small internal buffer instead
of NULL. So the caller expected that the full requested size was prepared
and filled it with data, overwriting memory.
In CorUnix::InternalMapViewOfFile, when we have failed to allocate the
PMAPPED_VIEW_LIST to hold information on the mapping, we have unmapped
the memory again, but we have still returned the address of the now
unmapped mapping. The caller, MapViewOfFileEx, then returned this
address to its caller, since it didn't expect the CorUnix::InternalMapViewOfFile
to set its output parameter in the case of failure.

8 years agoFix for #5275 Delegate Invocation On ARM Soft FP (#5362)
papaslavik [Sat, 4 Jun 2016 07:46:15 +0000 (10:46 +0300)]
Fix for #5275 Delegate Invocation On ARM Soft FP (#5362)

8 years agoUpdate new struct versioning rule (#5429)
kingces95 [Sat, 4 Jun 2016 05:07:56 +0000 (22:07 -0700)]
Update new struct versioning rule (#5429)

If I understand this document, any change to a struct that invalidates its layout in other versioning bubbles would be considered a breaking change. I believe this would include adding or removing a field or changing the type of a field in an internal struct if that struct is included as a (possible non-public) field in a public struct; just because a struct is internal doesn't mean it's not subject to the new versioning rule.

8 years agoMerge pull request #5468 from dotnet-bot/from-tfs
Jan Kotas [Sat, 4 Jun 2016 05:04:45 +0000 (22:04 -0700)]
Merge pull request #5468 from dotnet-bot/from-tfs

Merge changes from TFS

8 years agoAdd more opcodes to x86 stack unwinder (#5491)
John Chen [Sat, 4 Jun 2016 05:01:13 +0000 (22:01 -0700)]
Add more opcodes to x86 stack unwinder (#5491)

Add x86 opcodes 0x01 and 0x03 (ADD instruction) to stack unwinder.
These instructions are generated by C++ compiler as part of the
JIT_StaticFieldAddress_Dynamic method, triggering issue #5464.

8 years agoRemove all usages of CONTRACTS_FULL from mscorlib (#5454)
James Ko [Sat, 4 Jun 2016 04:59:49 +0000 (00:59 -0400)]
Remove all usages of CONTRACTS_FULL from mscorlib (#5454)

* Remove CONTRACTS_FULL from Array
* Remove CONTRACTS_FULL from ArraySortHelper
* Remove CONTRACTS_FULL from ICollection
* Remove CONTRACTS_FULL from IDictionary
* Remove CONTRACTS_FULL from IEnumerable
* Remove CONTRACTS_FULL from IList
* Remove CONTRACTS_FULL from IReadOnlyCollection
* Remove CONTRACTS_FULL from IReadOnlyDictionary
* Remove CONTRACTS_FULL from IReadOnlyList
* Remove CONTRACTS_FULL from the nongeneric collections
* Remove CONTRACTS_FULL from IConvertible and IFormattable
* Remove CONTRACTS_FULL from System.IO
* Remove CONTRACTS_FULL from System.Reflection

8 years agoMerge pull request #5486 from jashook/x86_cc_fix
Jarret Shook [Sat, 4 Jun 2016 04:28:56 +0000 (21:28 -0700)]
Merge pull request #5486 from jashook/x86_cc_fix

Use explicit calling convention for coredistools

8 years agoFix encoding of gccover.cpp. (#5458)
Austin Wise [Sat, 4 Jun 2016 01:53:29 +0000 (18:53 -0700)]
Fix encoding of gccover.cpp. (#5458)

This file fails to compile while under codepage 932 (Shift JIS).
This commits removes or replaces the offending chacters with ASCII.

8 years agoAdded JIT_Stelem_Ref helper function for Linux (#5390)
Xiangyang (Mark) Guo [Sat, 4 Jun 2016 01:51:17 +0000 (18:51 -0700)]
Added JIT_Stelem_Ref helper function for Linux (#5390)

8 years agoUse explicit calling convention for coredistools
Jarret Shook [Fri, 3 Jun 2016 23:36:17 +0000 (16:36 -0700)]
Use explicit calling convention for coredistools

coreclr is built with /Gz (stdcall), explicitly use __cdecl calling
convention for calling functions in coredistools

8 years agoFix for issue #5467: [R2R] InvalidCastException in timer tests. (#5478)
Fadi Hanna [Fri, 3 Jun 2016 23:30:37 +0000 (16:30 -0700)]
Fix for issue  #5467: [R2R] InvalidCastException in timer tests. (#5478)

We were not using the correct MethodTable pointer when constructing delegate objects to interface methods

8 years agoLimit exports on debugger modules. (#5442)
Mike McLaughlin [Fri, 3 Jun 2016 21:15:43 +0000 (14:15 -0700)]
Limit exports on debugger modules. (#5442)

Remove obsolete ExecuteAssembly hosting API from coreclr.

Needed to add palrt to dbi instead of trying to export from palrt.

Didn't end up adding the --no-allow-shlib-undefined linker option because Centos
and FreeBSD link with lots of undefined symbols from the C++ runtime libraries.

8 years agoMerge pull request #5462 from pefoley2/uname_p
Aditya Mandaleeka [Fri, 3 Jun 2016 20:13:47 +0000 (13:13 -0700)]
Merge pull request #5462 from pefoley2/uname_p

Properly handle uname -p output that contains spaces

8 years agoMerge pull request #5247 from davmason/master
David Mason [Fri, 3 Jun 2016 19:02:29 +0000 (12:02 -0700)]
Merge pull request #5247 from davmason/master

Enable managed heap dumps on Linux

8 years agoMerge pull request #5382 from davmason/filtering
David Mason [Fri, 3 Jun 2016 19:02:08 +0000 (12:02 -0700)]
Merge pull request #5382 from davmason/filtering

Add filtering logic to XplatEventLogger

8 years agoMerge pull request #5432 from RussKeldorph/fix5428
Russ Keldorph [Fri, 3 Jun 2016 18:47:49 +0000 (11:47 -0700)]
Merge pull request #5432 from RussKeldorph/fix5428

Remove unnecessary dependencies from JIT tests causing R2R failures

8 years agoFix failing tests on Ubuntu R2R configuration (#5435)
Fadi Hanna [Fri, 3 Jun 2016 18:29:54 +0000 (11:29 -0700)]
Fix failing tests on Ubuntu R2R configuration (#5435)

8 years agoFix desktop NGen break caused by CoreCLR change, and add a missing contract
John Chen [Fri, 3 Jun 2016 17:18:37 +0000 (10:18 -0700)]
Fix desktop NGen break caused by CoreCLR change, and add a missing contract

[tfs-changeset: 1610323]

8 years agoMerge pull request #5453 from dotnet-bot/from-tfs
Matt Ellis [Fri, 3 Jun 2016 16:10:15 +0000 (09:10 -0700)]
Merge pull request #5453 from dotnet-bot/from-tfs

Merge changes from TFS

8 years agoMerge pull request #5436 from joperezr/DisableNativeResourceCompileForManagedCode
Jose Perez Rodriguez [Fri, 3 Jun 2016 16:09:15 +0000 (09:09 -0700)]
Merge pull request #5436 from joperezr/DisableNativeResourceCompileForManagedCode

Disabling NativeResourceCompile Target for Managed libraries

8 years agoProperly handle uname -p output that contains spaces
Peter Foley [Fri, 3 Jun 2016 15:11:59 +0000 (11:11 -0400)]
Properly handle uname -p output that contains spaces

e.g. Intel(R) Xeon(R) CPU E5-2603 0 @ 1.80GHz

8 years agoFix readytorun tests asking for user input (#5459)
mkborg [Fri, 3 Jun 2016 14:20:06 +0000 (18:20 +0400)]
Fix readytorun tests asking for user input (#5459)

'readytorun/mainv1' and 'readytorun/mainv2' tests on Linux wait for human
response asking permission to remove write-protected file:

    rm: remove write-protected regular file 'test.dll'?

'rm' command shall be used with '-f' flag to make it non-interactive.

8 years agoFix CFI annotation of AMD64 assembler helpers on Unix (#5446)
Jan Vorlicek [Fri, 3 Jun 2016 10:57:16 +0000 (12:57 +0200)]
Fix CFI annotation of AMD64 assembler helpers on Unix (#5446)

This change fixes annotations of AMD64 assembler helpers on Unix. The helpers that
don't use RBP as a stack frame were missing setting the RSP as a CFA register and
unwinding through them was failing.
This was hit in R2R scenarios, with the DelayLoad_Helper_Obj not being unwindable.