platform/upstream/dotnet/runtime.git
8 years agoDon't add nop padding for rejitting a funclet prolog.
Lubomir Litchev [Fri, 1 Apr 2016 06:15:21 +0000 (23:15 -0700)]
Don't add nop padding for rejitting a funclet prolog.

This is along standing issue in RyuJit. When ngenning the crossgen tool
passes CORJIT_FLG_PROF_REJIT_NOPS flag. The padding for rejitting should
be added only for the main function and not the funclets when compiling a
method. Trying to generate a rejit padding for a funclet in debug and
checked build results in a failing assertion.

Fixes issue 3601.

Commit migrated from https://github.com/dotnet/coreclr/commit/40409548f182d26c75a0b850484c660ab5987281

8 years agoMerge pull request dotnet/coreclr#4007 from adityamandaleeka/extest
Aditya Mandaleeka [Thu, 31 Mar 2016 21:29:35 +0000 (14:29 -0700)]
Merge pull request dotnet/coreclr#4007 from adityamandaleeka/extest

Add test for exception handling on foreign threads.

Commit migrated from https://github.com/dotnet/coreclr/commit/d0c0c99bf258c97b09d85b14ce66a2016d752a05

8 years agoMerge pull request dotnet/coreclr#3295 from chuck-mitchell/feature
Chuck Mitchell [Thu, 31 Mar 2016 20:51:52 +0000 (13:51 -0700)]
Merge pull request dotnet/coreclr#3295 from chuck-mitchell/feature

Initial version of CoreCLR JIT Performance Harness

Commit migrated from https://github.com/dotnet/coreclr/commit/503251d26cfa811cda361ae28ab32a241b11fcef

8 years agoMerge pull request dotnet/coreclr#4015 from sejongoh/update_dotnet_cli_path
Sejong Oh [Thu, 31 Mar 2016 20:47:02 +0000 (13:47 -0700)]
Merge pull request dotnet/coreclr#4015 from sejongoh/update_dotnet_cli_path

Fix tests/setup-runtime-dependencies.sh as per dotnet cli changes

Commit migrated from https://github.com/dotnet/coreclr/commit/1e78c916be0f286c797a07a54fce0f5159e7949c

8 years agoMerge pull request dotnet/coreclr#4006 from jashook/arm32_ci_pr
Jarret Shook [Thu, 31 Mar 2016 20:35:07 +0000 (13:35 -0700)]
Merge pull request dotnet/coreclr#4006 from jashook/arm32_ci_pr

Add arm32 build per pr.

Commit migrated from https://github.com/dotnet/coreclr/commit/6958194a4263e5e876761964430e170c698a38d5

8 years agoMerge pull request dotnet/coreclr#4024 from AlexGhiondea/mscorlibBuild
AlexGhiondea [Thu, 31 Mar 2016 19:48:06 +0000 (12:48 -0700)]
Merge pull request dotnet/coreclr#4024 from AlexGhiondea/mscorlibBuild

Fix issues with building mscorlib inside VS

Commit migrated from https://github.com/dotnet/coreclr/commit/5caeaa19a838acc48d96706093226f160493b777

8 years agoMerge pull request dotnet/coreclr#3953 from LLITCHEV/Issue3604
Lubomir Litchev [Thu, 31 Mar 2016 18:52:33 +0000 (11:52 -0700)]
Merge pull request dotnet/coreclr#3953 from LLITCHEV/Issue3604

Make sure 4 outgoing arg slots are generated for methods that call

Commit migrated from https://github.com/dotnet/coreclr/commit/6a48c498ae50dead47383bb371f8dcfe1d3751ac

8 years agoMerge pull request dotnet/coreclr#4029 from pgavlin/Host64Bit
Pat Gavlin [Thu, 31 Mar 2016 18:26:16 +0000 (11:26 -0700)]
Merge pull request dotnet/coreclr#4029 from pgavlin/Host64Bit

Replace uses of _WIN64 with _HOST_64BIT_.

Commit migrated from https://github.com/dotnet/coreclr/commit/23508cb6cc0f99dde29808679711ca098c95207d

8 years agoReplace uses of _WIN64 with _HOST_64BIT_.
Pat Gavlin [Thu, 31 Mar 2016 17:02:12 +0000 (10:02 -0700)]
Replace uses of _WIN64 with _HOST_64BIT_.

This terminology is more accurate. This change also corrects
a few bits of code that were making target-related decisions
based on the host's bitness.

Commit migrated from https://github.com/dotnet/coreclr/commit/1e9cadbd87fffbb4342a5090941b349a4d0a2fd9

8 years agoMerge pull request dotnet/coreclr#3914 from cmckinsey/GitHub_3600
Chris McKinsey [Thu, 31 Mar 2016 17:57:03 +0000 (10:57 -0700)]
Merge pull request dotnet/coreclr#3914 from cmckinsey/GitHub_3600

Fix for stack overflow in CFG/DOM analysis GHdotnet/coreclr#3600

Commit migrated from https://github.com/dotnet/coreclr/commit/965c6a7517541bf4df96e225c562af01972c52e2

8 years agoMerge pull request dotnet/coreclr#4030 from kyulee1/updateryujit
Kyungwoo Lee [Thu, 31 Mar 2016 17:52:16 +0000 (10:52 -0700)]
Merge pull request dotnet/coreclr#4030 from kyulee1/updateryujit

Update RyuJit version

Commit migrated from https://github.com/dotnet/coreclr/commit/ace460f20ba8fac014923805abda15c2e83b5583

8 years agoUpdate RyuJit version
Kyungwoo Lee [Thu, 31 Mar 2016 17:51:04 +0000 (10:51 -0700)]
Update RyuJit version

Commit migrated from https://github.com/dotnet/coreclr/commit/9cd61a9aba4ea783a85b73754c182344220d9d05

8 years agoAdd arm32 build per pr.
jashook [Thu, 31 Mar 2016 17:24:44 +0000 (17:24 +0000)]
Add arm32 build per pr.

Commit migrated from https://github.com/dotnet/coreclr/commit/91af0e517a246935b1d4629d93a0b031e941a81f

