Vance Morrison [Fri, 5 Aug 2016 16:28:06 +0000 (09:28 -0700)]
Fix typo/comments
Commit migrated from https://github.com/dotnet/coreclr/commit/
e6b35d41246a701a473b801801b2cf90ea9d19eb
Vance Morrison [Tue, 2 Aug 2016 18:31:48 +0000 (11:31 -0700)]
Change to allow WCF more explicit control over channels to mimic an existing manifest.
Commit migrated from https://github.com/dotnet/coreclr/commit/
044a6fa3342f1eefe45300b5c6e4dc96968478f9
Michelle McDaniel [Mon, 1 Aug 2016 14:46:14 +0000 (07:46 -0700)]
Merge pull request dotnet/coreclr#6491 from adiaaida/formatting2
Massage code for clang-format
Commit migrated from https://github.com/dotnet/coreclr/commit/
8e0cbbba5b41744873eb6263069497a5dbdfedd4
Lakshmi Priya [Mon, 1 Aug 2016 03:38:06 +0000 (20:38 -0700)]
Merge pull request dotnet/coreclr#6400 from Priya91/useruntool
Use run tool in coreclr dev workflow.
Commit migrated from https://github.com/dotnet/coreclr/commit/
caaf93e5c1548e99f5e9892a9dd861f8a80f2425
Lorenzo Tessiore [Sat, 30 Jul 2016 15:33:47 +0000 (08:33 -0700)]
Update linux-performance-tracing.md
Commit migrated from https://github.com/dotnet/coreclr/commit/
12fbe4ba0966d6a37e01c3dda1b850485e4b4812
Lakshmi Priya Sekar [Sat, 30 Jul 2016 00:53:02 +0000 (17:53 -0700)]
Apply run on recent changes in master.
Commit migrated from https://github.com/dotnet/coreclr/commit/
bec4e1cdfba2b8f10130f7c25ff8b167b1cb5d60
Lakshmi Priya Sekar [Fri, 29 Jul 2016 20:51:43 +0000 (13:51 -0700)]
Respond to PR feedback.
Commit migrated from https://github.com/dotnet/coreclr/commit/
9474660fcde42d45ad17390a69e497c830691b67
Lakshmi Priya Sekar [Thu, 28 Jul 2016 19:19:19 +0000 (12:19 -0700)]
Remove clean option from arm script, which deletes the copied test bits in CI.
Commit migrated from https://github.com/dotnet/coreclr/commit/
57efa01a2e7c52aa33f67d1a49b993ea363a290e
Lakshmi Priya Sekar [Thu, 28 Jul 2016 18:44:55 +0000 (11:44 -0700)]
Grant 777 for run.sh
Commit migrated from https://github.com/dotnet/coreclr/commit/
1b0c82f3790eca67e73d30807779af6c5799b1aa
Lakshmi Priya Sekar [Thu, 14 Jul 2016 22:42:33 +0000 (15:42 -0700)]
Use run tool in coreclr dev workflow.
Commit migrated from https://github.com/dotnet/coreclr/commit/
f5afe9b479acea4d2f4c80d0b86b8db6a869ff96
Rahul Kumar [Fri, 29 Jul 2016 22:22:40 +0000 (15:22 -0700)]
Merge pull request dotnet/coreclr#6493 from rahku/crossgen
adds testhost package
Commit migrated from https://github.com/dotnet/coreclr/commit/
f9350e92692fbc6972138115bfc5336750da9069
Rahul Kumar [Wed, 27 Jul 2016 22:50:56 +0000 (15:50 -0700)]
adds testhost package
Commit migrated from https://github.com/dotnet/coreclr/commit/
5b7d8d9227841faada56ef1005242ce9278cd697
Aditya Mandaleeka [Fri, 29 Jul 2016 21:13:05 +0000 (14:13 -0700)]
Merge pull request dotnet/coreclr#6521 from adityamandaleeka/remove_internal_free
Remove CorUnix::InternalFree from PAL
Commit migrated from https://github.com/dotnet/coreclr/commit/
b49116c0f940760c49b2af9b7593e38a11921694
Brian Sullivan [Fri, 29 Jul 2016 20:56:44 +0000 (13:56 -0700)]
Merge pull request dotnet/coreclr#6281 from papaslavik/cse_sort_sz
The sort for CSE size optimization should be different from exec
Commit migrated from https://github.com/dotnet/coreclr/commit/
70769b7aecc9cdf3b24ed81aad126566ce037fd5
Kyungwoo Lee [Fri, 29 Jul 2016 20:42:00 +0000 (13:42 -0700)]
Merge pull request dotnet/coreclr#6515 from kyulee1/fixcontract
Remove useless contract in EventListener
Commit migrated from https://github.com/dotnet/coreclr/commit/
be81369a85fdbfd0527cbfcc2e7c261a7c8a2f99
William Godbe [Fri, 29 Jul 2016 19:34:30 +0000 (12:34 -0700)]
Merge pull request dotnet/coreclr#6479 from dagood/update-dependencies
Using full versions, update CoreFX dependencies to beta-24326-03
Commit migrated from https://github.com/dotnet/coreclr/commit/
4e87b31976f92f9c9d9d1a835c7b4b6d939c4091
Davis Goodin [Tue, 26 Jul 2016 20:42:20 +0000 (15:42 -0500)]
Using full versions, update CoreFX dependencies to beta-24328-05.
To fix tests, change dnxcore50 -> netcoreapp1.0 and add test_runtime.
Commit migrated from https://github.com/dotnet/coreclr/commit/
339823ac081a4314b790e52cafcd664dc9591468
Gaurav Khanna [Fri, 29 Jul 2016 17:04:51 +0000 (10:04 -0700)]
Merge pull request dotnet/coreclr#6506 from gkhanna79/FixReflectionLoadContext
Enable RefEmitted assemblies to have Fallback LoadContext notion
Commit migrated from https://github.com/dotnet/coreclr/commit/
d92493a8c49c79c5c66f268bf971260d244691e8
Michelle McDaniel [Fri, 24 Jun 2016 21:10:52 +0000 (14:10 -0700)]
Massage code for clang-format
This change starts the process of updating the jit code to make it ready
for being formatted by clang-format. Changes mostly include reflowing
comments that go past our column limit and moving comments around ifdefs
so clang-format does not modify the indentation. Additionally, some
header files are manually reformatted for pointer alignment and marked
as clang-format off so that we do not lose the current formatting.
Commit migrated from https://github.com/dotnet/coreclr/commit/
a1fa8c14cae981369dccf2f361b01959b215ad8f
Gaurav Khanna [Fri, 29 Jul 2016 13:01:04 +0000 (06:01 -0700)]
Merge pull request dotnet/coreclr#6523 from dotnet-bot/UpdateDependencies20160729052446
Updating External dependencies to beta-24329-00
Commit migrated from https://github.com/dotnet/coreclr/commit/
e3164ceb6fc6f39ff9bbaf93c41008709625df37
Rama krishnan Raghupathy [Fri, 29 Jul 2016 07:06:12 +0000 (00:06 -0700)]
Merge pull request dotnet/coreclr#6499 from ramarag/unc_cwd
Fxing the paths that are resolved relative to a network share
Commit migrated from https://github.com/dotnet/coreclr/commit/
8a19f535d4c30243e98de7452394a4e136eefc6a
dotnet-bot [Fri, 29 Jul 2016 05:24:45 +0000 (05:24 +0000)]
Updating External dependencies to beta-24329-00
Commit migrated from https://github.com/dotnet/coreclr/commit/
d4d7e1c2d55214a5a6d1c37251df893b56bad7d7
Aditya Mandaleeka [Fri, 29 Jul 2016 02:37:56 +0000 (19:37 -0700)]
Merge pull request dotnet/coreclr#6394 from adityamandaleeka/ymm_save_restore
Save and restore ymm registers in signal handlers.
Commit migrated from https://github.com/dotnet/coreclr/commit/
5081848ef586d34a8de1599e2f01a1b67f0466c8
Aditya Mandaleeka [Fri, 29 Jul 2016 02:23:22 +0000 (19:23 -0700)]
Merge pull request dotnet/coreclr#6512 from dotnet-bot/UpdateDependencies20160728083626
Updating External dependencies to beta-24328-00
Commit migrated from https://github.com/dotnet/coreclr/commit/
426c8c352de07eec98d3b6168254d971b7c82110
Sepideh Khoshnood [Fri, 29 Jul 2016 02:14:33 +0000 (19:14 -0700)]
Expose missing members of Array in contract to prep for dotnet/corefxdotnet/coreclr#9998. (dotnet/coreclr#6519)
Commit migrated from https://github.com/dotnet/coreclr/commit/
0d6291d3d92fd0c4fb97a23149243b9dd322cf27
Jan Kotas [Fri, 29 Jul 2016 02:11:16 +0000 (19:11 -0700)]
Merge pull request dotnet/coreclr#6509 from dotnet-bot/from-tfs
Merge changes from TFS
Commit migrated from https://github.com/dotnet/coreclr/commit/
5eb011e835fe0de1aa9d6ea065e52e8636dc4ae4
Aditya Mandaleeka [Thu, 28 Jul 2016 01:21:16 +0000 (18:21 -0700)]
Remove CorUnix::InternalFree.
Commit migrated from https://github.com/dotnet/coreclr/commit/
e545b22c2796dc8bca0c58eba4f60c8f6d99f22f
Aditya Mandaleeka [Fri, 29 Jul 2016 01:00:40 +0000 (18:00 -0700)]
Merge pull request dotnet/coreclr#6496 from adityamandaleeka/virtual_cleanup
Add in-memory circular buffer for logging virtual memory operations.
Commit migrated from https://github.com/dotnet/coreclr/commit/
939c9a0e5541b67d7fd6f8947f5dda974d276a3a
Mariana Rios Flores [Fri, 29 Jul 2016 00:07:22 +0000 (17:07 -0700)]
Update how we pass parameters when building CoreFx (dotnet/coreclr#6511)
Change how we pass parameters when building CoreFx
Commit migrated from https://github.com/dotnet/coreclr/commit/
7371dea35aadd2bc6a292d8efd7781a3f34ed7ee
Aditya Mandaleeka [Thu, 28 Jul 2016 23:19:06 +0000 (16:19 -0700)]
Also clear CONTEXT_XSTATE if fpregs aren't available.
Commit migrated from https://github.com/dotnet/coreclr/commit/
002149cadd71aee97a6d0e25c1d9e6edfe21e087
David Mason [Thu, 28 Jul 2016 23:05:18 +0000 (16:05 -0700)]
Merge pull request dotnet/coreclr#6480 from davmason/master
Merge changes with .net native.
The fix for DisposeOnShutdown is already in here, these are the changes that exist in ProjectN that are not in CoreCLR yet.
Commit migrated from https://github.com/dotnet/coreclr/commit/
23b20c4e73709799e9d37bacb3743b15dd4236a9
Aditya Mandaleeka [Thu, 28 Jul 2016 22:48:43 +0000 (15:48 -0700)]
Add extended state to RtlRestoreContext
Commit migrated from https://github.com/dotnet/coreclr/commit/
1c7531b638a6b35befc5fe66e33e2de83ecc6fe1
Kyungwoo Lee [Thu, 28 Jul 2016 22:13:37 +0000 (15:13 -0700)]
Remove useless contract in EventListener
Fixes https://github.com/dotnet/coreclr/issues/6504
Commit migrated from https://github.com/dotnet/coreclr/commit/
00190bb80348f9c118b125c682e48373160dd46d
Rama Krishnan Raghupathy [Thu, 28 Jul 2016 01:48:24 +0000 (18:48 -0700)]
Fxing the paths that are resolved relative to a network share
Commit migrated from https://github.com/dotnet/coreclr/commit/
2eb7d0c11a2842243c34e2302997e739c18cf7d6
dotnet-bot [Thu, 28 Jul 2016 20:36:26 +0000 (20:36 +0000)]
Updating External dependencies to beta-24328-00
Commit migrated from https://github.com/dotnet/coreclr/commit/
074c55e360e3b649039405a8390c42b170acaead
Jan Kotas [Thu, 28 Jul 2016 19:55:26 +0000 (12:55 -0700)]
Skip dummy null argument for string constructors under CoreRT ABI (dotnet/coreclr#6498)
Commit migrated from https://github.com/dotnet/coreclr/commit/
05b7cb45c30fda77623678200657057cc35d33ed
Joel Hendrix [Thu, 28 Jul 2016 19:05:32 +0000 (12:05 -0700)]
Fix for build issue dotnet/coreclr#807024, assemble debug helpers for ARM64.
[tfs-changeset: 1619712]
Commit migrated from https://github.com/dotnet/coreclr/commit/
3d47402dfff39bee8c978c68eed69a9d247390a0
Gaurav Khanna [Tue, 26 Jul 2016 16:24:38 +0000 (09:24 -0700)]
Enable RefEmitted assemblies to have Fallback LoadContext notion
Commit migrated from https://github.com/dotnet/coreclr/commit/
2d2e7661556b4c9f4c7197ead2224bd58a89d251
Russell C Hadley [Thu, 28 Jul 2016 13:13:31 +0000 (06:13 -0700)]
Merge pull request dotnet/coreclr#6502 from russellhadley/errnoFix
Add errno.h to resolve (internal) build break
Commit migrated from https://github.com/dotnet/coreclr/commit/
4c5d72ffcdc0a9472aecd32f09fbf266a337dffa
noahfalk [Thu, 28 Jul 2016 07:15:54 +0000 (00:15 -0700)]
Merge pull request dotnet/coreclr#6278 from Dmitri-Botcharnikov/feature-gdbjit
[Linux] GDB JIT support for source line debug information.
Commit migrated from https://github.com/dotnet/coreclr/commit/
d81d773312dcae24d0b5d56cb972bf71e22f856c
Aditya Mandaleeka [Thu, 28 Jul 2016 04:29:36 +0000 (21:29 -0700)]
Fix a couple of paths related to exception codes. (dotnet/coreclr#6497)
Commit migrated from https://github.com/dotnet/coreclr/commit/
f30a8de1dc0190dedded08a6f03951ecc1a17604
Aditya Mandaleeka [Thu, 28 Jul 2016 00:37:45 +0000 (17:37 -0700)]
Add in-memory logging for virtual memory operations.
Commit migrated from https://github.com/dotnet/coreclr/commit/
e4c31637fd3f829e475627f71c1ebef2846bca00
rhadley [Thu, 28 Jul 2016 00:34:51 +0000 (17:34 -0700)]
Add errno.h
Commit migrated from https://github.com/dotnet/coreclr/commit/
ef0aa6a1eaca4f7af3b80837de43c64ec82e47cf
Stephen Toub [Thu, 28 Jul 2016 00:32:15 +0000 (20:32 -0400)]
Merge pull request dotnet/coreclr#6490 from KrzysztofCwalina/ConvertAll
Exposed List<T>.ConvertAll
Commit migrated from https://github.com/dotnet/coreclr/commit/
05423e24483f7de0fa5507286ad09d7f0bda3ddf
Aditya Mandaleeka [Thu, 28 Jul 2016 00:00:03 +0000 (17:00 -0700)]
Rename PCMI->pLast and other cleanup of virtual memory code.
Commit migrated from https://github.com/dotnet/coreclr/commit/
37e765460516d3af07057445275565a3eab8fdee
Carol Eidt [Wed, 27 Jul 2016 22:43:43 +0000 (15:43 -0700)]
Merge pull request dotnet/coreclr#6484 from CarolEidt/AssertionPropAsserts
Do not propagate bad assertions from unreachable blocks
Commit migrated from https://github.com/dotnet/coreclr/commit/
b61adb5a2f93d5350b3c898b06c7895e0516c066
KrzysztofCwalina [Wed, 27 Jul 2016 22:25:18 +0000 (15:25 -0700)]
Exposed List<T>.ConvertAll
Commit migrated from https://github.com/dotnet/coreclr/commit/
4c4d51c3e477b2c34161256c48569d2eebdcbee9
John Chen [Wed, 27 Jul 2016 21:20:10 +0000 (14:20 -0700)]
Merge pull request dotnet/coreclr#6489 from JohnChen0/master
Update CrossGen doc for "Unable to load Jit" error
Commit migrated from https://github.com/dotnet/coreclr/commit/
a812669c5737a336745f42c099a1a8a6e1aafa4f
Jan Kotas [Wed, 27 Jul 2016 21:16:02 +0000 (14:16 -0700)]
GC update from CoreRT (dotnet/coreclr#6487)
https://github.com/dotnet/corert/tree/master/src/Native/gc dotnet/coreclr@
35d3eefeb4d14193433a103411526fa869321a82
Commit migrated from https://github.com/dotnet/coreclr/commit/
2d944f96aaf0a61a84cb7e6d19992657ef77e9ae
David Mason [Tue, 26 Jul 2016 20:27:10 +0000 (13:27 -0700)]
porting changes from .net native to CoreCLR
Commit migrated from https://github.com/dotnet/coreclr/commit/
856ae899dc2414c6806152648c17d5d312b3aee6
Stephen Toub [Wed, 27 Jul 2016 19:51:59 +0000 (15:51 -0400)]
Merge pull request dotnet/coreclr#6488 from stephentoub/add_objref_mscorlib
Add IObjectReference to mscorlib ref assembly
Commit migrated from https://github.com/dotnet/coreclr/commit/
50d9704c7918ef6adbfe9b5f10619f0dddd58cc6
John Chen [Wed, 27 Jul 2016 19:30:58 +0000 (12:30 -0700)]
Update CrossGen doc for "Unable to load Jit" error
Commit migrated from https://github.com/dotnet/coreclr/commit/
2ce817e58d616c94ad12a8eee0246d1029167ab6
Carol Eidt [Fri, 22 Jul 2016 20:56:24 +0000 (13:56 -0700)]
Do not propagate bad assertions from unreachable blocks
Also ensure only valid assertions are utilized.
Commit migrated from https://github.com/dotnet/coreclr/commit/
77e01f507cc46b32a227faa89216f634ad7e274b
Stephen Toub [Wed, 27 Jul 2016 18:14:36 +0000 (14:14 -0400)]
Add IObjectReference to mscorlib ref assembly
Commit migrated from https://github.com/dotnet/coreclr/commit/
037cf33d62308375fb3bcfecd822cb83436b5081
Evgeny Pavlov [Wed, 27 Jul 2016 17:12:59 +0000 (21:12 +0400)]
[SOS][ARM/Linux] Enable clru SOS command (dotnet/coreclr#6477)
* Enable clru SOS command on ARM/Linux
* Set thumb bit on ARM/Linux
Commit migrated from https://github.com/dotnet/coreclr/commit/
a734248ee38960d861c96b734ef862d99b2bfd0e
James Ko [Wed, 27 Jul 2016 17:00:18 +0000 (13:00 -0400)]
Optimize the generic string.Join for length 1 collections (dotnet/coreclr#6463)
* Optimize the generic string.Join for length 1 collections
* Keep the call order consistent: MoveNext-Current-ToString
* Convert to do..while loop to reduce code duplication
Commit migrated from https://github.com/dotnet/coreclr/commit/
dcd9aaeef6d22ad83f26993b68dfab365934c896
Stephen Toub [Wed, 27 Jul 2016 16:05:15 +0000 (12:05 -0400)]
Merge pull request dotnet/coreclr#6486 from stephentoub/expose_updatevalue
Expose SerializationInfo.UpdateValue for corefx
Commit migrated from https://github.com/dotnet/coreclr/commit/
cfa36dd440764ff9e584baf76d23d24acdccbea7
Stephen Toub [Wed, 27 Jul 2016 14:24:06 +0000 (10:24 -0400)]
Expose SerializationInfo.UpdateValue for corefx
ObjectManager in corefx needs to access to SerializationInfo.UpdateValue, which is currently internal. We don't need to expose UpdateValue in a public contract (which would necessitate adding it to desktop), but by making it public we can give corefx the functionality it needs without needing to move a whole bunch more down from corefx into the runtime.
Commit migrated from https://github.com/dotnet/coreclr/commit/
1db5d5a1d9ed28b088f1e808096ca9b330bb2bac
Evgeny Pavlov [Wed, 27 Jul 2016 13:27:17 +0000 (16:27 +0300)]
Add flag to check re-entrancy of JIT notification
Commit migrated from https://github.com/dotnet/coreclr/commit/
27e570de343590fb99a1d9862668ab13843e42be
Stephen Toub [Wed, 27 Jul 2016 13:05:17 +0000 (09:05 -0400)]
Merge pull request dotnet/coreclr#6485 from stephentoub/iobjref_model
Add IObjectReference to model.xml
Commit migrated from https://github.com/dotnet/coreclr/commit/
9ae2afca90b7c7c8db7e349c031fc40ae03cf749
Stephen Toub [Wed, 27 Jul 2016 11:12:47 +0000 (07:12 -0400)]
Add IObjectReference to model.xml
And expose a couple of missing properties on SerializationInfo in the mscorlib facade.
Commit migrated from https://github.com/dotnet/coreclr/commit/
d03f77f05a2fc3bf5dbcb1d2a63e1d4847306c99
Brian Sullivan [Wed, 27 Jul 2016 00:54:04 +0000 (17:54 -0700)]
Merge pull request dotnet/coreclr#6467 from briansull/multireg-return2
Enable multireg returns on Arm64
Commit migrated from https://github.com/dotnet/coreclr/commit/
c1a5ed7d94dbf52775719271a22a3b88d2ce98f8
Andy Ayers [Wed, 27 Jul 2016 00:42:37 +0000 (17:42 -0700)]
Merge pull request dotnet/coreclr#6401 from AndyAyersMS/PropagateOptMethodFlags
Jit: fix issues with optMethodFlags
Commit migrated from https://github.com/dotnet/coreclr/commit/
e87474f996da7118fd776c358682077a643dfec0
Rahul Kumar [Tue, 26 Jul 2016 23:49:30 +0000 (16:49 -0700)]
Merge pull request dotnet/coreclr#6418 from rahku/crossgen
Do not insert gcstress interrupt instruction at call to JIT_RareDisab…
Commit migrated from https://github.com/dotnet/coreclr/commit/
3516aaecba009c5d4da8e099a717d796912bb629
Brian Sullivan [Tue, 12 Jul 2016 20:52:20 +0000 (13:52 -0700)]
Enable multireg returns on Arm64
Added method IsMultiRegPassedType and updated IsMultiRegReturnType
Switched these methods to using getArgTypeForStruct and getReturnTypeForStruct
Removed IsRegisterPassable and used IsMultiRegReturned instead.
Converted lvIsMultiregStruct to use getArgTypeForStruct
Renamed varDsc->lvIsMultiregStruct() to compiler->lvaIsMultiregStruct(varDsc)
Skip calling getPrimitiveTypeForStruct when we have a struct larger than 8 bytes
Refactored ReturnTypeDesc::InitializeReturnType
Fixed missing SPK_ByReference case in InitializeReturnType
Fixes for RyiJIt x86 TYP_LONG return types and additional ARM64 work for full multireg support
Added ARM64 guard the uses of MAX_RET_MULTIREG_BYTES with FEATURE_MULTIREG_RET
Fixes for multireg returns in Arm64 Codegen
Added dumping of lvIsMultiRegArg and lvIsMultiRegRet in the assembly output
Added check and set of compFloatingPointUsed to InitializeStructReturnType
Fixes to handle JIT helper calls that say they return a TYP_STRUCT with no class handle available
Placed all of the second GC return reg under MULTIREG_HAS_SECOND_GC_RET ifdefs
Added the Arm64 VM changes from Rahul's PR 5175
Update getArgTypeForStruct for x86/arm32 so that it returns TYP_STRUCT for all pass by value cases
Fixes for the passing of 3,5,6 or 7 byte sized structs
Fix issue on ARM64 where we would back fill into x7 after passing a 16-byte struct on the stack
Implemented register shuffling for multi reg Call returns on Arm64
Fixed regression on Arm32 for struct args that are not multi regs
Updated Tests.Lst with 23 additional passing tests
Changes from codereview feedback
Commit migrated from https://github.com/dotnet/coreclr/commit/
feb33b9085f202ac9e6331fdf4dc02751d89cf8d
Stephen Toub [Tue, 26 Jul 2016 22:58:03 +0000 (18:58 -0400)]
Merge pull request dotnet/coreclr#6481 from stephentoub/add_serialization_facade
Add serialization primitives to mscorlib facade
Commit migrated from https://github.com/dotnet/coreclr/commit/
35e1d3bea2446a3ad6d5470b685a612b022052ad
David Mason [Tue, 26 Jul 2016 20:10:20 +0000 (13:10 -0700)]
Use the correct call to get properties, DeclaredProperties does not return properties for a base class
Commit migrated from https://github.com/dotnet/coreclr/commit/
9d7584d057021e0ca7cb69eefcda68ba011d2bd8
Andy Ayers [Tue, 26 Jul 2016 21:19:20 +0000 (14:19 -0700)]
Rewrite gtIsVtableAccess to avoid assert
Calling `HasIndex` from `gtIsVtableAccess` can leads to asserts as the
underly code checks to see if the addressing sub-expressions are
contained. But earlyProp runs early enough that it is not concerned with
containment. The code just needs to verify that there is a ref type base
and no index. Rework the code to do the checks directly.
Commit migrated from https://github.com/dotnet/coreclr/commit/
43e5f18ff826058a4de71491a378e5b94ecec919
Stephen Toub [Tue, 26 Jul 2016 21:11:39 +0000 (17:11 -0400)]
Add serialization primitives to mscorlib facade
Commit migrated from https://github.com/dotnet/coreclr/commit/
c10b4bfd6b076b70105edb32368ef2deec264b8a
Russell C Hadley [Tue, 26 Jul 2016 19:38:40 +0000 (12:38 -0700)]
Merge pull request dotnet/coreclr#6464 from russellhadley/HardenJitStartup
Harden stdout at startup
Commit migrated from https://github.com/dotnet/coreclr/commit/
f09a1f3a0d6e2654f546acd9cedfb9baa2267819
rhadley [Mon, 25 Jul 2016 17:40:27 +0000 (10:40 -0700)]
Harden stdout at startup
Check the results of the dup call to ensure that we're working with
a valid file handle. In the case where we aren't we leave the jitstdout
set to nullptr.
Commit migrated from https://github.com/dotnet/coreclr/commit/
7f106c520f7ffd353184e8c0db35e4155ac5e4ce
Jan Kotas [Tue, 26 Jul 2016 13:16:04 +0000 (06:16 -0700)]
Merge pull request dotnet/coreclr#6473 from dotnet-bot/from-tfs
Merge changes from TFS
Commit migrated from https://github.com/dotnet/coreclr/commit/
16988a40bb994b1f41c8735ee65bf0de81659cef
Gaurav Khanna [Tue, 26 Jul 2016 13:08:58 +0000 (06:08 -0700)]
Merge pull request dotnet/coreclr#6472 from dotnet-bot/UpdateDependencies20160726051912
Updating External dependencies to beta-24326-00
Commit migrated from https://github.com/dotnet/coreclr/commit/
9d085341704951a841456233c4965bc1c2e8a795
Rama Krishnan Raghupathy [Tue, 26 Jul 2016 06:30:07 +0000 (23:30 -0700)]
Addressing arm64 build break due to old compiler
[tfs-changeset: 1619335]
Commit migrated from https://github.com/dotnet/coreclr/commit/
faa87f0aaa1013de01631eb98edf928cf1900b2a
dotnet-bot [Tue, 26 Jul 2016 05:19:12 +0000 (05:19 +0000)]
Updating External dependencies to beta-24326-00
Commit migrated from https://github.com/dotnet/coreclr/commit/
da00a4174efb91f39120f8750f835cca5a33cd48
Sung-Jae Lee [Tue, 26 Jul 2016 04:09:36 +0000 (13:09 +0900)]
Fix copy check condition for native interop test library. (dotnet/coreclr#6468)
Commit migrated from https://github.com/dotnet/coreclr/commit/
f1b3fc7b704662903c753dc20681693a69266931
Geunsik Lim [Tue, 26 Jul 2016 03:59:47 +0000 (12:59 +0900)]
Linux/ARM: Fix +3000 bus errors of unit-test in case of O2/O3 levels (dotnet/coreclr#6379)
**PROBLEM**
This patch is to resolve +3000 bus errors that are generated whenever we use
the aggressive optimization levels of clang (issue dotnet/coreclr#5844 ).
When we enable the -O3 optimization level of the clang version(from clang 3.5
to clang 3.9(snapshot)), we have always got the lots of bus errors from the
coreCLR's unit tests. Actually, we can easily monitor SIGBUS signals (e.g.,
"misaligned memory access") with /proc/cpu/alignment facility in kernel space.
Using "echo 2 > /proc/cpu/alignment" makes Linux kernel fixes the problems
but the performance of the application will be degraded.
.source: http://lxr.free-electrons.com/source/Documentation/arm/mem_alignment
**VERSION 4**
. Use 'GET_UNALIGNED_VALXXX' macros in the CoreClr infra-structure without
any need for ifdefs.
**VERSION 3**
.Apply this PR on only Linux/ARM for different system environment (Windows).
Here is .NET CI Report on Windows: Compile Error
error C2146: syntax error: missing ';' before identifier '__unaligned_int32'
(compiling source file D:\j\workspace\checked_windo---
f6dc6fe4\src\jit\alloc.cpp)
[D:\j\workspace\checked_windo---
f6dc6fe4\bin\obj\Windows_NT.x64.Checked\src\jit\
crossgen\clrjit_crossgen.vcxproj] Indication 1
**VERSION 2**
.Add UNALIGNED_ARM macro for handling ARM core specific optimization levels.
.Add RISC-based ARM core handling into the existing infra-structure of the
platform adaptation layer (PAL) for aggressive optimization cases on Linux/ARM.
**VERSION 1**
Basically, RISC-based ARM architecture requires aligned access with 4byte reads.
In order to support aggressive optimization levels such as O2/O3, let's use
attribute keyword of aligned(1) instead of using memcpy(2) in into
a properly aligned buffer or the packing attribute.
**BACKGROUND**
According to ARM information center(infocenter.arm.com), By default,
the ARM compiler expects normal C and C++ pointers to point
to an aligned word in memory. A type qualifier __packed is provided to
enable unaligned pointer access. If you want to define a pointer to a word
that can be at any address (that is, that can be at a non-natural alignment),
you must specify this using the __packed qualifier when defining the pointer:
__packed int *pi; // pointer to unaligned int
However, clang/llvm does not support the __packed qualifier such as
__attribute__((packed)) or __attribute__((packed, aligned(4)))
In -O0 (debug build) the innermost block is emitted as the following assembly,
which works properly:
ldr r1, [r0, dotnet/coreclr#24]
ldr r2, [r0, dotnet/coreclr#20]
In -O3 (release build) however the compiler realizes these fields are adjacent
and generates this assembly:
ldrdeq r2, r3, [r0, dotnet/coreclr#20]
Unfortunately, vldr/ldrdb instructions always generate an alignment fault
(in practice). It seems that clang uses ldrb instruction although GCC uses
ldr instruction because armv7 supports unaligned ldr instruction.
Note: If some arm architectures (e.g., Linux/ARM Emulator) does not support
unaligned ldr, this issue is not generated with aggressive optimization
levels (e.g., -O2 and -O3).
* Case study: How does the ARM Compiler support unaligned accesses?
http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.faqs/ka15414.html
* Case study: Indicating unaligned access to Clang for ARM compatibility
http://stackoverflow.com/questions/9185811/indicating-unaligned-access-to-clang-for-arm-compatibility
* Case study: Chromium source for UnalignedLoad32() on ARM
https://github.com/nwjs/chromium.src/blob/nw15/third_party/cld/base/basictypes.h#L302
Signed-off-by: Geunsik Lim <geunsik.lim@samsung.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
561b64d2c210b4d999de7f1ac55756704eaba784
Rama krishnan Raghupathy [Tue, 26 Jul 2016 03:36:53 +0000 (20:36 -0700)]
Merge pull request dotnet/coreclr#6328 from ramarag/arm64debugger
Implementing Arm64 Debugger Requirements
Commit migrated from https://github.com/dotnet/coreclr/commit/
6e3c1a63e683b9c825c218efc6d75bf5e430f474
Rahul Kumar [Fri, 22 Jul 2016 19:48:55 +0000 (12:48 -0700)]
Do not insert gcstress interrupt instruction at call to JIT_RareDisableHelper
Commit migrated from https://github.com/dotnet/coreclr/commit/
b881558578b9922b5dd22be34aac1793c170b778
Rama Krishnan Raghupathy [Tue, 19 Jul 2016 02:40:05 +0000 (19:40 -0700)]
Arm64: Debugger
Instruction emulation for Break Points
Debugger::FuncEvalSetup
NativeWalker
ExceptionHijack
Exception intercept
Managed Return Value
Commit migrated from https://github.com/dotnet/coreclr/commit/
00e3695c1b51248f58f6b7e1f24f83a791a3b79e
Aditya Mandaleeka [Tue, 26 Jul 2016 01:10:35 +0000 (18:10 -0700)]
Fix offset to VectorRegister in i386/asmconstants.h.
Commit migrated from https://github.com/dotnet/coreclr/commit/
dae88fd583d964913a052f3005f8a4ee486fc07f
Vance Morrison [Mon, 25 Jul 2016 22:06:45 +0000 (15:06 -0700)]
Merge pull request dotnet/coreclr#6156 from justinvp/activitytracker_tostring
Avoid string concat array allocation in ActivityTracker
Commit migrated from https://github.com/dotnet/coreclr/commit/
c358f77a1ddcf31475450c40af64ad115259e622
Vance Morrison [Mon, 25 Jul 2016 22:00:29 +0000 (15:00 -0700)]
Merge pull request dotnet/coreclr#6158 from justinvp/tracing_stringcomparison
Specify StringComparison.Ordinal in System.Diagnostics.Tracing
Commit migrated from https://github.com/dotnet/coreclr/commit/
2a0bdd52dbe627486c586ad3f1d2ddb0e3ea7bc7
Stephen Toub [Mon, 25 Jul 2016 19:49:17 +0000 (15:49 -0400)]
Merge pull request dotnet/coreclr#6461 from stephentoub/update_buildtools
Update BuildTools to 1.0.26-prerelease-00625-01
Commit migrated from https://github.com/dotnet/coreclr/commit/
43a8caf9ce4b8a7c3516122eebfd0dcc2cb9ca2f
Stephen Toub [Mon, 25 Jul 2016 16:16:01 +0000 (12:16 -0400)]
Update BuildTools to 1.0.26-prerelease-00625-01
Commit migrated from https://github.com/dotnet/coreclr/commit/
a5772785e2afade5fd9840dddb6d539ff7994902
Gaurav Khanna [Mon, 25 Jul 2016 13:23:59 +0000 (06:23 -0700)]
Merge pull request dotnet/coreclr#6456 from dotnet-bot/UpdateDependencies20160725083514
Updating CoreClr dependencies to beta-24325-02
Commit migrated from https://github.com/dotnet/coreclr/commit/
6fd8cd393aabce43eefa20e6e965f0c10d65e7de
Gaurav Khanna [Mon, 25 Jul 2016 13:23:29 +0000 (06:23 -0700)]
Merge pull request dotnet/coreclr#6453 from dotnet-bot/UpdateDependencies20160725061810
Updating External dependencies to beta-24325-00
Commit migrated from https://github.com/dotnet/coreclr/commit/
bf609c3344c2d78ad23aa35b3072af5f69d9b16e
Shahid Khan [Mon, 25 Jul 2016 13:07:15 +0000 (18:07 +0500)]
[Documentation] Projects Use licences (dotnet/coreclr#6442)
address feedback
Commit migrated from https://github.com/dotnet/coreclr/commit/
ab744a4d2fe958935f0cba35709c3463bd93e4d3
Evgeny Pavlov [Mon, 25 Jul 2016 12:48:25 +0000 (15:48 +0300)]
Fix inlining of '__jit_debug_register_code' on ARM32 release build
Commit migrated from https://github.com/dotnet/coreclr/commit/
0fdb42a7d63c0038426abe6be46b973e47131505
dotnet-bot [Mon, 25 Jul 2016 08:35:13 +0000 (08:35 +0000)]
Updating CoreClr dependencies to beta-24325-02
Commit migrated from https://github.com/dotnet/coreclr/commit/
12d6d3ac8dc7f850f413bf3d91831adc62664682
dotnet-bot [Mon, 25 Jul 2016 06:18:10 +0000 (06:18 +0000)]
Updating External dependencies to beta-24325-00
Commit migrated from https://github.com/dotnet/coreclr/commit/
77e6a204003a440a5bd22d59e06fecf91bd42187
Gaurav Khanna [Mon, 25 Jul 2016 04:19:33 +0000 (21:19 -0700)]
Merge pull request dotnet/coreclr#6449 from dotnet-bot/UpdateDependencies20160725123214
Updating CoreClr dependencies to beta-24325-01
Commit migrated from https://github.com/dotnet/coreclr/commit/
70503892983b710f266122dd255d2b4e177eb79c
Bruce Forstall [Mon, 25 Jul 2016 04:13:19 +0000 (21:13 -0700)]
Merge pull request dotnet/coreclr#6342 from BruceForstall/tailcall
RyuJIT/x86: implement tailcall via helper
Commit migrated from https://github.com/dotnet/coreclr/commit/
8604efafe86be6720e95cef71ad58d127130aab5
dotnet-bot [Mon, 25 Jul 2016 00:32:14 +0000 (00:32 +0000)]
Updating CoreClr dependencies to beta-24325-01
Commit migrated from https://github.com/dotnet/coreclr/commit/
463f10f0b3903251ce5590742003c98e2295ebb9
Gaurav Khanna [Sun, 24 Jul 2016 21:39:06 +0000 (14:39 -0700)]
Merge pull request dotnet/coreclr#6445 from dotnet-bot/UpdateDependencies20160724042519
Updating CoreClr dependencies to beta-24324-03
Commit migrated from https://github.com/dotnet/coreclr/commit/
1bb9e2df37f888ca9963dbecd0c44188a7a4a355
dotnet-bot [Sun, 24 Jul 2016 16:25:19 +0000 (16:25 +0000)]
Updating CoreClr dependencies to beta-24324-03
Commit migrated from https://github.com/dotnet/coreclr/commit/
0f5d1f8191948fd89b68310045850852bf89b6e7
Gaurav Khanna [Sun, 24 Jul 2016 13:49:17 +0000 (06:49 -0700)]
Merge pull request dotnet/coreclr#6443 from dotnet-bot/UpdateDependencies20160724082829
Updating CoreClr dependencies to beta-24324-02
Commit migrated from https://github.com/dotnet/coreclr/commit/
e2a877e8ac91a605464525ac13777bebdddb321c
Oleg Demchenko [Sun, 24 Jul 2016 12:08:51 +0000 (09:08 -0300)]
Fix up for grabs issues link in contributing workflow doc (dotnet/coreclr#6437)
Current link to up for grabs issues for CoreCLR repository leads
to the empty list because there's not such label as "up for grabs"
(existing label name is "up-for-grabs"). Ideally both CoreCLR
and CoreFX repos should use exactly the same label for public
issues to avoid possible mistakes.
Commit migrated from https://github.com/dotnet/coreclr/commit/
cf9d60eab4a51d2d0862df406f46afc4878b8512
dotnet-bot [Sun, 24 Jul 2016 08:28:29 +0000 (08:28 +0000)]
Updating CoreClr dependencies to beta-24324-02
Commit migrated from https://github.com/dotnet/coreclr/commit/
60efc635e01709a759dc14676eb94f0181675732
Bruce Forstall [Thu, 14 Jul 2016 15:06:25 +0000 (08:06 -0700)]
RyuJIT/x86: implement tailcall via helper
Fixes dotnet/coreclr#4185
Also: (1) added a class to simplify non-standard arg handling in fgMorphArgs(),
(2) fixed minor tree output alignment bug.
Commit migrated from https://github.com/dotnet/coreclr/commit/
fe4ac43dfd4a22141abde24503929f1fa5f8f4d6