Bruce Forstall [Wed, 29 Jun 2016 03:24:53 +0000 (20:24 -0700)]
Merge pull request dotnet/coreclr#6043 from BruceForstall/DisplayPlatformInJitDump
Display the build platform and architecture in the JitDump
Commit migrated from https://github.com/dotnet/coreclr/commit/
b8be92257a96a5fe62ca7282eaa502835e87f95b
Bruce Forstall [Tue, 28 Jun 2016 23:55:25 +0000 (16:55 -0700)]
Display the build platform and architecture in the JitDump
Commit migrated from https://github.com/dotnet/coreclr/commit/
2ef00fae43a7c1917d5860459f4686b3e1049d14
Bruce Forstall [Tue, 28 Jun 2016 23:54:08 +0000 (16:54 -0700)]
Merge pull request dotnet/coreclr#6038 from BruceForstall/PinvokeFeedbackCleanup
Address P/Invoke inlining code review feedback and cleanup
Commit migrated from https://github.com/dotnet/coreclr/commit/
652f1f081416c1ecbc06a29e5448f4fef7e0a4f4
William Godbe [Tue, 28 Jun 2016 23:34:19 +0000 (16:34 -0700)]
Merge pull request dotnet/coreclr#6042 from wtgodbe/archive
Archive coverage reports from the right place
Commit migrated from https://github.com/dotnet/coreclr/commit/
e0a0ee5ac9e3dabdd394d98292ab940dd0051de8
wtgodbe [Tue, 28 Jun 2016 23:30:28 +0000 (16:30 -0700)]
Archive coverage reports from the right place
Commit migrated from https://github.com/dotnet/coreclr/commit/
3887b98f5a14defb53c479ddf5205425593d230f
Brian Sullivan [Tue, 28 Jun 2016 22:51:05 +0000 (15:51 -0700)]
Merge pull request dotnet/coreclr#6035 from briansull/fix-5642
Fix issue dotnet/coreclr#5642
Commit migrated from https://github.com/dotnet/coreclr/commit/
2d2f439cfc05e01a8a22c8d6d1d61ecc41dbb334
Brian Sullivan [Tue, 28 Jun 2016 22:41:47 +0000 (15:41 -0700)]
Merge pull request dotnet/coreclr#6036 from briansull/dump-fix-inlining
Do not enable the verbose Jit Dump during the inlining decision phase.
Commit migrated from https://github.com/dotnet/coreclr/commit/
f08a5b48896a7ead87c510ebbfe9c20a7ed2009d
Aditya Mandaleeka [Tue, 28 Jun 2016 22:37:25 +0000 (15:37 -0700)]
Fix path to BOTR GC section in gc.cpp (dotnet/coreclr#6039)
Commit migrated from https://github.com/dotnet/coreclr/commit/
bbb24f97ea4ab91b731363276d2401d62f3da7cf
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 dotnet/coreclr#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`.
Commit migrated from https://github.com/dotnet/coreclr/commit/
d415a00bd954f7f9306c38c4e4fbfe34ccfa7242
Rahul Kumar [Tue, 28 Jun 2016 22:04:33 +0000 (15:04 -0700)]
Merge pull request dotnet/coreclr#5978 from rahku/arm64retbuf
Fix Pinvoke IL Stubs to emit correct return type in signature of call…
Commit migrated from https://github.com/dotnet/coreclr/commit/
2364d603e7d1357ccc4da6b0761a5a2575511297
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
Commit migrated from https://github.com/dotnet/coreclr/commit/
6d5ef671e0eb35c813955a4532f95e7a03843d35
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.
Commit migrated from https://github.com/dotnet/coreclr/commit/
ad4a5835789f9dfbf82b8d9bdf2dd6b0bccd14ca
Kyungwoo Lee [Tue, 28 Jun 2016 20:30:38 +0000 (13:30 -0700)]
Merge pull request dotnet/coreclr#6030 from kyulee1/config
Fix default optimization setting for System.Private.CoreLib
Commit migrated from https://github.com/dotnet/coreclr/commit/
f33074e520942fe511dc0a7b6e347f1106ae313e
Brian Sullivan [Tue, 28 Jun 2016 20:22:11 +0000 (13:22 -0700)]
Fix issue dotnet/coreclr#5642
Only consider hfa types when multireg return is enabled for the target
Update Test.Lst with new passing test
Commit migrated from https://github.com/dotnet/coreclr/commit/
d27ce13013ee4e2da47956880f9e5037bf8c5ef6
Jan Vorlicek [Tue, 28 Jun 2016 19:34:04 +0000 (21:34 +0200)]
Fix Windows context to Unix context translation on AMD64 (dotnet/coreclr#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.
Commit migrated from https://github.com/dotnet/coreclr/commit/
56ab756b0e9afef24cf9151a4a43f23e8d78de29
William Godbe [Tue, 28 Jun 2016 19:08:35 +0000 (12:08 -0700)]
Merge pull request dotnet/coreclr#6032 from wtgodbe/coverFix
Build coreclr as part of flow job in coverage jobs
Commit migrated from https://github.com/dotnet/coreclr/commit/
795211956bc52ed2687288c20562bea31c459ede
wtgodbe [Tue, 28 Jun 2016 18:58:41 +0000 (11:58 -0700)]
Build coreclr as part of flow job in coverage jobs
Commit migrated from https://github.com/dotnet/coreclr/commit/
d46d4228e91b6a2b87574ed9db14b7a0c473adcc
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.
Commit migrated from https://github.com/dotnet/coreclr/commit/
32e8325ddcb9675a9dfa5ae2611f53a48f1d95be
Gaurav Khanna [Tue, 28 Jun 2016 13:40:29 +0000 (06:40 -0700)]
Merge pull request dotnet/coreclr#6025 from dotnet-bot/UpdateDependencies20160628051939
Updating External dependencies to beta-24228-00
Commit migrated from https://github.com/dotnet/coreclr/commit/
9265318cd11423d011f8ab50b7a505913b848c65
Manu [Tue, 28 Jun 2016 10:08:51 +0000 (19:08 +0900)]
Fix 'unicode/uchar.h' file not found (dotnet/coreclr#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.
Commit migrated from https://github.com/dotnet/coreclr/commit/
95a54252ac963447328e1718a66cce5ef20effa4
MyungJoo Ham [Tue, 28 Jun 2016 07:44:09 +0000 (16:44 +0900)]
Move intermediate file into intermediate dir (dotnet/coreclr#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 dotnet/coreclr#5976
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
5acbced129024a38aec530f1bb9cd85b7568e05a
dotnet-bot [Tue, 28 Jun 2016 05:19:39 +0000 (05:19 +0000)]
Updating External dependencies to beta-24228-00
Commit migrated from https://github.com/dotnet/coreclr/commit/
6cedd351e25f69184f21bfa50b5efc53eca393cc
Sean Gillespie [Tue, 28 Jun 2016 04:55:20 +0000 (21:55 -0700)]
Merge pull request dotnet/coreclr#6019 from swgillespie/gcsimulator-timeout
Remove one GCSimulator tests that takes way too long
Commit migrated from https://github.com/dotnet/coreclr/commit/
4f134e6e5faecfb184ac4859970b556149357e2d
Pat Gavlin [Mon, 27 Jun 2016 23:13:14 +0000 (16:13 -0700)]
Merge pull request dotnet/coreclr#6017 from pgavlin/SIMDBugFixes
Fix three SIMD-related bugs.
Commit migrated from https://github.com/dotnet/coreclr/commit/
53f6348e63f1034344bf60ed26ea5d52abd92601
Jarret Shook [Mon, 27 Jun 2016 23:09:47 +0000 (16:09 -0700)]
Merge pull request dotnet/coreclr#5992 from prajwal-aithal/devel/arm-ci-script-improv
ARM-CI: Improve readability of the ARM CI script
Commit migrated from https://github.com/dotnet/coreclr/commit/
1a0da08687151c0f4812439baaf6025db56277c6
Sean Gillespie [Mon, 27 Jun 2016 22:42:06 +0000 (15:42 -0700)]
Remove one GCSimulator tests that takes way too long
Commit migrated from https://github.com/dotnet/coreclr/commit/
2a6be7ef7e69a93178bc4967dd0b35522b561836
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`
Commit migrated from https://github.com/dotnet/coreclr/commit/
e73cb106f9043a48ac59b7dbc61495efeeb929ed
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.
Commit migrated from https://github.com/dotnet/coreclr/commit/
1b35c0a24c08657dfa0c1217f362eec794c0286b
Pat Gavlin [Mon, 27 Jun 2016 18:00:43 +0000 (11:00 -0700)]
Merge pull request dotnet/coreclr#6002 from pgavlin/GenTreeDebugFlags
Refactor debug-only GenTree flags.
Commit migrated from https://github.com/dotnet/coreclr/commit/
7081a2b5ecab517d5e9cbe49267682c520468404
Bruce Forstall [Mon, 27 Jun 2016 16:57:34 +0000 (09:57 -0700)]
Merge pull request dotnet/coreclr#5971 from BruceForstall/RefactorTreeNodeInit
Refactor TreeNodeInfoInit(): extract lots of functions
Commit migrated from https://github.com/dotnet/coreclr/commit/
8e9b84f0f4511673e039e21624b79faaecbfa9e3
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.
Commit migrated from https://github.com/dotnet/coreclr/commit/
4f847a849f1dbeeb6c4e3e5c267ded5773675981
Stephen Toub [Mon, 27 Jun 2016 11:12:04 +0000 (07:12 -0400)]
Merge pull request dotnet/coreclr#6007 from dotnet-bot/UpdateDependencies20160627051740
Updating External dependencies to beta-24227-00
Commit migrated from https://github.com/dotnet/coreclr/commit/
aadeaf412b19e258cfd4622278cdbbb28396650c
dotnet-bot [Mon, 27 Jun 2016 05:17:40 +0000 (05:17 +0000)]
Updating External dependencies to beta-24227-00
Commit migrated from https://github.com/dotnet/coreclr/commit/
580e3a18daca8f4609f9cc7aa42019f669644a29
Jan Kotas [Mon, 27 Jun 2016 05:09:11 +0000 (22:09 -0700)]
Rename files under src/mscorlib/corefx/System/Globalization to match CoreRT (dotnet/coreclr#6005)
corefx/System/Globalization was forked from CoreRT originally. Rename the files to match the current CoreRT names.
Commit migrated from https://github.com/dotnet/coreclr/commit/
0f43161b85a6d43b39231532b45106a90c3421b8
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>
Commit migrated from https://github.com/dotnet/coreclr/commit/
1a6fc452956c1cdbfaaa8d78e9ac0848a63f58ea
Tarek Mahmoud Sayed [Sun, 26 Jun 2016 18:34:00 +0000 (11:34 -0700)]
Merge pull request dotnet/coreclr#6003 from Clockwork-Muse/master
Add missing parameter names to BitArray.CopyTo exceptions
Commit migrated from https://github.com/dotnet/coreclr/commit/
52570683489377e50bef1edacb80b8f647223daf
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.
Commit migrated from https://github.com/dotnet/coreclr/commit/
46de96c6ea23a96272176829ae284b2912620485
Stephen A. Imhoff [Sun, 26 Jun 2016 05:35:29 +0000 (14:35 +0900)]
Add parameter names to exception.
Commit migrated from https://github.com/dotnet/coreclr/commit/
db472c4ffad271a2816ec2641b6a8b9aa2ace8d0
Stephen A. Imhoff [Sun, 26 Jun 2016 05:23:54 +0000 (14:23 +0900)]
Switch from literal parameter names to nameof
Commit migrated from https://github.com/dotnet/coreclr/commit/
da1cfa31d7d9e5ebcd6dd40cd340c73dcd3cf84f
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.
Commit migrated from https://github.com/dotnet/coreclr/commit/
6ed517a7e5912f34787cab70f2f74082ecfdbba1
Brian Sullivan [Sat, 25 Jun 2016 06:18:36 +0000 (23:18 -0700)]
Merge pull request dotnet/coreclr#5993 from briansull/fix-5639
Fix for issue 5639
Commit migrated from https://github.com/dotnet/coreclr/commit/
8e958879ebadab7760c8368e070d34f3b7cf6950
Brian Sullivan [Sat, 25 Jun 2016 06:18:03 +0000 (23:18 -0700)]
Merge pull request dotnet/coreclr#5998 from briansull/Update-ReturnTypeDesc
Incremental work on ReturnTypeDesc for multiReg return support
Commit migrated from https://github.com/dotnet/coreclr/commit/
8c93f49cbc5c0055b6ac63470e21332129e7842a
Eric StJohn [Fri, 24 Jun 2016 23:28:35 +0000 (16:28 -0700)]
Merge pull request dotnet/coreclr#5985 from ericstj/incrementCoreCLR+Jit
Update CoreCLR & JIT package versions
Commit migrated from https://github.com/dotnet/coreclr/commit/
255985165bad4a9c7ffd5cac493a22f7bae46c9e
Kyungwoo Lee [Fri, 24 Jun 2016 22:06:10 +0000 (15:06 -0700)]
Merge pull request dotnet/coreclr#5979 from kyulee1/boolfold
ARM64: Fix Fold Type For optOptimizeBools
Commit migrated from https://github.com/dotnet/coreclr/commit/
58a45c26ea2065fc9fb35bd7c10087a26fd9448e
Peter Jas [Fri, 24 Jun 2016 22:01:11 +0000 (01:01 +0300)]
Use libc.so as default libc name (dotnet/coreclr#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.
Commit migrated from https://github.com/dotnet/coreclr/commit/
66f12f84f1d7a764adf715591fe3283f20f034d8
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
Commit migrated from https://github.com/dotnet/coreclr/commit/
7f24c64895638fc22530da8f5fae878433e14465
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
Commit migrated from https://github.com/dotnet/coreclr/commit/
81b2abba239fad281ede4e715beac3856477e61c
noahfalk [Fri, 24 Jun 2016 20:25:11 +0000 (13:25 -0700)]
Update supported profiler APIs
Commit migrated from https://github.com/dotnet/coreclr/commit/
78ea6cd595e96cee9c54d6f4090fbc894c3e1c04
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.
Commit migrated from https://github.com/dotnet/coreclr/commit/
1ba04a0d6deaae6152c816bbde33430fd73b088a
Kyungwoo Lee [Fri, 24 Jun 2016 20:03:23 +0000 (13:03 -0700)]
Merge pull request dotnet/coreclr#5991 from kyulee1/stacklimit
ARM64: Fix StackLimit
Commit migrated from https://github.com/dotnet/coreclr/commit/
dd28137183076265cc1779515ab48c8460301dda
Chris McKinsey [Fri, 24 Jun 2016 19:05:47 +0000 (12:05 -0700)]
Merge pull request dotnet/coreclr#5973 from cmckinsey/DevDiv_216571
Fix SBCG in value-numbering constant assertprop
Commit migrated from https://github.com/dotnet/coreclr/commit/
72c186f35a5410b8cb7ba711213b7ab2d444e69a
Brian Sullivan [Fri, 24 Jun 2016 18:18:07 +0000 (11:18 -0700)]
Merge pull request dotnet/coreclr#5940 from briansull/retbuf-nonstandard
ARM64: Change the fixed return buffer argument to be handled as a non-standard argument
Commit migrated from https://github.com/dotnet/coreclr/commit/
4fb89705e1ad6d6e6fc91c7a9b0cb833a29dbc46
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.
Commit migrated from https://github.com/dotnet/coreclr/commit/
9a6a40d9edcc3ea85a005afc3727d4fc0cc2ae7c
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.
Commit migrated from https://github.com/dotnet/coreclr/commit/
496615cb51e70c28d0632acd877ad86c5d8e263a
Gaurav Khanna [Fri, 24 Jun 2016 13:55:32 +0000 (06:55 -0700)]
Merge pull request dotnet/coreclr#5986 from dotnet-bot/UpdateDependencies20160624051958
Updating External dependencies to beta-24224-00
Commit migrated from https://github.com/dotnet/coreclr/commit/
20c8d0d8ba3a637fa3d5da39897956041bf5676a
Ivan Baravy [Fri, 24 Jun 2016 12:59:51 +0000 (16:59 +0400)]
Fix typo to apply mac build workaround only on OSX (dotnet/coreclr#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.
Commit migrated from https://github.com/dotnet/coreclr/commit/
422f37e2ee9eb7a8c5237811c12151072312cf12
chunseoklee [Fri, 24 Jun 2016 12:56:55 +0000 (21:56 +0900)]
Fix Issue dotnet/coreclr#5542 (dotnet/coreclr#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
Commit migrated from https://github.com/dotnet/coreclr/commit/
27e0e1414b7405fa6bb49eecbf97fa1df57fb0b5
MyungJoo Ham [Fri, 24 Jun 2016 12:51:53 +0000 (21:51 +0900)]
Use BIT64 define for 64-bit specific code. (dotnet/coreclr#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 dotnet/coreclr#4737
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
99c0410601955552920079a7465c64e725814c2c
dotnet-bot [Fri, 24 Jun 2016 05:19:58 +0000 (05:19 +0000)]
Updating External dependencies to beta-24224-00
Commit migrated from https://github.com/dotnet/coreclr/commit/
258adaded5651d84d712757cb6b14d89502586ec
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.
Commit migrated from https://github.com/dotnet/coreclr/commit/
83931058afb1600034e1aeed1e600cbec9adf2bf
Jarret Shook [Fri, 24 Jun 2016 03:35:02 +0000 (20:35 -0700)]
Merge pull request dotnet/coreclr#5983 from prajwal-aithal/devel/arm-ci-checked-fix
ARM-CI: Prevent creation of job for Checked configuration (rebased over dotnet/coreclr#5961)
Commit migrated from https://github.com/dotnet/coreclr/commit/
3b8b48461a2db92136e87952f8737fb0917107b0
Jan Kotas [Fri, 24 Jun 2016 03:18:16 +0000 (20:18 -0700)]
Merge pull request dotnet/coreclr#5980 from dotnet-bot/from-tfs
Merge changes from TFS
Commit migrated from https://github.com/dotnet/coreclr/commit/
690a092fd9d553935f7422197d4df4224677c04a
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>
Commit migrated from https://github.com/dotnet/coreclr/commit/
bb4009985fb4ee694d9920539301d6b8bed2ead1
Pat Gavlin [Fri, 24 Jun 2016 02:39:35 +0000 (19:39 -0700)]
Merge pull request dotnet/coreclr#5960 from pgavlin/CheckDefPython3
Make check-definitions compatible with Python 3.
Commit migrated from https://github.com/dotnet/coreclr/commit/
36bb7ad45332804709ad93962aa4c79a838e4dd6
Chris McKinsey [Fri, 24 Jun 2016 02:18:52 +0000 (19:18 -0700)]
Merge pull request dotnet/coreclr#5923 from mikedn/x86-store-lclvar
Fix statement insertion point in GT_STORE_LCL_VAR decomposition
Commit migrated from https://github.com/dotnet/coreclr/commit/
b1aa2c187172aa33c5d01eccfa1f23923f3b8e0f
Evgeny Pavlov [Fri, 24 Jun 2016 02:00:47 +0000 (06:00 +0400)]
[SOS][Linux] Support of reading local variables from portable PDB (dotnet/coreclr#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
Commit migrated from https://github.com/dotnet/coreclr/commit/
b5ab11484efe588de4b3d25de72a2f49b4a55c2c
Jarret Shook [Fri, 24 Jun 2016 00:46:28 +0000 (17:46 -0700)]
Merge pull request dotnet/coreclr#5961 from jashook/arm32_ci_ubuntu_cross_fix
Seperate the ubuntu-arm build and emulator build
Commit migrated from https://github.com/dotnet/coreclr/commit/
9e7fb905a9d14059b12b56cb57aed4c631d6a75a
Jan Kotas [Thu, 23 Jun 2016 23:52:36 +0000 (16:52 -0700)]
Undo accidental change
[tfs-changeset: 1614521]
Commit migrated from https://github.com/dotnet/coreclr/commit/
7f4d9ea84d0c139fceb2ba4a306a1a16157d9db3
Jan Kotas [Thu, 23 Jun 2016 23:51:31 +0000 (16:51 -0700)]
Add missing contracts
[tfs-changeset: 1614520]
Commit migrated from https://github.com/dotnet/coreclr/commit/
1082b257a94f1493ec83ec91bb745498d5c24ddd
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.
Commit migrated from https://github.com/dotnet/coreclr/commit/
3a4d5f83f8428a4c257f61c46228329cbceb8e74
Russ Keldorph [Thu, 23 Jun 2016 23:39:03 +0000 (16:39 -0700)]
Merge pull request dotnet/coreclr#5968 from RussKeldorph/jitstress
Move R2R JitStress jobs into the jitstress folder with the others.
Commit migrated from https://github.com/dotnet/coreclr/commit/
daf0bab5c4059e40a489b0e89a5544afc09dc1cd
Pat Gavlin [Thu, 23 Jun 2016 23:32:48 +0000 (16:32 -0700)]
Merge pull request dotnet/coreclr#5959 from pgavlin/AOTPlaceholderFile
Add AOT placeholder files to the JIT package.
Commit migrated from https://github.com/dotnet/coreclr/commit/
f8a525c1a65ba71de2181ff0b6327ea8d6901584
Jan Kotas [Thu, 23 Jun 2016 21:44:44 +0000 (14:44 -0700)]
Add braces to avoid operator priority confusion (dotnet/coreclr#5964)
Commit migrated from https://github.com/dotnet/coreclr/commit/
e0787c6f35d5cf9e440461cc252fe92d0d9bce19
Brian Sullivan [Thu, 23 Jun 2016 21:15:37 +0000 (14:15 -0700)]
Support for updating a nonStandard arg in-place the ArrayStack when it is modified by fgMorphTree
Commit migrated from https://github.com/dotnet/coreclr/commit/
082a175b35fab4fe8d92fd5f54d0aba9515cdd0e
Aditya Mandaleeka [Thu, 23 Jun 2016 20:59:35 +0000 (13:59 -0700)]
Merge pull request dotnet/coreclr#5963 from dotnet-bot/from-tfs
Merge changes from TFS
Commit migrated from https://github.com/dotnet/coreclr/commit/
930c1d91af7f8138ec5280993cd533fabc000a23
Bruce Forstall [Thu, 23 Jun 2016 20:15:52 +0000 (13:15 -0700)]
Refactor TreeNodeInfoInit(): extract lots of functions
Commit migrated from https://github.com/dotnet/coreclr/commit/
aeda72a2ba8cb2815a3bfa19feb40ed7c6e0ee73
Pat Gavlin [Thu, 23 Jun 2016 16:41:49 +0000 (09:41 -0700)]
Add AOT placeholder files to the JIT package.
This is intended to prevent accidental inclusion in UWP projects.
Commit migrated from https://github.com/dotnet/coreclr/commit/
8dacb9571422b67605096bdb0f6782dcfc880639
Ivan Baravy [Thu, 23 Jun 2016 20:18:06 +0000 (00:18 +0400)]
Fix GC profiling on arm-softfp (dotnet/coreclr#5952)
This commit updates one preprocessor directive inside gc.h to initialize
dwEtwRootKind field of ScanContext when GC_PROFILING is defined while
FEATURE_EVENT_TRACE is not. This happens to platforms like arm-softfp.
Commit migrated from https://github.com/dotnet/coreclr/commit/
46d9787d18437733815b3a6fd35df2474cea792d
Russ Keldorph [Thu, 23 Jun 2016 19:28:07 +0000 (12:28 -0700)]
Move R2R JitStress jobs into the jitstress folder with the others.
Commit migrated from https://github.com/dotnet/coreclr/commit/
93e0d1a5b6a0dbd3b3695f1dee6927d37f2eed8e
Bruce Forstall [Thu, 23 Jun 2016 19:32:21 +0000 (12:32 -0700)]
Merge pull request dotnet/coreclr#5939 from BruceForstall/FixPinvoke
Fix RyuJIT/x86 P/Invoke inlining
Commit migrated from https://github.com/dotnet/coreclr/commit/
b37ac862ec8274cbcc698dfabaaa493cffdd2858
Brian Sullivan [Thu, 23 Jun 2016 18:25:53 +0000 (11:25 -0700)]
Merge branch 'master' into retbuf-nonstandard
Commit migrated from https://github.com/dotnet/coreclr/commit/
c09eddd91a7f5c9634ef41b3b10e90617f3ef502
Jan Kotas [Thu, 23 Jun 2016 18:13:01 +0000 (11:13 -0700)]
Fix build break in internal build
[tfs-changeset: 1614475]
Commit migrated from https://github.com/dotnet/coreclr/commit/
9b8c43f7801269899558fda7248a058175bff68e
Rahul Kumar [Thu, 23 Jun 2016 18:06:43 +0000 (11:06 -0700)]
Merge pull request dotnet/coreclr#5935 from rahku/test
Fix test runner batch file to provide correct TPA path
Commit migrated from https://github.com/dotnet/coreclr/commit/
393760ccd7aeb2473d715e819d2f0f24619641f9
Brian Sullivan [Thu, 23 Jun 2016 17:37:53 +0000 (10:37 -0700)]
Merge pull request dotnet/coreclr#5936 from briansull/fullIntArgRegMask
Introduce the method fullIntArgRegMask() to replace many uses of RBM_ARG_REGS
Commit migrated from https://github.com/dotnet/coreclr/commit/
b2190ababb0552b09845567da7700415ccdfc22d
Matt Ellis [Thu, 23 Jun 2016 17:35:38 +0000 (10:35 -0700)]
Merge pull request dotnet/coreclr#5937 from ellismg/pass-build-id-flag-to-linker
Pass --build-id=sha1 to linker explicitly
Commit migrated from https://github.com/dotnet/coreclr/commit/
316fc8e0c0ad848d78025f354893cf18a2b55317
Jarret Shook [Thu, 23 Jun 2016 17:28:50 +0000 (10:28 -0700)]
Merge pull request dotnet/coreclr#5962 from dotnet/revert-5945-devel/arm-ci-checked-fix
Revert "ARM-CI: Prevent creation of job for Checked configuration"
Commit migrated from https://github.com/dotnet/coreclr/commit/
907789db331e449e09f092fb28584854f812597a
Jarret Shook [Thu, 23 Jun 2016 17:28:42 +0000 (10:28 -0700)]
Revert "ARM-CI: Prevent creation of job for Checked configuration"
Commit migrated from https://github.com/dotnet/coreclr/commit/
3417df606c096de1044633b3645b29e761dbaf5d
Pat Gavlin [Thu, 23 Jun 2016 17:10:25 +0000 (10:10 -0700)]
Make check-definitions compatible with Python 3.
Import and use the Python 3-compatible print_function from __future__.
Commit migrated from https://github.com/dotnet/coreclr/commit/
8fd7bf03cf8301c5081cb9c887eec91a2e33b194
Bruce Forstall [Thu, 12 May 2016 14:31:13 +0000 (07:31 -0700)]
Enable RyuJIT/x86 PInvoke lowering
Fixes dotnet/coreclr#4181 "NYI_X86: Implement PInvoke frame init inlining for x86"
The main work here is to handle the custom calling convention for the
x86 CORINFO_HELP_INIT_PINVOKE_FRAME helper call: it takes EDI as an argument,
trashes only EAX, and returns the TCB in ESI.
The code changes are as follows:
1. Lowering::InsertPInvokeMethodProlog(): don't pass the "secret stub param" for x86.
Also, don't store the InlinedCallFrame.m_pCallSiteSP in the prolog: for x86 this is done
at the call site, due to the floating stack pointer.
2. LinearScan::getKillSetForNode(): for helper calls, call compHelperCallKillSet() to get the killMask,
to account for non-standard kill sets.
3. Morph.cpp::fgMorphArgs(): set non-standard arguments for CORINFO_HELP_INIT_PINVOKE_FRAME.
4. compHelperCallKillSet(): set the correct kill set for CORINFO_HELP_INIT_PINVOKE_FRAME.
5. codegenxarch.cpp::genCallInstruction(): set the ABI return register for CORINFO_HELP_INIT_PINVOKE_FRAME.
6. lowerxarch.cpp::TreeNodeInfoInit(): set the GT_CALL dstCandidates for CORINFO_HELP_INIT_PINVOKE_FRAME.
5 & 6 are both needed to avoid a copy.
With this change, the dotnet/coreclr#1 NYI with 18415 hits over the tests is gone.
The total number of NYI is now 29516.
Commit migrated from https://github.com/dotnet/coreclr/commit/
3c7ecfeea45ba11eb59ae5615ddd5d89ea980ea5
kvochko [Thu, 23 Jun 2016 16:23:20 +0000 (20:23 +0400)]
Enable out-of-proc unwinding on ARM (dotnet/coreclr#5946)
Fix dotnet/coreclr#5855
Commit migrated from https://github.com/dotnet/coreclr/commit/
50dd30e88897c8ee213fa76fb55624eead12f382
Michelle McDaniel [Thu, 23 Jun 2016 15:14:49 +0000 (08:14 -0700)]
Merge pull request dotnet/coreclr#5890 from adiaaida/x86LongCallFinal
Enable GT_CALL with long ret types for x86 RyuJIT
Commit migrated from https://github.com/dotnet/coreclr/commit/
26d4a8c05f6502226c13a3fb257c9b7cf2fea2e8
Jarret Shook [Thu, 23 Jun 2016 15:05:21 +0000 (08:05 -0700)]
Merge pull request dotnet/coreclr#5945 from prajwal-aithal/devel/arm-ci-checked-fix
ARM-CI: Prevent creation of job for Checked configuration
Commit migrated from https://github.com/dotnet/coreclr/commit/
4ba2204b724ba106af8494ed244eb36a76d59e27
Gaurav Khanna [Thu, 23 Jun 2016 14:17:56 +0000 (07:17 -0700)]
Merge pull request dotnet/coreclr#5944 from dotnet-bot/UpdateDependencies20160623052003
Updating External dependencies to beta-24223-00
Commit migrated from https://github.com/dotnet/coreclr/commit/
0b2cf6f20bd4202d201846abf5a4e2eb4dd5b069
MyungJoo Ham [Thu, 23 Jun 2016 11:13:46 +0000 (20:13 +0900)]
Scripts: verify compiler definitions of native and managed (dotnet/coreclr#4675)
* Scripts: find out compiler definitions of CMake
In order to find mismatch between native and managed,
we need to know the list of definitions of native.
The copmiler definitions are stored at cmake.definitions
This addresses the complaints of dotnet/coreclr#4674
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
* Scripts: add check-definitions.py
scripts/check-definitions.py checks the consistency between
the native-build (CMake) compiler definitions and
the managed-build (MSBuild/mscorlib) compiler definitions
at build-time and prints out potentially dangerous
inconsistencies.
In order to get the proper results, managed build should
be executed after the native build (build.sh will do so
if no options such as skipnative or skipmanaged are given.)
Fix dotnet/coreclr#4674
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
* Scripts: allow check-definitions py to ignore the harmless
The third argument of check-definitions.py specifies harmless keywords
to be suppressed from emitting warning messages.
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
* Scripts: add ignored cdefine keywords for warning
As an example of how to declare compiler definition keywords
that are harmless to be inconsistent between the native and the
managed, we have added FEATURE_IMPLICIT_TLS and FEATURE_HIJACK.
Developers may add more keywords in System.Private.CoreLib.csproj
if the keywords are verified to be harmless; i.e., although
the keywords exist in both cmake and clr.coreclr.props,
the keywords are NEVER used in either side of the sources
or the keywords only happen to have the same name while they
denote the completely different semantics and may be disjoint.
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
9ae38ddd84ac77e52f76a04c1c87a17742ba06da
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>
Commit migrated from https://github.com/dotnet/coreclr/commit/
4dcadad3cfbd2e9a1d9e386e190df027c713bc83
Maoni Stephens [Thu, 23 Jun 2016 07:07:49 +0000 (00:07 -0700)]
Merge pull request dotnet/coreclr#5934 from Maoni0/gcwhere
enable GCWhere on PAL
Commit migrated from https://github.com/dotnet/coreclr/commit/
70ac3533bfd4d4ebce6d834c3656b2d6c5bae941
Sean Gillespie [Thu, 23 Jun 2016 06:40:41 +0000 (23:40 -0700)]
Build the GC as part of its own CMake target (dotnet/coreclr#5932)
Commit migrated from https://github.com/dotnet/coreclr/commit/
0dbc3f62bd3ce5184cc27884e3239e3deae3cc9a
dotnet-bot [Thu, 23 Jun 2016 05:20:03 +0000 (05:20 +0000)]
Updating External dependencies to beta-24223-00
Commit migrated from https://github.com/dotnet/coreclr/commit/
bfc4a48d44ccb3911e51d255f9f9bf61c5f49755
Jarret Shook [Thu, 23 Jun 2016 03:46:08 +0000 (20:46 -0700)]
Merge pull request dotnet/coreclr#5211 from prajwal-aithal/devel/automate-arm-ci
ARM-CI: Make the Linux ARM emulator check automatic
Commit migrated from https://github.com/dotnet/coreclr/commit/
63796e5a7ae5076ceb310a2dca89e94e09b5e5f2
Prajwal A N [Wed, 25 May 2016 10:48:38 +0000 (19:48 +0900)]
ARM-CI: Make the Linux ARM emulator check automatic
* Previously the Linux ARM emulator build had to be triggered manually
* Making this check automatic based on the stability of emulator build
Signed-off-by: Prajwal A N <an.prajwal@samsung.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
e86ea35b030abd01252c3bbf9268875e9dd2d049