8 years agoMerge pull request dotnet/coreclr#4018 from mikem8361/sosplugfix
Mike McLaughlin [Thu, 31 Mar 2016 16:56:46 +0000 (09:56 -0700)]
Merge pull request dotnet/coreclr#4018 from mikem8361/sosplugfix

sos fails to load if binaries are copied to different location than built

Commit migrated from https://github.com/dotnet/coreclr/commit/7aa7212428eda7e244585775c5376523be79ec0e

8 years agoMerge pull request dotnet/coreclr#4009 from pgavlin/EmitXarchClarify
Pat Gavlin [Thu, 31 Mar 2016 15:53:12 +0000 (08:53 -0700)]
Merge pull request dotnet/coreclr#4009 from pgavlin/EmitXarchClarify

Clarify register aliasing in the X86 encoder.

Commit migrated from https://github.com/dotnet/coreclr/commit/4e2b9b6be2b59a2cbf6663cccd6bc1b6091f6eac

8 years agoMerge pull request dotnet/coreclr#4014 from dagood/upgrade-cli
Stephen Toub [Thu, 31 Mar 2016 13:26:08 +0000 (09:26 -0400)]
Merge pull request dotnet/coreclr#4014 from dagood/upgrade-cli

Upgrade dotnet cli to take win7 fix

Commit migrated from https://github.com/dotnet/coreclr/commit/a91efd26f26ef7f28023380cb73ec7766cac620d

8 years agoMerge pull request dotnet/coreclr#3967 from stephentoub/empty_memorystream
Stephen Toub [Thu, 31 Mar 2016 13:25:23 +0000 (09:25 -0400)]
Merge pull request dotnet/coreclr#3967 from stephentoub/empty_memorystream

Avoid array allocation in "new MemoryStream()"

Commit migrated from https://github.com/dotnet/coreclr/commit/da1d0bfc093df8ab3d1f7aec268dcc3fbbf9bb98

8 years agoFix tests/setup-runtime-dependencies.sh as per dotnet cli changes
Sejong OH [Thu, 31 Mar 2016 01:23:15 +0000 (18:23 -0700)]
Fix tests/setup-runtime-dependencies.sh as per dotnet cli changes

Commit migrated from https://github.com/dotnet/coreclr/commit/7bbd985be6eb703a2e6f3822acae68c7305dd325

8 years agoMerge pull request dotnet/coreclr#4021 from dotnet-bot/from-tfs
Jan Kotas [Thu, 31 Mar 2016 07:44:55 +0000 (00:44 -0700)]
Merge pull request dotnet/coreclr#4021 from dotnet-bot/from-tfs

Merge changes from TFS

Commit migrated from https://github.com/dotnet/coreclr/commit/d3502c29c511292d0c6046b1aafe87295d2372d9

8 years agoWe should no longer need to use the '/test:moduleName=CommonLanguageRuntimeLibrary...
Alex Ghiondea [Thu, 31 Mar 2016 06:49:20 +0000 (23:49 -0700)]
We should no longer need to use the '/test:moduleName=CommonLanguageRuntimeLibrary' flag when building mscorlib.

Commit migrated from https://github.com/dotnet/coreclr/commit/42de492c0390c9dea8417cfe30a0046098839d49

8 years agoDo not use the 'Visible' metadata on the items in the ItemGroup 'MscorlibSources'
Alex Ghiondea [Thu, 31 Mar 2016 06:44:54 +0000 (23:44 -0700)]
Do not use the 'Visible' metadata on the items in the ItemGroup 'MscorlibSources'

We are going to import that itemgroup into the 'Compile' ItemGroup which will
make them show up in VS. Having the 'Visible' metadata on the items means we end
up with duplicated items in Solution Explorer.

Commit migrated from https://github.com/dotnet/coreclr/commit/5fa60fc71b34b63c4202411cb6a7b1f244b7e903

8 years agoMerge pull request dotnet/coreclr#4008 from leemgs/upstream-typo-build-mode
Jan Kotas [Thu, 31 Mar 2016 06:29:23 +0000 (23:29 -0700)]
Merge pull request dotnet/coreclr#4008 from leemgs/upstream-typo-build-mode

Improve description of build type spelling for consistency

Commit migrated from https://github.com/dotnet/coreclr/commit/0cce34c8976fd887bee0cf877c36b9abfa555635

8 years agoMerge pull request dotnet/coreclr#4020 from JohnChen0/master
Jan Kotas [Thu, 31 Mar 2016 06:28:38 +0000 (23:28 -0700)]
Merge pull request dotnet/coreclr#4020 from JohnChen0/master

Fix CrossGen documentation error

Commit migrated from https://github.com/dotnet/coreclr/commit/255c421c4a21e2f603c49d8233bfb77c7bb1cbdc

8 years agoMerge pull request dotnet/coreclr#3944 from leemgs/upstream-cross-arm-stripping-symbols
Jan Kotas [Thu, 31 Mar 2016 06:25:21 +0000 (23:25 -0700)]
Merge pull request dotnet/coreclr#3944 from leemgs/upstream-cross-arm-stripping-symbols

[Linux/ARM32] objcopy: Support cross-build  for stripping symbols.

Commit migrated from https://github.com/dotnet/coreclr/commit/2d67d180baf9b8a5cbcb10dd49dd02e38bd684d8

8 years agoMerge pull request dotnet/coreclr#3989 from bbowyersmyth/StringEquals
Jan Kotas [Thu, 31 Mar 2016 06:24:29 +0000 (23:24 -0700)]
Merge pull request dotnet/coreclr#3989 from bbowyersmyth/StringEquals

Port String.Equals from CoreRT

Commit migrated from https://github.com/dotnet/coreclr/commit/7b8fc40b13a1000a8b8617ec8be7ec0456a37573

8 years agoMerge pull request dotnet/coreclr#3981 from manu-silicon/context
Jan Kotas [Thu, 31 Mar 2016 06:22:44 +0000 (23:22 -0700)]
Merge pull request dotnet/coreclr#3981 from manu-silicon/context

Fix RtlRestoreContext

Commit migrated from https://github.com/dotnet/coreclr/commit/3be49cd4b6f25ad315ad0c48e53dd46c4e9f39ba

