platform/upstream/coreclr.git
8 years agoRemove GTF_DEAD.
Pat Gavlin [Thu, 30 Jun 2016 17:26:05 +0000 (10:26 -0700)]
Remove GTF_DEAD.

This flag was only used by CSE to mark dead trees s.t. these trees
were not considered during CSE replacement. The same information,
however, can be provided by the gtCSEnum field: a tree with this
field set to NO_CSE is treated identically to a tree marked with
GTF_DEAD. The GTF_DEAD flag is therefore redundant and can be
eliminated.

This is part of #5999.

8 years agoMerge pull request #5958 from jashook/disable_timeouts_under_gcstress
Jarret Shook [Thu, 30 Jun 2016 15:41:41 +0000 (08:41 -0700)]
Merge pull request #5958 from jashook/disable_timeouts_under_gcstress

Disable tests that timeout under gcstress

8 years agoFix undefined locals in desktop test builds. (#6073)
Mike McLaughlin [Thu, 30 Jun 2016 05:06:06 +0000 (22:06 -0700)]
Fix undefined locals in desktop test builds. (#6073)

When for desktop out of the ProjectK branch, the previous change left unassigned member variables.  Moved the pragma to include them.

8 years agoMerge pull request #6075 from kyulee1/settime
Kyungwoo Lee [Thu, 30 Jun 2016 03:20:53 +0000 (20:20 -0700)]
Merge pull request #6075 from kyulee1/settime

ARM64: Set timeout per scenario

8 years agoARM64: Set timeout per scenario
Kyungwoo Lee [Thu, 30 Jun 2016 01:26:41 +0000 (18:26 -0700)]
ARM64: Set timeout per scenario

8 years agoMerge pull request #6072 from wtgodbe/archive2
William Godbe [Wed, 29 Jun 2016 21:44:42 +0000 (14:44 -0700)]
Merge pull request #6072 from wtgodbe/archive2

Archive the right artifacts in coverage build

8 years agoArchive the right artifacts in coverage build
wtgodbe [Wed, 29 Jun 2016 21:36:01 +0000 (14:36 -0700)]
Archive the right artifacts in coverage build

8 years agoMerge pull request #6044 from briansull/split-lvIsMultiRegArgOrRet
Brian Sullivan [Wed, 29 Jun 2016 20:46:55 +0000 (13:46 -0700)]
Merge pull request #6044 from briansull/split-lvIsMultiRegArgOrRet

Split the lvIsMultiiRegArgOrRet into two bits

8 years agoMerge pull request #6041 from adityamandaleeka/fix_strip_logic
Aditya Mandaleeka [Wed, 29 Jun 2016 19:50:06 +0000 (12:50 -0700)]
Merge pull request #6041 from adityamandaleeka/fix_strip_logic

Fix platform logic in symbol stripping code

8 years agoMerge pull request #6070 from wtgodbe/sign
William Godbe [Wed, 29 Jun 2016 19:20:16 +0000 (12:20 -0700)]
Merge pull request #6070 from wtgodbe/sign

Only sign non-arm64 binaries

8 years agoMerge pull request #6069 from dotnet-bot/from-tfs
Andy Ayers [Wed, 29 Jun 2016 19:12:07 +0000 (12:12 -0700)]
Merge pull request #6069 from dotnet-bot/from-tfs

Merge changes from TFS

8 years agoOnly sign non-arm64 binaries
wtgodbe [Wed, 29 Jun 2016 18:14:53 +0000 (11:14 -0700)]
Only sign non-arm64 binaries

8 years agoSplit the lvIsMultiRegArgOrRet into two bits
Brian Sullivan [Wed, 29 Jun 2016 00:32:33 +0000 (17:32 -0700)]
Split the lvIsMultiRegArgOrRet into two bits

Currently for all targets that have MultiReg return LclVars we require that they not be struct promoted.
But on ARM64 we do allow for MultiReg #argument LclVars to be struct promoted.
Thus we have to disentagle this value into two distinct bool values to implement MultiReg returns for Arm64.

8 years agoDisable tests that timeout under gcstress
jashoo [Wed, 29 Jun 2016 17:32:41 +0000 (10:32 -0700)]
Disable tests that timeout under gcstress

After increasing the timeout time for gcstress, these tests continue to fail
due to timeouts. To get the gcstress legs green and keep them within a manageable
amount of time they will be disabled.

8 years agoHave the jit capture the SuperPMI method index for use in correlating outputs from...
Andy Ayers [Wed, 29 Jun 2016 17:22:43 +0000 (10:22 -0700)]
Have the jit capture the SuperPMI method index for use in correlating outputs from different runs.

Useful for matching SPMI outputs in cases where jit changes cause differential replay failures so lining up results side-by-side doesn't work.

If the jit is not hosted under SPMI, the index will report as zero.

[tfs-changeset: 1615278]

8 years agoFix building on desktop bug #234633. (#6045)
Mike McLaughlin [Wed, 29 Jun 2016 15:52:57 +0000 (08:52 -0700)]
Fix building on desktop bug #234633. (#6045)

ifdef the references to System.Diagnostic.StackFrame.

8 years agoMerge pull request #6054 from kyulee1/gcjob
Kyungwoo Lee [Wed, 29 Jun 2016 15:51:07 +0000 (08:51 -0700)]
Merge pull request #6054 from kyulee1/gcjob

ARM64: Enable a gcstress private job

8 years agoMerge pull request #6040 from rahku/arm64retbuf
Kyungwoo Lee [Wed, 29 Jun 2016 15:30:27 +0000 (08:30 -0700)]
Merge pull request #6040 from rahku/arm64retbuf

ARM64: update tests.lst

8 years agoMerge pull request #6000 from gkhanna79/Arm64Nuget
Gaurav Khanna [Wed, 29 Jun 2016 15:25:26 +0000 (08:25 -0700)]
Merge pull request #6000 from gkhanna79/Arm64Nuget

Generate nuget packages for Arm64 build

8 years agoARM64: Enable a gcstress private job
Kyungwoo Lee [Wed, 29 Jun 2016 15:20:10 +0000 (08:20 -0700)]
ARM64: Enable a gcstress private job

8 years agoMerge pull request #6049 from dotnet-bot/UpdateDependencies20160629051946
Gaurav Khanna [Wed, 29 Jun 2016 15:16:48 +0000 (08:16 -0700)]
Merge pull request #6049 from dotnet-bot/UpdateDependencies20160629051946

Updating External dependencies to beta-24229-00

8 years agoMerge pull request #6053 from kyulee1/ilrtrel
Kyungwoo Lee [Wed, 29 Jun 2016 14:52:37 +0000 (07:52 -0700)]
Merge pull request #6053 from kyulee1/ilrtrel

Relase build only for ilasm round trip tests in CI

8 years agoRelase build only for ilasm round trip tests in CI
Kyungwoo Lee [Wed, 29 Jun 2016 14:41:41 +0000 (07:41 -0700)]
Relase build only for ilasm round trip tests in CI

This eliminates spurious job display in Jenkins web which is unnecessary.

8 years agoMerge pull request #5950 from wateret/fix-5949
Kyungwoo Lee [Wed, 29 Jun 2016 13:43:15 +0000 (06:43 -0700)]
Merge pull request #5950 from wateret/fix-5949

[ARM/Linux] Disable unittest `_il_reltypeEqualOp`

8 years agoRemove unittests that contain undefined behaviour
Hanjoung Lee [Wed, 29 Jun 2016 05:55:37 +0000 (14:55 +0900)]
Remove unittests that contain undefined behaviour

Following tests contain undefined behaviour.
(Casting double to an integer type for a value that cannot be represent as the integer type.)

- JIT.Methodical.casts.ilseq._il_reltypeEqualOp._il_reltypeEqualOp
- JIT.Regression.CLR-x86-JIT.V1-M10.b08107

8 years agoUpdating External dependencies to beta-24229-00
dotnet-bot [Wed, 29 Jun 2016 05:19:46 +0000 (05:19 +0000)]
Updating External dependencies to beta-24229-00

8 years agoMerge pull request #6043 from BruceForstall/DisplayPlatformInJitDump
Bruce Forstall [Wed, 29 Jun 2016 03:24:53 +0000 (20:24 -0700)]
Merge pull request #6043 from BruceForstall/DisplayPlatformInJitDump

Display the build platform and architecture in the JitDump

8 years agoDisplay the build platform and architecture in the JitDump
Bruce Forstall [Tue, 28 Jun 2016 23:55:25 +0000 (16:55 -0700)]
Display the build platform and architecture in the JitDump

8 years agoMerge pull request #6038 from BruceForstall/PinvokeFeedbackCleanup
Bruce Forstall [Tue, 28 Jun 2016 23:54:08 +0000 (16:54 -0700)]
Merge pull request #6038 from BruceForstall/PinvokeFeedbackCleanup

Address P/Invoke inlining code review feedback and cleanup

8 years agoMerge pull request #6042 from wtgodbe/archive
William Godbe [Tue, 28 Jun 2016 23:34:19 +0000 (16:34 -0700)]
Merge pull request #6042 from wtgodbe/archive

Archive coverage reports from the right place

8 years agoArchive coverage reports from the right place
wtgodbe [Tue, 28 Jun 2016 23:30:28 +0000 (16:30 -0700)]
Archive coverage reports from the right place

8 years agoMerge pull request #6035 from briansull/fix-5642
Brian Sullivan [Tue, 28 Jun 2016 22:51:05 +0000 (15:51 -0700)]
Merge pull request #6035 from briansull/fix-5642

Fix issue #5642

8 years agoMerge pull request #6036 from briansull/dump-fix-inlining
Brian Sullivan [Tue, 28 Jun 2016 22:41:47 +0000 (15:41 -0700)]
Merge pull request #6036 from briansull/dump-fix-inlining

Do not enable the verbose Jit Dump during the inlining decision phase.

8 years agoFix path to BOTR GC section in gc.cpp (#6039)
Aditya Mandaleeka [Tue, 28 Jun 2016 22:37:25 +0000 (15:37 -0700)]
Fix path to BOTR GC section in gc.cpp (#6039)

8 years agoFix platform logic in symbol stripping code.
Aditya Mandaleeka [Tue, 28 Jun 2016 22:25:11 +0000 (15:25 -0700)]
Fix platform logic in symbol stripping code.

8 years agoupdate arm64 tests.lst
Rahul Kumar [Tue, 28 Jun 2016 22:14:31 +0000 (15:14 -0700)]
update arm64 tests.lst

8 years agoAddress P/Invoke inlining code review feedback and cleanup
Bruce Forstall [Tue, 28 Jun 2016 21:56:50 +0000 (14:56 -0700)]
Address P/Invoke inlining code review feedback and cleanup

Address some code review feedback from #5939. Also, do a little cleanup.
Specifically:
1. Make many GenTreeCall accessors 'const'.
2. HasNonStandardArgs() and GetNonStandardArgCount() are used for a specific purpose in the fast
tailcall implementation. However, the fgMorphArgs() "non-standard args" mechanism is now used for
other purposes, so the names of these didn't match their intent. Also, the logic had decayed compared
to the fgMorphArgs logic it was mimicing. I renamed them to add the word "Added", and wrote some
comments to be more explicit about their use, as well as indicate in fgMorphArgs() that they need
to be kept in sync.
3. Added several GenTreeCall::IsHelperCall() accessors, and replace some code with them.
4. Added RBM_INIT_PINVOKE_FRAME_TRASH define to remove an `#ifdef`.
5. Removed an assert loop in LowerFastTailCall() since it's no longer accurate given the new users of `isNonStandard`.

8 years agoMerge pull request #5978 from rahku/arm64retbuf
Rahul Kumar [Tue, 28 Jun 2016 22:04:33 +0000 (15:04 -0700)]
Merge pull request #5978 from rahku/arm64retbuf

Fix Pinvoke IL Stubs to emit correct return type in signature of call…

8 years agoFix Pinvoke IL Stubs to emit correct return type in signature of calli instruction
Rahul Kumar [Wed, 22 Jun 2016 21:48:37 +0000 (14:48 -0700)]
Fix Pinvoke IL Stubs to emit correct return type in signature of calli instruction

8 years agoDo not enable the verbose Jit Dump during the inlining decision phase.
Brian Sullivan [Tue, 28 Jun 2016 20:35:46 +0000 (13:35 -0700)]
Do not enable the verbose Jit Dump during the inlining decision phase.

8 years agoMerge pull request #6030 from kyulee1/config
Kyungwoo Lee [Tue, 28 Jun 2016 20:30:38 +0000 (13:30 -0700)]
Merge pull request #6030 from kyulee1/config

Fix default optimization setting for System.Private.CoreLib

8 years agoFix issue #5642
Brian Sullivan [Tue, 28 Jun 2016 20:22:11 +0000 (13:22 -0700)]
Fix issue #5642

Only consider hfa types when multireg return is enabled for the target
Update Test.Lst with new passing test

8 years agoFix Windows context to Unix context translation on AMD64 (#6027)
Jan Vorlicek [Tue, 28 Jun 2016 19:34:04 +0000 (21:34 +0200)]
Fix Windows context to Unix context translation on AMD64 (#6027)

There was a bug in the context translation between the Windows context
and Unix context on AMD64 caused by the fact that the Unix context
gregs array contains CS, GS and FS in a single field (REG_CSGSFS) and
the MCREG_SegCs accessor macro was incorrectly written to use the
whole field as CS. So writing the CS into the Unix context also
cleared the GS, FS and the topmost 16 bits described as padding.
This issue was exposed on the Linux kernel >= 4.6.0 where the padding
for some reason was not zero, probably used by the kernel for some
internal purposes.
I have fixed it by changing the accessor to modify only the 16 bits
corresponding to the CS.
I have also changed the code in the inject_activation_handler to
save cycles and not to copy the Windows context back to the Unix one
in case the activation function was not called and so the context
was not possibly changed.

8 years agoMerge pull request #6032 from wtgodbe/coverFix
William Godbe [Tue, 28 Jun 2016 19:08:35 +0000 (12:08 -0700)]
Merge pull request #6032 from wtgodbe/coverFix

Build coreclr as part of flow job in coverage jobs

8 years agoBuild coreclr as part of flow job in coverage jobs
wtgodbe [Tue, 28 Jun 2016 18:58:41 +0000 (11:58 -0700)]
Build coreclr as part of flow job in coverage jobs

8 years agoFix default optimization setting for System.Private.CoreLib
Kyungwoo Lee [Tue, 28 Jun 2016 16:42:59 +0000 (09:42 -0700)]
Fix default optimization setting for System.Private.CoreLib

This disable optimization for System.Private.CoreLib under debug build.

8 years agoPackage native Arm64 crossgen as well.
Gaurav Khanna [Tue, 28 Jun 2016 14:27:19 +0000 (07:27 -0700)]
Package native Arm64 crossgen as well.

8 years agoMerge pull request #6025 from dotnet-bot/UpdateDependencies20160628051939
Gaurav Khanna [Tue, 28 Jun 2016 13:40:29 +0000 (06:40 -0700)]
Merge pull request #6025 from dotnet-bot/UpdateDependencies20160628051939

Updating External dependencies to beta-24228-00

8 years agoFix 'unicode/uchar.h' file not found (#6009)
Manu [Tue, 28 Jun 2016 10:08:51 +0000 (19:08 +0900)]
Fix 'unicode/uchar.h' file not found (#6009)

The latest version of Homebrew does not set up the include path for `icu4c` so we have to force the creation of symbolic links like this is done for OpenSSL.

8 years agoMove intermediate file into intermediate dir (#5981)
MyungJoo Ham [Tue, 28 Jun 2016 07:44:09 +0000 (16:44 +0900)]
Move intermediate file into intermediate dir (#5981)

The intermediate file, cmake.definitions, is moved into
the intermediate directory: bin/obj/OS.Arch.Conf/

The script won't emit error for not having the cmake
results because some systems (Windows) do not use Cmake
and users might use "skipnative".

Fixes #5976

Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
8 years agoUpdating External dependencies to beta-24228-00
dotnet-bot [Tue, 28 Jun 2016 05:19:39 +0000 (05:19 +0000)]
Updating External dependencies to beta-24228-00

8 years agoMerge pull request #6019 from swgillespie/gcsimulator-timeout
Sean Gillespie [Tue, 28 Jun 2016 04:55:20 +0000 (21:55 -0700)]
Merge pull request #6019 from swgillespie/gcsimulator-timeout

Remove one GCSimulator tests that takes way too long

8 years agoMerge pull request #6017 from pgavlin/SIMDBugFixes
Pat Gavlin [Mon, 27 Jun 2016 23:13:14 +0000 (16:13 -0700)]
Merge pull request #6017 from pgavlin/SIMDBugFixes

Fix three SIMD-related bugs.

8 years agoMerge pull request #5992 from prajwal-aithal/devel/arm-ci-script-improv
Jarret Shook [Mon, 27 Jun 2016 23:09:47 +0000 (16:09 -0700)]
Merge pull request #5992 from prajwal-aithal/devel/arm-ci-script-improv

ARM-CI: Improve readability of the ARM CI script

8 years agoRemove one GCSimulator tests that takes way too long
Sean Gillespie [Mon, 27 Jun 2016 22:42:06 +0000 (15:42 -0700)]
Remove one GCSimulator tests that takes way too long

8 years agoAddress PR feedback.
Pat Gavlin [Mon, 27 Jun 2016 21:31:13 +0000 (14:31 -0700)]
Address PR feedback.

- Add comments regarding the legality of a null type handle in
  `gtNewCpObjNode`
- Fix a CC issue in `gtNewTempAssign`

8 years agoFix three SIMD-related bugs.
Pat Gavlin [Mon, 27 Jun 2016 19:46:06 +0000 (12:46 -0700)]
Fix three SIMD-related bugs.

The first two bugs involve SIMD nodes that are created by the JIT
for intermediate SIMD operations. These interediate operations
are not directly represented in metadata) and may therefore use
SIMD types that are not present in metadata. For example, metadata
may only use Vector<T>, but the IR may represent some intermediate
operations using the natural vector type for the target machine.
In these cases, the JIT will not be able to derive a type handle
for the SIMD type, which was causing a couple of issues:
- `gtNewTempAssign` was generating a `GT_ASG` node instead of a
  `GT_COPYBLK` when given trees involving these operations and
  types
- `gtGetStructHandleIfPresent` was returning an invalid type handle
  when dealing with SIMD-typed `GT_IND` nodes

The fix for the former is to check for SIMD-typed trees in
`gtNewTempAssign` and `gtNewCpObjNode`; the fix for the latter is
to check for SIMD-typed trees before checking for the array index
flag on a `GT_IND` in `gtGetStructHandleIfPresent`.

The third bug is that `gtNewTempAssign` was not setting the
`lvSIMDType` flag on local vars after changing their type to a SIMD
type.

8 years agoMerge pull request #6002 from pgavlin/GenTreeDebugFlags
Pat Gavlin [Mon, 27 Jun 2016 18:00:43 +0000 (11:00 -0700)]
Merge pull request #6002 from pgavlin/GenTreeDebugFlags

Refactor debug-only GenTree flags.

8 years agoMerge pull request #5971 from BruceForstall/RefactorTreeNodeInit
Bruce Forstall [Mon, 27 Jun 2016 16:57:34 +0000 (09:57 -0700)]
Merge pull request #5971 from BruceForstall/RefactorTreeNodeInit

Refactor TreeNodeInfoInit(): extract lots of functions

8 years agoAdd `GTF_DEBUG_NONE`.
Pat Gavlin [Mon, 27 Jun 2016 16:21:16 +0000 (09:21 -0700)]
Add `GTF_DEBUG_NONE`.

This is a marker that is used to indicate the absence of debug GenTree
flags.

8 years agoMerge pull request #6007 from dotnet-bot/UpdateDependencies20160627051740
Stephen Toub [Mon, 27 Jun 2016 11:12:04 +0000 (07:12 -0400)]
Merge pull request #6007 from dotnet-bot/UpdateDependencies20160627051740

Updating External dependencies to beta-24227-00

8 years agoUpdating External dependencies to beta-24227-00
dotnet-bot [Mon, 27 Jun 2016 05:17:40 +0000 (05:17 +0000)]
Updating External dependencies to beta-24227-00

8 years agoRename files under src/mscorlib/corefx/System/Globalization to match CoreRT (#6005)
Jan Kotas [Mon, 27 Jun 2016 05:09:11 +0000 (22:09 -0700)]
Rename files under src/mscorlib/corefx/System/Globalization to match CoreRT (#6005)

corefx/System/Globalization was forked from CoreRT originally. Rename the files to match the current CoreRT names.

8 years agoARM-CI: Improve readability of the ARM CI script
Prajwal A N [Fri, 24 Jun 2016 13:46:44 +0000 (22:46 +0900)]
ARM-CI: Improve readability of the ARM CI script

Signed-off-by: Prajwal A N <an.prajwal@samsung.com>
8 years agoMerge pull request #6003 from Clockwork-Muse/master
Tarek Mahmoud Sayed [Sun, 26 Jun 2016 18:34:00 +0000 (11:34 -0700)]
Merge pull request #6003 from Clockwork-Muse/master

Add missing parameter names to BitArray.CopyTo exceptions

8 years agoCopy gtDebugFlags where necessary.
Pat Gavlin [Sun, 26 Jun 2016 15:02:04 +0000 (08:02 -0700)]
Copy gtDebugFlags where necessary.

This also renames `GTF_DEBUG_MORPHED` to `GTF_DEBUG_NODE_MORPHED` for
consitency with the other node-specific debug flags.

8 years agoAdd parameter names to exception.
Stephen A. Imhoff [Sun, 26 Jun 2016 05:35:29 +0000 (14:35 +0900)]
Add parameter names to exception.

8 years agoSwitch from literal parameter names to nameof
Stephen A. Imhoff [Sun, 26 Jun 2016 05:23:54 +0000 (14:23 +0900)]
Switch from literal parameter names to nameof

8 years agoRefactor debug-only GenTree flags.
Pat Gavlin [Sun, 26 Jun 2016 04:07:31 +0000 (21:07 -0700)]
Refactor debug-only GenTree flags.

Move the four debug-only GenTree flags into their own field. This frees
up two bits across both the RyuJIT and the legacy backend.

8 years agoChange to Generate nuget packages for Windows Arm64 builds.
Gaurav Khanna [Fri, 24 Jun 2016 23:43:19 +0000 (16:43 -0700)]
Change to Generate nuget packages for Windows Arm64 builds.

8 years agoMerge pull request #5993 from briansull/fix-5639
Brian Sullivan [Sat, 25 Jun 2016 06:18:36 +0000 (23:18 -0700)]
Merge pull request #5993 from briansull/fix-5639

Fix for issue 5639

8 years agoMerge pull request #5998 from briansull/Update-ReturnTypeDesc
Brian Sullivan [Sat, 25 Jun 2016 06:18:03 +0000 (23:18 -0700)]
Merge pull request #5998 from briansull/Update-ReturnTypeDesc

Incremental work on ReturnTypeDesc for multiReg return support

8 years agoMerge pull request #5985 from ericstj/incrementCoreCLR+Jit
Eric StJohn [Fri, 24 Jun 2016 23:28:35 +0000 (16:28 -0700)]
Merge pull request #5985 from ericstj/incrementCoreCLR+Jit

Update CoreCLR & JIT package versions

8 years agoMerge pull request #5979 from kyulee1/boolfold
Kyungwoo Lee [Fri, 24 Jun 2016 22:06:10 +0000 (15:06 -0700)]
Merge pull request #5979 from kyulee1/boolfold

ARM64: Fix Fold Type For optOptimizeBools

8 years agoUse libc.so as default libc name (#5990)
Peter Jas [Fri, 24 Jun 2016 22:01:11 +0000 (01:01 +0300)]
Use libc.so as default libc name (#5990)

Based on https://github.com/dotnet/coreclr/pull/5727#discussion_r68369439,
it turned out `/lib/libc.musl-x86_64.so.1` was just a symlink in
Alpine Linux to actual lib `/lib/ld-musl-x86_64.so.1`.

This delta makes libc.so as default name for libc and removes all the
detection for musl and FreeBSD from cmake etc.

8 years agoChanges to ReturnTypeDesc support more than two return registers
Brian Sullivan [Thu, 23 Jun 2016 02:37:59 +0000 (19:37 -0700)]
Changes to ReturnTypeDesc support more than two return registers

Changed m_regType into an array
Renamed the Initialize method to InitializeReturnType

8 years agoFix for issue 5639
Brian Sullivan [Fri, 24 Jun 2016 18:24:46 +0000 (11:24 -0700)]
Fix for issue 5639

Added check for hfa type
Update Test.lst removing the appropriate R2R_FAIL tags

8 years agoUpdate supported profiler APIs
noahfalk [Fri, 24 Jun 2016 20:25:11 +0000 (13:25 -0700)]
Update supported profiler APIs

8 years agoARM64: Fix Small Operation For optOptimizeBools
Kyungwoo Lee [Thu, 23 Jun 2016 22:30:08 +0000 (15:30 -0700)]
ARM64: Fix Small Operation For optOptimizeBools

Fixes https://github.com/dotnet/coreclr/issues/5955

When merging two boolean operations (cmp/jmp) in optOptimizeBools, JIT
creates type based on operand type.
There is a case the operand type is bool (1 byte) so JIT creates a tree
that does 1 byte operation which arm64 cannot encode.
The fix is to bail out such case for arm in general.

This passes all 1375 tests in System.Net.Http.Unit.Tests.

8 years agoMerge pull request #5991 from kyulee1/stacklimit
Kyungwoo Lee [Fri, 24 Jun 2016 20:03:23 +0000 (13:03 -0700)]
Merge pull request #5991 from kyulee1/stacklimit

ARM64: Fix StackLimit

8 years agoMerge pull request #5973 from cmckinsey/DevDiv_216571
Chris McKinsey [Fri, 24 Jun 2016 19:05:47 +0000 (12:05 -0700)]
Merge pull request #5973 from cmckinsey/DevDiv_216571

Fix SBCG in value-numbering constant assertprop

8 years agoMerge pull request #5940 from briansull/retbuf-nonstandard
Brian Sullivan [Fri, 24 Jun 2016 18:18:07 +0000 (11:18 -0700)]
Merge pull request #5940 from briansull/retbuf-nonstandard

ARM64: Change the fixed return buffer argument to be handled as a non-standard argument

8 years agoFix SBCG in value-numbering constant assertprop
Chris McKinsey [Tue, 21 Jun 2016 17:59:32 +0000 (10:59 -0700)]
Fix SBCG in value-numbering constant assertprop

Value-numbering can assign the same value number to nodes
of different type as long as they have the same bit-representation.
However when substituting a constant into a tree node of different
type, we want the bit-exact representation and not the same value.
Assertion prop should reinterpret int/float value changes rather
than coercing them.

Add an il test that exposes a bug in assertionprop when doing
value-numbering based constant propagation. A cpblk can be used
to copy a scalar value between differing types but for which there
is no change in bit representation.

8 years agoARM64: Fix StackLimit
Kyungwoo Lee [Fri, 24 Jun 2016 13:31:21 +0000 (06:31 -0700)]
ARM64: Fix StackLimit

Fixes https://github.com/dotnet/coreclr/issues/5640
We often got AV for tests that do a large stack allocations.
The fix is to match stack limt setup same as x64.

8 years agoMerge pull request #5986 from dotnet-bot/UpdateDependencies20160624051958
Gaurav Khanna [Fri, 24 Jun 2016 13:55:32 +0000 (06:55 -0700)]
Merge pull request #5986 from dotnet-bot/UpdateDependencies20160624051958

Updating External dependencies to beta-24224-00

8 years agoFix typo to apply mac build workaround only on OSX (#5988)
Ivan Baravy [Fri, 24 Jun 2016 12:59:51 +0000 (16:59 +0400)]
Fix typo to apply mac build workaround only on OSX (#5988)

/init-tools.sh:72 tries to compare strings like this:
if [ "$OS"=="OSX" ]; then

What it actually does is different to what it looks like:
$ echo $OS
$ if [ "$OS"=="OSX" ]; then echo EQUAL; fi
EQUAL
$ if [ "$OS" == "OSX" ]; then echo EQUAL; fi
$

This commit fixes the typo and makes OSX workaround run on macs only.

8 years agoFix Issue #5542 (#5827)
chunseoklee [Fri, 24 Jun 2016 12:56:55 +0000 (21:56 +0900)]
Fix Issue #5542 (#5827)

On arm32, NullReference exception for interface call is not handled
properly. Especially, when callsite is a virtualstub(dispatch/resolve), AV exception
occurs on indirect cell. Since this stub is not a part of
managed or markedjithelper, exception handler considers this is a native
seg fault.
I added :
(1) FaultingExceptionFrame construction routine for virtualstub
(2) Checking and IP-adjusting routine for VirtualStub

8 years agoUse BIT64 define for 64-bit specific code. (#5987)
MyungJoo Ham [Fri, 24 Jun 2016 12:51:53 +0000 (21:51 +0900)]
Use BIT64 define for 64-bit specific code. (#5987)

Using WIN32/WIN64 for 32/64-bit architecture dependent code confuses
developers especially those who develop coreclr for non-Windows
systems. Therefore, such definitions are modified to BIT64.

Fixes #4737

Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
8 years agoUpdating External dependencies to beta-24224-00
dotnet-bot [Fri, 24 Jun 2016 05:19:58 +0000 (05:19 +0000)]
Updating External dependencies to beta-24224-00

8 years agoUpdate CoreCLR & JIT package versions
Eric St. John [Fri, 24 Jun 2016 04:42:15 +0000 (21:42 -0700)]
Update CoreCLR & JIT package versions

Increment these versions to facilitate stable repack of 1.0.2.

8 years agoMerge pull request #5983 from prajwal-aithal/devel/arm-ci-checked-fix
Jarret Shook [Fri, 24 Jun 2016 03:35:02 +0000 (20:35 -0700)]
Merge pull request #5983 from prajwal-aithal/devel/arm-ci-checked-fix

ARM-CI: Prevent creation of job for Checked configuration (rebased over #5961)

8 years agoMerge pull request #5980 from dotnet-bot/from-tfs
Jan Kotas [Fri, 24 Jun 2016 03:18:16 +0000 (20:18 -0700)]
Merge pull request #5980 from dotnet-bot/from-tfs

Merge changes from TFS

8 years agoARM-CI: Prevent creation of job for Checked configuration
Prajwal A N [Thu, 23 Jun 2016 07:14:18 +0000 (16:14 +0900)]
ARM-CI: Prevent creation of job for Checked configuration

Previously we checked if the configuration being built is either of Debug or Release
after the job had already been created. This resulted in a job being created for
Checked configuration with no commands to execute (for this job).
We prevent the unnecessary creation of job for the Checked configuration by
returning control at the very beginning of the <LinuxARMEmulator, arm, Checked> iteration

Signed-off-by: Prajwal A N <an.prajwal@samsung.com>
8 years agoMerge pull request #5960 from pgavlin/CheckDefPython3
Pat Gavlin [Fri, 24 Jun 2016 02:39:35 +0000 (19:39 -0700)]
Merge pull request #5960 from pgavlin/CheckDefPython3

Make check-definitions compatible with Python 3.

8 years agoMerge pull request #5923 from mikedn/x86-store-lclvar
Chris McKinsey [Fri, 24 Jun 2016 02:18:52 +0000 (19:18 -0700)]
Merge pull request #5923 from mikedn/x86-store-lclvar

Fix statement insertion point in GT_STORE_LCL_VAR decomposition

8 years ago[SOS][Linux] Support of reading local variables from portable PDB (#5897)
Evgeny Pavlov [Fri, 24 Jun 2016 02:00:47 +0000 (06:00 +0400)]
[SOS][Linux] Support of reading local variables from portable PDB (#5897)

* Initial support of reading local variables from portable pdb using System.Diagnostics.Debug.SymbolReader.dll

* Use SysAllocString and SysFreeString for memory management

* Fix coding style after review

8 years agoMerge pull request #5961 from jashook/arm32_ci_ubuntu_cross_fix
Jarret Shook [Fri, 24 Jun 2016 00:46:28 +0000 (17:46 -0700)]
Merge pull request #5961 from jashook/arm32_ci_ubuntu_cross_fix

Seperate the ubuntu-arm build and emulator build

8 years agoUndo accidental change
Jan Kotas [Thu, 23 Jun 2016 23:52:36 +0000 (16:52 -0700)]
Undo accidental change

[tfs-changeset: 1614521]

8 years agoAdd missing contracts
Jan Kotas [Thu, 23 Jun 2016 23:51:31 +0000 (16:51 -0700)]
Add missing contracts

[tfs-changeset: 1614520]

8 years agoSeperate the ubuntu-arm build and emulator build
jashoo [Thu, 23 Jun 2016 17:23:09 +0000 (10:23 -0700)]
Seperate the ubuntu-arm build and emulator build

The name for the arm32 ubuntu cross build and the arm32 emulator build are the same. This
also disables the ubuntu cross build per pr.