8 years agoFix CrossGen documentation error
John Chen [Thu, 31 Mar 2016 05:35:03 +0000 (22:35 -0700)]
Fix CrossGen documentation error

Commit migrated from https://github.com/dotnet/coreclr/commit/79d8f0478049271c370c2b2feb99df4b466717d8

8 years agoFix RtlRestoreContext
Manu [Wed, 30 Mar 2016 01:56:40 +0000 (10:56 +0900)]
Fix RtlRestoreContext

Due to macro expansion, the previous computed offsets to restore Lr and Pc
were incorrect, causing a memory corruption (see Issue dotnet/coreclr#3856 for C# code
reproducing that problem).
Made assembly more obvious when just restoring Sp, Lr and Pc.

Commit migrated from https://github.com/dotnet/coreclr/commit/8b37a203524b88c9b003e9779822fb8fdf77e119

8 years agoMerge pull request dotnet/coreclr#4016 from dotnet/revert-3960-check_runtime_to_pull_...
Jan Kotas [Thu, 31 Mar 2016 04:31:02 +0000 (21:31 -0700)]
Merge pull request dotnet/coreclr#4016 from dotnet/revert-3960-check_runtime_to_pull_coredistools

Revert "Add architeture information to a script downloading coredistools"

Commit migrated from https://github.com/dotnet/coreclr/commit/99329c67db66a4def852a681c240569553026e19

8 years agoFix R2R fixups for delegate ctors
Jan Kotas [Thu, 31 Mar 2016 03:49:26 +0000 (20:49 -0700)]
Fix R2R fixups for delegate ctors

- Add getReadyToRunDelegateHelper to JIT-EE interface. This method has an extra argument describing the type of the delegate. This argument is required to emit correct fixups.
- Call the new method in both JIT and JIT32
- Add the new method to superpmi
- Bump minor version of R2R file format
- Add regression test for dotnet/coreclr#3975 to R2R unit test

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

[tfs-changeset: 1591698]

Commit migrated from https://github.com/dotnet/coreclr/commit/c4378e7f0773577e9924ff4ebad0cc3af43fb3a8

8 years agoMerge pull request dotnet/coreclr#4017 from mikem8361/issue3987
Mike McLaughlin [Thu, 31 Mar 2016 03:34:15 +0000 (20:34 -0700)]
Merge pull request dotnet/coreclr#4017 from mikem8361/issue3987

Fixed issue dotnet/coreclr#3987 "Debugger fails to stop on entry due to stack walk failure"

Commit migrated from https://github.com/dotnet/coreclr/commit/184a61dd82d7da989d630dcdbcecdb1b9c3e316e

8 years agoFixed issue dotnet/coreclr#3987 "Debugger fails to stop on entry due to stack walk...
Mike McLaughlin [Thu, 31 Mar 2016 03:30:13 +0000 (20:30 -0700)]
Fixed issue dotnet/coreclr#3987 "Debugger fails to stop on entry due to stack walk failure"

By initializing m_rgHijackFunction to NULL.

Commit migrated from https://github.com/dotnet/coreclr/commit/3cd2f88c398cfba986202a9766047b8fc231602d

8 years agoAdd back explicitly loading mscordaccore so libsos will properly load when installed...
Mike McLaughlin [Wed, 30 Mar 2016 01:03:01 +0000 (18:03 -0700)]
Add back explicitly loading mscordaccore so libsos will properly load when installed at a different location than it was built.

Commit migrated from https://github.com/dotnet/coreclr/commit/0572670952204fe3d861044a5a6b7c5297de80d0

8 years agoMerge pull request dotnet/coreclr#3982 from mikem8361/readmemoryav2
Mike McLaughlin [Thu, 31 Mar 2016 03:24:31 +0000 (20:24 -0700)]
Merge pull request dotnet/coreclr#3982 from mikem8361/readmemoryav2

Fix ReadMemory AV.

Commit migrated from https://github.com/dotnet/coreclr/commit/1bc24d14dce4876197492211f4989b656f08aedb

8 years agoRevert "Add architeture information to a script downloading coredistools"
Jan Kotas [Thu, 31 Mar 2016 03:20:42 +0000 (20:20 -0700)]
Revert "Add architeture information to a script downloading coredistools"

Commit migrated from https://github.com/dotnet/coreclr/commit/72c2da31f0f4136daa5be81ef24e1b7289b781fb

8 years agoMerge pull request dotnet/coreclr#4002 from kyulee1/fixcmd
Kyungwoo Lee [Thu, 31 Mar 2016 03:06:01 +0000 (20:06 -0700)]
Merge pull request dotnet/coreclr#4002 from kyulee1/fixcmd

ARM64: Running cmd instead of exe

Commit migrated from https://github.com/dotnet/coreclr/commit/7b5202380fd78006592564d954f445c63495fb97

8 years agoGetting SOS to work on ARm64:
Rama Krishnan Raghupathy [Thu, 31 Mar 2016 03:00:57 +0000 (20:00 -0700)]
Getting SOS to work on ARm64:

     This mainly involved DACizing the VM code.
      A bulk edit for changing RUNTIME_FUNCTION to T_RUNTIME_FUNCTION

[tfs-changeset: 1591667]

Commit migrated from https://github.com/dotnet/coreclr/commit/6a2e3b34c3c9ac32456d38567b9f44ab6aea2f63

8 years agoARM64: Running cmd instead of exe
Kyungwoo Lee [Wed, 30 Mar 2016 22:02:21 +0000 (15:02 -0700)]
ARM64: Running cmd instead of exe

Our test framework (smarty) directly runs test executable on corerun.exe.
But some of tests expect arguments via environment variable specified in .cmd.
The fix is to change the test list file to run .cmd. So the expected pass
value is also updated to 0 instead of 100. Now we don't need to pass /host
that specifies corerun.exe.
3 additional tests are now passed:
 InterlockedAddLongWithSubtract/CompareExchangeTString/Polyrec

Commit migrated from https://github.com/dotnet/coreclr/commit/cc5518a491dd31a308b205bc52de31e834b47e72

8 years agoUpgrade dotnet cli to take win7 fix.
Davis Goodin [Wed, 30 Mar 2016 22:23:43 +0000 (17:23 -0500)]
Upgrade dotnet cli to take win7 fix.

Commit migrated from https://github.com/dotnet/coreclr/commit/24311cd3d73944cfdee5534f5b124affb366e21b

8 years agoChange spelling of build type for consistenty
Geunsik Lim [Wed, 30 Mar 2016 22:47:42 +0000 (07:47 +0900)]
Change spelling of build type for consistenty

This is trivial patch.
Let's display a help manual with lower case for better consistency
when the developers run "./build.sh --help".

Signed-off-by: Geunsik Lim <geunsik.lim@samsung.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/91aef995434cbe1646b2661cc4111ecfc1e6b487

8 years agoMove dllexport to platformdefines.h.
Aditya Mandaleeka [Thu, 31 Mar 2016 00:04:53 +0000 (17:04 -0700)]
Move dllexport to platformdefines.h.

Commit migrated from https://github.com/dotnet/coreclr/commit/064744a23663cb0a34c6364618c3be308ee87933

8 years agoClarify register aliasing in the X86 encoder.
Pat Gavlin [Wed, 30 Mar 2016 22:34:51 +0000 (15:34 -0700)]
Clarify register aliasing in the X86 encoder.

Certain registers are aliased with control bits in the ModRM byte
of an X86 instruction. Encapsulate the checks that accommodate this
aliasing into a pair of functions.

Commit migrated from https://github.com/dotnet/coreclr/commit/850f3124db3cbcac3f5db192906ff7234564f66f

8 years agoAdd test for exception handling on foreign threads.
Aditya Mandaleeka [Wed, 30 Mar 2016 03:11:55 +0000 (20:11 -0700)]
Add test for exception handling on foreign threads.

Commit migrated from https://github.com/dotnet/coreclr/commit/77f4b171604a66b14e85f25be2167aaa09e4d5ba

8 years agoMerge pull request dotnet/coreclr#4003 from briansull/update-tests-lst
Brian Sullivan [Wed, 30 Mar 2016 21:54:40 +0000 (14:54 -0700)]
Merge pull request dotnet/coreclr#4003 from briansull/update-tests-lst

Update with 10 additional passing tests, and two moved to unstable

Commit migrated from https://github.com/dotnet/coreclr/commit/531de762ff569f52049e35cb69032b9c3da22238

8 years agoMerge pull request dotnet/coreclr#4005 from dotnet/revert-3943-upstream-gawk-char...
Jan Kotas [Wed, 30 Mar 2016 21:34:59 +0000 (14:34 -0700)]
Merge pull request dotnet/coreclr#4005 from dotnet/revert-3943-upstream-gawk-char-class

Revert "Fix bracket expression matches a character at gawk"

Commit migrated from https://github.com/dotnet/coreclr/commit/ef38b9d88463c427896457f7f03b3c2976c9b307

8 years agoRevert "Fix bracket expression matches a character at gawk"
Jan Kotas [Wed, 30 Mar 2016 21:32:52 +0000 (14:32 -0700)]
Revert "Fix bracket expression matches a character at gawk"

Commit migrated from https://github.com/dotnet/coreclr/commit/e65dcb5321a86f0d4e1cee92e2f36f8c84013904

8 years agoUpdate with 10 additional pasing tests, and two moved to unstable
Brian Sullivan [Wed, 30 Mar 2016 18:31:00 +0000 (11:31 -0700)]
Update with 10 additional pasing tests, and two moved to unstable

Commit migrated from https://github.com/dotnet/coreclr/commit/575eecb4ae0415f2be2196a0435c79ff6365eff9

8 years agoMerge pull request dotnet/coreclr#3955 from davmason/master
David Mason [Wed, 30 Mar 2016 20:15:29 +0000 (13:15 -0700)]
Merge pull request dotnet/coreclr#3955 from davmason/master

Fixing tracelogging on linux

Commit migrated from https://github.com/dotnet/coreclr/commit/d47a3984e4f3277337c710579407d3a5e1d94714

8 years agoMake sure 4 outgoing arg slots are generated for methods that call
Lubomir Litchev [Sun, 27 Mar 2016 21:31:09 +0000 (14:31 -0700)]
Make sure 4 outgoing arg slots are generated for methods that call
THROW_HELPERS for Windows x64.

This is a long standing bug in RyuJit.
When compiling a method for debug mode if there is a call to THROW_HELPER
(and it is the only call) the frame for the method that calls the
THROW_HELPER is not properly set - it is missing the 4 ougoing arg slots.

This was discovered by R2R codegen. In normal jitting of such method in
debug mode the jit always adds a call to CORINFO_HELP_DBG_IS_JUST_MY_CODE
early enough, so the frame size will be properly calculated. This call is
not generated for R2R.

If the method generated for R2R has only a call to a throw helper
and it is compiled for debug mode, the call is not generated in the IR.
The CodeGen generates the call directly instead. The call is generated
after the stack frame is calculated. This leads to improperly generated
stack frame that doen't have the 4 outgoing arg slots that the Windows x64
ABI requires.

Compiling such method for release mode is never a problem since in
FlowGraph we always generate IR for a block that contains the
THROW_HELPER. This happens before the stack frame is calculated, so the 4
outgoing stack slots are always calculated.

Commit migrated from https://github.com/dotnet/coreclr/commit/8df64093caa4ce1720970d38140261822247b3ae

8 years agoMerge pull request dotnet/coreclr#3996 from kyulee1/fixconv
Kyungwoo Lee [Wed, 30 Mar 2016 18:01:52 +0000 (11:01 -0700)]
Merge pull request dotnet/coreclr#3996 from kyulee1/fixconv

ARM64: Fix conversion double to unsigned int

Commit migrated from https://github.com/dotnet/coreclr/commit/831ce3c7db6b532420dcb778918a7554a6fc2965

8 years agoARM64: Fix conversion double to unsigned int
Kyungwoo Lee [Wed, 30 Mar 2016 16:16:26 +0000 (09:16 -0700)]
ARM64: Fix conversion double to unsigned int

For ARM/ARM64, converting negative double to unsigned int is 0, which aligns with all native compilers.
I also removed the part of tests that depends on architecture specific values.
Since ARM64 tests were prepopulated, I just updated the tag so that we can update the tests later.

Commit migrated from https://github.com/dotnet/coreclr/commit/bbfdcebb6bed3ed646bb5e17028166bcc9404653

8 years agoMerge pull request dotnet/coreclr#3960 from sejongoh/check_runtime_to_pull_coredistools
Sejong Oh [Wed, 30 Mar 2016 17:33:31 +0000 (10:33 -0700)]
Merge pull request dotnet/coreclr#3960 from sejongoh/check_runtime_to_pull_coredistools

Add architeture information to a script downloading coredistools

Commit migrated from https://github.com/dotnet/coreclr/commit/debff19365d06a66fc3cd50342ded48518a25f01

8 years agoMerge pull request dotnet/coreclr#3983 from svick/getresourcestring-culture
Jan Kotas [Wed, 30 Mar 2016 17:26:28 +0000 (10:26 -0700)]
Merge pull request dotnet/coreclr#3983 from svick/getresourcestring-culture

Remove unused CultureInfo from GetResourceString

Commit migrated from https://github.com/dotnet/coreclr/commit/918bb2e8bfb46d44291507d4b0d017f8aba5b0d8

8 years agoFixing contracts violations, and adding missing contracts to some APIs.
Fadi Hanna [Wed, 30 Mar 2016 16:27:04 +0000 (09:27 -0700)]
Fixing contracts violations, and adding missing contracts to some APIs.
Changing native format reader failure mode to fail fast instead of throwing and exception.

[tfs-changeset: 1591477]

Commit migrated from https://github.com/dotnet/coreclr/commit/a62cb372fb7edf1cf7d7b783bfa653f58dc68a7a

8 years agoMerge pull request dotnet/coreclr#3994 from dagood/upgrade-cli
Davis Goodin [Wed, 30 Mar 2016 16:10:54 +0000 (11:10 -0500)]
Merge pull request dotnet/coreclr#3994 from dagood/upgrade-cli

Apply dotnet cli upgrade also to tests\dir.props

Commit migrated from https://github.com/dotnet/coreclr/commit/72f6c4e1d552474f80b1814288eeb79e09e5760f

8 years agoApply dotnet cli upgrade also to tests\dir.props.
Davis Goodin [Wed, 30 Mar 2016 16:07:30 +0000 (11:07 -0500)]
Apply dotnet cli upgrade also to tests\dir.props.

Commit migrated from https://github.com/dotnet/coreclr/commit/f9fc3284d2c864aff5b685548470813359a07d02

8 years agoMerge pull request dotnet/coreclr#3993 from dagood/upgrade-cli
Stephen Toub [Wed, 30 Mar 2016 16:02:24 +0000 (12:02 -0400)]
Merge pull request dotnet/coreclr#3993 from dagood/upgrade-cli

Upgrade dotnet cli version

Commit migrated from https://github.com/dotnet/coreclr/commit/a4bb869f1091f2514f5cd705a5e3548d0d28b62a

8 years agoUpgrade dotnet cli version.
Davis Goodin [Wed, 30 Mar 2016 15:03:53 +0000 (10:03 -0500)]
Upgrade dotnet cli version.

Commit migrated from https://github.com/dotnet/coreclr/commit/e2aa428f40d85b84f7de4a13124dcd96ec600a1c

8 years agoMerge pull request dotnet/coreclr#3943 from leemgs/upstream-gawk-char-class
Jan Kotas [Wed, 30 Mar 2016 07:10:26 +0000 (00:10 -0700)]
Merge pull request dotnet/coreclr#3943 from leemgs/upstream-gawk-char-class

Fix bracket expression matches a character at gawk

Commit migrated from https://github.com/dotnet/coreclr/commit/817fec1799d13c089b14ed168f8c691b00e4d5e9

8 years agoMerge pull request dotnet/coreclr#3984 from svick/patch-1
Jan Kotas [Wed, 30 Mar 2016 07:08:35 +0000 (00:08 -0700)]
Merge pull request dotnet/coreclr#3984 from svick/patch-1

Removed obsolete comment from Environment.GetResourceString

Commit migrated from https://github.com/dotnet/coreclr/commit/a88f97abc317021ac742a6409791b26fc98068c7

8 years agoPort String.Equals from CoreRT
Bruce Bowyer-Smyth [Wed, 30 Mar 2016 06:58:51 +0000 (16:58 +1000)]
Port String.Equals from CoreRT

Commit migrated from https://github.com/dotnet/coreclr/commit/c08d9b60badc7532d5ff408045976224157f35a9

8 years agoMerge pull request dotnet/coreclr#3985 from myungjoo/trivialfix/macro1
Jan Kotas [Wed, 30 Mar 2016 03:27:37 +0000 (20:27 -0700)]
Merge pull request dotnet/coreclr#3985 from myungjoo/trivialfix/macro1

Trivial fix: dangerous macro usage

Commit migrated from https://github.com/dotnet/coreclr/commit/5f5a98309136ec5693a87f5d5cb77c8f98012f90

8 years agoTrivial fix: dangerous macro usage
MyungJoo Ham [Wed, 30 Mar 2016 02:43:48 +0000 (11:43 +0900)]
Trivial fix: dangerous macro usage

Add parenthesis to make the macro safe.

Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/a7405648da7544d0bd1a6728986ced8b0f189638

8 years agoRemoved obsolete comment from Environment.GetResourceString
Petr Onderka [Wed, 30 Mar 2016 02:24:23 +0000 (04:24 +0200)]
Removed obsolete comment from Environment.GetResourceString

Fixes dotnet/coreclr#3979

Commit migrated from https://github.com/dotnet/coreclr/commit/0e3c5de2f004916e6cb640fe83e2781a6029500d

8 years agoremove unused CultureInfo from GetResourceString
Petr Onderka [Wed, 30 Mar 2016 02:08:50 +0000 (04:08 +0200)]
remove unused CultureInfo from GetResourceString

Commit migrated from https://github.com/dotnet/coreclr/commit/6408f73fed3864806f921f0175928efb1dfccab8

8 years agoFix ReadMemory AV.
Mike McLaughlin [Wed, 30 Mar 2016 01:06:25 +0000 (18:06 -0700)]
Fix ReadMemory AV.

Use simple probing to validate read/write memory with a try/catch and explicit h/w exception holder.

Put probing in separate noinline and optnone function for optimized builds.

Fix assert in exception code mapping in context.cpp by handling SIGSEGV subcode SI_KERNEL.

Commit migrated from https://github.com/dotnet/coreclr/commit/4a268f7141f7f2528a8f1c5437837046bd21664c

8 years agoMerge pull request dotnet/coreclr#3974 from briansull/update-tests-lst
Brian Sullivan [Wed, 30 Mar 2016 00:31:30 +0000 (17:31 -0700)]
Merge pull request dotnet/coreclr#3974 from briansull/update-tests-lst

Disabled 8 failing tests

Commit migrated from https://github.com/dotnet/coreclr/commit/f0638c5b6aecec87b3a8aac8c808152c86febe9d

8 years agoDisabled 8 failing tests
Brian Sullivan [Tue, 29 Mar 2016 21:50:53 +0000 (14:50 -0700)]
Disabled 8 failing tests

Issues filed: 3968, 3969, 3970, 3971 and 3973

Commit migrated from https://github.com/dotnet/coreclr/commit/176b2d6f5004b39a5ffe04ce99619c365122ef2b

8 years agoMerge pull request dotnet/coreclr#3966 from kyulee1/fixframe2
Kyungwoo Lee [Tue, 29 Mar 2016 21:14:42 +0000 (14:14 -0700)]
Merge pull request dotnet/coreclr#3966 from kyulee1/fixframe2

ARM64: Fix Frame with compLocallocUsed

Commit migrated from https://github.com/dotnet/coreclr/commit/e9426290b6525747a0cde96b7a4ebe89ec391dd0

8 years agoARM64: Fix Frame with compLocallocUsed
Kyungwoo Lee [Fri, 25 Mar 2016 18:19:25 +0000 (11:19 -0700)]
ARM64: Fix Frame with compLocallocUsed

When compLocallocUsed is true, stack pointer is changed during the run.
So, JIT should restore stack pointer from frame pointer in the epilog.
Previously, we simpliy copied fp to sp, which is only valid for frameType
= 1.
This implements a right restoring process for other frameTypes (2 and 3).
For frameType = 3, I also simplified creating prolog sequence to support
this feature consistently.

Commit migrated from https://github.com/dotnet/coreclr/commit/68c70fa6f7207ee4acfd7f6cf511e91d46bdcf53

8 years agoMerge pull request dotnet/coreclr#3963 from adityamandaleeka/statFileParse
Aditya Mandaleeka [Tue, 29 Mar 2016 18:59:33 +0000 (11:59 -0700)]
Merge pull request dotnet/coreclr#3963 from adityamandaleeka/statFileParse

Fix stat file parsing to handle executable names with spaces

Commit migrated from https://github.com/dotnet/coreclr/commit/ef8af95b971a79fa0714fbeb39653a7581b4373f

8 years agoMerge pull request dotnet/coreclr#3959 from briansull/safe-refactor
Brian Sullivan [Tue, 29 Mar 2016 18:07:42 +0000 (11:07 -0700)]
Merge pull request dotnet/coreclr#3959 from briansull/safe-refactor

Safe Refactor - Remove conditional definition and references to lvIsMultiRegArgOrRet

Commit migrated from https://github.com/dotnet/coreclr/commit/2a55928860a74bad0dc1947631e5657d64ebbf35

8 years agoAvoid array allocation in "new MemoryStream()"
stephentoub [Tue, 29 Mar 2016 17:46:32 +0000 (13:46 -0400)]
Avoid array allocation in "new MemoryStream()"

The default MemoryStream ctor is unnecessarily allocating a 0-length array.

Commit migrated from https://github.com/dotnet/coreclr/commit/512b9e49059da20cc54eb89213cde1058d9ee413

8 years agoMerge pull request dotnet/coreclr#2182 from justinvp/keyedcollection_enumallocs
Stephen Toub [Tue, 29 Mar 2016 16:38:00 +0000 (12:38 -0400)]
Merge pull request dotnet/coreclr#2182 from justinvp/keyedcollection_enumallocs

Avoid enumerator allocations inside KeyedCollection<TKey, TItem>

Commit migrated from https://github.com/dotnet/coreclr/commit/04569c541137efcdb84848555cbf038074a955d5

8 years agoMerge pull request dotnet/coreclr#2178 from justinvp/keyedcollection_nullchecks
Stephen Toub [Tue, 29 Mar 2016 14:25:56 +0000 (10:25 -0400)]
Merge pull request dotnet/coreclr#2178 from justinvp/keyedcollection_nullchecks

Remove unnecessary null checks from KeyedCollection<TKey,TItem>

Commit migrated from https://github.com/dotnet/coreclr/commit/587cbb77129c31e93c5b5ccbe03bb6c41dc5821c

8 years agoFix stat file parsing to handle executable names with spaces.
Aditya Mandaleeka [Tue, 29 Mar 2016 03:22:04 +0000 (20:22 -0700)]
Fix stat file parsing to handle executable names with spaces.

Commit migrated from https://github.com/dotnet/coreclr/commit/b66da08912d8b43c39f743e5a65515d3e74ec432

8 years agoAdd architeture information to a script downloading coredistools
Sejong Oh [Mon, 28 Mar 2016 20:41:42 +0000 (13:41 -0700)]
Add architeture information to a script downloading coredistools

Commit migrated from https://github.com/dotnet/coreclr/commit/b7f5398362e05e2ce6921af781ea4af7f3f75837

8 years agoSafe Refactor - Remove conditional definition and references to lvIsMultiRegArgOrRet
Brian Sullivan [Fri, 25 Mar 2016 22:39:37 +0000 (15:39 -0700)]
Safe Refactor - Remove conditional definition and references to lvIsMultiRegArgOrRet

Commit migrated from https://github.com/dotnet/coreclr/commit/344dba53965e61a971eea5cfcb3e8d4e5c688149

8 years agoFixed build breaks
Chuck Mitchell [Mon, 28 Mar 2016 16:27:34 +0000 (09:27 -0700)]
Fixed build breaks

Commit migrated from https://github.com/dotnet/coreclr/commit/2149c6d519197ec5dc910782a0687e9495150d88

8 years agoMerge pull request dotnet/coreclr#3954 from leemgs/toolchain-name-unifyin-arm64
Jan Kotas [Mon, 28 Mar 2016 14:36:16 +0000 (07:36 -0700)]
Merge pull request dotnet/coreclr#3954 from leemgs/toolchain-name-unifyin-arm64

[Linux/ARM32/64] Unifying the redundant usages of cross-toolchain

Commit migrated from https://github.com/dotnet/coreclr/commit/e25eb2cc4e9fd8ea56364aad99c3be9f16f671d8

8 years agoobjcopy: Support cross-build for stripping symbols
Geunsik Lim [Sat, 26 Mar 2016 12:39:14 +0000 (21:39 +0900)]
objcopy: Support cross-build for stripping symbols

Currently, the 'objcopy' does only support native-build since
the commit number dotnet/coreclr@4efef62f0ead16b4f8ca2c6ccf0a77ce112f73b9
Let's add cross-build as well as native-build to strip symbols.

v3:
- support if statement for arm64

v2:
- Replace 'EQUAL' with 'DEFINED' for handling Other Linux distributions
  as well as Ubuntu 14.04 and for handling in case of native-build.

v2:
- support cross-build to strip debug symbols of native arm binaries

Signed-off-by: Geunsik Lim geunsik.lim@samsung.com
Signed-off-by: MyungJoo Ham myungjoo.ham@samsung.com
Signed-off-by: Prajwal A N an.prajwal@samsung.com
Commit migrated from https://github.com/dotnet/coreclr/commit/2df33a8de217f54330397a9101c51f2a9956ad18

8 years ago[Linux/ARM32/64] Unifying the redundant usages of cross-toolchain
Geunsik Lim [Mon, 28 Mar 2016 03:08:09 +0000 (12:08 +0900)]
[Linux/ARM32/64] Unifying the redundant usages of cross-toolchain

The name of toolchain name has been increasing gradually.
Let's unify the toolchain name of Linux/ARM{32|64} to prevent the
increase of the fragmentation, and to the manatainability.

Signed-off-by: Geunsik Lim geunsik.lim@samsung.com
Signed-off-by: MyungJoo Ham myungjoo.ham@samsung.com
Signed-off-by: Prajwal A N an.prajwal@samsung.com
Commit migrated from https://github.com/dotnet/coreclr/commit/4eb537dcf4d9780f70b3a68b6f0d1d61cd9a836b

8 years agoMerge pull request dotnet/coreclr#3946 from leemgs/toolchain-name-unifying
Jan Kotas [Sat, 26 Mar 2016 17:40:04 +0000 (10:40 -0700)]
Merge pull request dotnet/coreclr#3946 from leemgs/toolchain-name-unifying

[Linux/ARM32] Unifying the redundant usages of cross-toolchain

Commit migrated from https://github.com/dotnet/coreclr/commit/48ce56b9fcd1b5edf5ca28f83d7b623b71e5c925

8 years agoMerge pull request dotnet/coreclr#3902 from JosephTremoulet/ZeroExtend
Joseph Tremoulet [Sat, 26 Mar 2016 16:24:14 +0000 (12:24 -0400)]
Merge pull request dotnet/coreclr#3902 from JosephTremoulet/ZeroExtend

Unsuppress same-reg zero-extending mov (x64)

Commit migrated from https://github.com/dotnet/coreclr/commit/8d34c2f299cfbd26783e2deb7e982bf611885d0a

8 years ago[Linux/ARM32] Unifying the redundant usages of cross-toolchain
Geunsik Lim [Sat, 26 Mar 2016 12:53:08 +0000 (21:53 +0900)]
[Linux/ARM32] Unifying the redundant usages of cross-toolchain

The name of toolchain name has been increasing gradually.
Let's unify the toolchain name of Linux/ARM32 to prevent the
increase of the fragmentation, and to the manatainability.

Signed-off-by: Geunsik Lim geunsik.lim@samsung.com
Signed-off-by: MyungJoo Ham myungjoo.ham@samsung.com
Signed-off-by: Prajwal A N an.prajwal@samsung.com
Commit migrated from https://github.com/dotnet/coreclr/commit/12924be33d6d84a2e78e98291dfdd03cb621fc21

8 years agoFix: bracket expression matches a character at gawk
Geunsik Lim [Sat, 26 Mar 2016 10:04:31 +0000 (19:04 +0900)]
Fix: bracket expression matches a character at gawk

This is a trivial patch. However, It's must be modified by gawk.
Check it exactly as a plain character (e.g., space, alnum)
within the bracket expression at ./coreclr/generateversionscript.awk

Signed-off-by: Geunsik Lim <geunsik.lim@samsung.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/1ecdf767806842e9d09db879d4fdd98cef7b9810

8 years agoMerge pull request dotnet/coreclr#3896 from adityamandaleeka/configvalues4
Aditya Mandaleeka [Sat, 26 Mar 2016 07:00:55 +0000 (00:00 -0700)]
Merge pull request dotnet/coreclr#3896 from adityamandaleeka/configvalues4

Add new configuration mechanism for CoreCLR.

Commit migrated from https://github.com/dotnet/coreclr/commit/775003a4c72f0acc37eab84628fcef541533ba4e

8 years agoMerge pull request dotnet/coreclr#3931 from Godin/fix-typos
Jan Kotas [Sat, 26 Mar 2016 04:06:26 +0000 (21:06 -0700)]
Merge pull request dotnet/coreclr#3931 from Godin/fix-typos

Fix copy-paste typos

Commit migrated from https://github.com/dotnet/coreclr/commit/4f1aef23dac7f26b048e8910dab42d948c9b9c9c

8 years agoFix for stack overflow in CFG/DOM analysis GHdotnet/coreclr#3600
Chris McKinsey [Sat, 19 Mar 2016 04:19:56 +0000 (21:19 -0700)]
Fix for stack overflow in CFG/DOM analysis GHdotnet/coreclr#3600

Rewrite the DFS numbering of flow-graph and dominator tree
traversals to use a non-recursive formulation. hugeexpr1 now passes
(previously stack overflow) and the dominator tree traversal is now
around 10 seconds faster than before for this input set of 24,000 basic
blocks.

I have verified there are no asm diffs with this change.

Commit migrated from https://github.com/dotnet/coreclr/commit/a60e562f4a89299204fe74297507a47f863d4f54

8 years agoMerge pull request dotnet/coreclr#3920 from CarolEidt/ChangeLdObjToObj
Carol Eidt [Sat, 26 Mar 2016 01:22:46 +0000 (18:22 -0700)]
Merge pull request dotnet/coreclr#3920 from CarolEidt/ChangeLdObjToObj

1stClassStructs: Replace GT_LDOBJ with GT_OBJ

Commit migrated from https://github.com/dotnet/coreclr/commit/9d8513352e858ad3b739626e062f0133698a7111

8 years agoMerge pull request dotnet/coreclr#3928 from manu-silicon/patch-3
Jan Kotas [Sat, 26 Mar 2016 01:11:44 +0000 (18:11 -0700)]
Merge pull request dotnet/coreclr#3928 from manu-silicon/patch-3

Fix invalid path to genXplatLttng.py

Commit migrated from https://github.com/dotnet/coreclr/commit/24cab6db08b1c7f0c297abefa7fa27bd88082505

8 years agoAdd new configuration mechanism for CoreCLR.
Aditya Mandaleeka [Sat, 12 Mar 2016 02:39:27 +0000 (18:39 -0800)]
Add new configuration mechanism for CoreCLR.

Commit migrated from https://github.com/dotnet/coreclr/commit/1aa1b8ba64365f8b93a505d4f6165c6eaad84a7a

8 years agoMerge pull request dotnet/coreclr#3934 from briansull/remove-lvaAdjustRefCnts
Brian Sullivan [Sat, 26 Mar 2016 00:34:50 +0000 (17:34 -0700)]
Merge pull request dotnet/coreclr#3934 from briansull/remove-lvaAdjustRefCnts

Remove empty phase lvaAdjustRefCnts

Commit migrated from https://github.com/dotnet/coreclr/commit/1378dbbb0baffc737018503adb0310859a46eb0c

8 years ago1stClassStructs: Replace GT_LDOBJ with GT_OBJ
Carol Eidt [Thu, 24 Mar 2016 20:29:39 +0000 (13:29 -0700)]
1stClassStructs: Replace GT_LDOBJ with GT_OBJ

In preparation for using block nodes in assignments, change GT_LDOBJ to GT_OBJ.
Also, eliminate gtFldTreeList, which was only
being used in a transitory fashion for x87
codegen - instead create the nodes on the fly as needed for stack fp codegen.
Additional minor cleanup.

Commit migrated from https://github.com/dotnet/coreclr/commit/3789f42252a2faf577f90841fb944256c637b4f2

8 years agoMerge pull request dotnet/coreclr#3933 from AndyAyersMS/RefactorPolicy
Andy Ayers [Fri, 25 Mar 2016 22:51:33 +0000 (15:51 -0700)]
Merge pull request dotnet/coreclr#3933 from AndyAyersMS/RefactorPolicy

Inliner: refactor policies to extract common legality portion

Commit migrated from https://github.com/dotnet/coreclr/commit/117825e88bb1c21f626938a8b101fcd175015319

8 years agoMerge pull request dotnet/coreclr#3924 from AndyAyersMS/Fix-VSO-205323
Andy Ayers [Fri, 25 Mar 2016 22:49:54 +0000 (15:49 -0700)]
Merge pull request dotnet/coreclr#3924 from AndyAyersMS/Fix-VSO-205323

Inliner: fix issue introduced by refactoring

Commit migrated from https://github.com/dotnet/coreclr/commit/4042556fe08e0eaac0ea8379b7f8e12dec60e5eb

8 years agoRemove empty phase lvaAdjustRefCnts
Brian Sullivan [Fri, 25 Mar 2016 22:22:46 +0000 (15:22 -0700)]
Remove empty phase lvaAdjustRefCnts

Commit migrated from https://github.com/dotnet/coreclr/commit/46460db255be36aeb52cb1df9156b7b0b06e380c

8 years agoMerge pull request dotnet/coreclr#3932 from kyulee1/arm64tool
Kyungwoo Lee [Fri, 25 Mar 2016 21:56:59 +0000 (14:56 -0700)]
Merge pull request dotnet/coreclr#3932 from kyulee1/arm64tool

Fix ARM64 lib toolchain

Commit migrated from https://github.com/dotnet/coreclr/commit/12870d860aebfeff0bd92d3919c88b3ed7519359

8 years agoUnsuppress same-reg zero-extending mov (x64)
Joseph Tremoulet [Thu, 24 Mar 2016 14:56:36 +0000 (10:56 -0400)]
Unsuppress same-reg zero-extending mov (x64)

Update CodeGen::genIntToIntCast to stop suppressing 32-bit same-register
`mov`s, and to stop assuming that 32-bit enregistered sources already have
the top half of their register clear.  This latter assumption is usually
true, but is not guaranteed across function boundaries by the ABI.  As it
happens, the runtime code that invokes custom attribute constructors can
pass garbage in the top half of such parameters; this change adds a
testcase that fails on that path without this fix.

Commit migrated from https://github.com/dotnet/coreclr/commit/e1c9e27795e49f05af417efe10c01c0774e28f32

8 years agoInliner: refactor policies to extract common legality portion
Andy Ayers [Fri, 25 Mar 2016 18:56:25 +0000 (11:56 -0700)]
Inliner: refactor policies to extract common legality portion

Now that we have multiple policies, refactor their implementation
to extract common elements. In particular all the existing
policies have the same legality and ability constraints, so this
logic is extracted to a partial `LegalPolicy` superclass.

Adresses relevant feedback on dotnet/coreclr#3697, where the number of policies
increased from one to two.

No changes in behavior.

Commit migrated from https://github.com/dotnet/coreclr/commit/da7c4410075f7211d077cb4e8c8ef368659dbb0c