platform/upstream/coreclr.git
7 years ago[Arm64/Unix] Use portable MP optimized new/alloc (#12333)
Steve MacLean [Tue, 22 Aug 2017 18:58:30 +0000 (14:58 -0400)]
[Arm64/Unix] Use portable MP optimized new/alloc (#12333)

7 years ago[Arm64] Fix RecycledListsWrapper cache guard (#13397)
Steve MacLean [Tue, 22 Aug 2017 18:58:04 +0000 (14:58 -0400)]
[Arm64] Fix RecycledListsWrapper cache guard (#13397)

7 years agoMerge pull request #12216 from ellismg/fix-warnings
William Godbe [Tue, 22 Aug 2017 18:36:09 +0000 (11:36 -0700)]
Merge pull request #12216 from ellismg/fix-warnings

Fix warnings when building SOS.NETCore.csproj

7 years ago[Local GC] Enable building the GC as a shared library (#13137)
Sean Gillespie [Tue, 22 Aug 2017 17:20:36 +0000 (10:20 -0700)]
[Local GC] Enable building the GC as a shared library (#13137)

* [Local GC] Build the GC using system headers

* Disable features to get the GC to build

* Get rid of the separate 'GC PAL' build

* Remove unused stuff

* Don't build gcenv.os.cpp when linking in a standalone gc

* Stub out CPUGroupInfo and NumaNodeInfo

* Stub out IsGCThread and friends

* Build the GC as a shared library :tada:

* Build, link, and run! :tada:

* Fix standalone GC build break

* Fixes where the GC's MethodTable and VM's MethodTable classes disagree

* Integrate a standalone GC into the CoreCLR build system (so it gets copied to the output folder). Re-enable some ifdef-ed out includes that are required for a non-standalone build of the GC.

* Bring changes to Unix and fix the Unix build. Implement some compiler intrinsic wrappers and alignment functions expected by the GC.

* Fix the Windows build

* 1. Code review feedback: use standard types for BitScanForward and
   BitScanForward64
2. Delete FEATURE_COM stuff from the build system, not needed for this
PR
3. Fix the Unix build

* Fix the Windows x86 build - the _BitScanForward64 intrinsic is not available when targeting 32-bit platforms

* Remove a number of things from gcenv.base.h that are not used

* Remove a linker workaround now that we are not linking a standalone GC into the runtime

* Remove dead code, make the lack of GC_PROFILING for standalone gc not break profiling on the non-standalone build

* Code review feedback - use add_library_clr and other cmake-related fixes

* Fix include indentation

* Remove some extraneous parameters to cmake functions (cmake is remarkably lenient...)

7 years agoMerge pull request #13461 from JosephTremoulet/TodoUpdate
Joseph Tremoulet [Tue, 22 Aug 2017 17:04:42 +0000 (13:04 -0400)]
Merge pull request #13461 from JosephTremoulet/TodoUpdate

Update JitOptimizerTodoAssessment.md

7 years agoFollow-up: Add enforce PGO to official builds (#13437)
Victor "Nate" Graf [Tue, 22 Aug 2017 17:02:51 +0000 (10:02 -0700)]
Follow-up: Add enforce PGO to official builds (#13437)

* Add variables to pipeline to enable enforcepgo for Release

* Address review

7 years agoMerge pull request #13487 from mikedn/switch-temp-type
Joseph Tremoulet [Tue, 22 Aug 2017 16:39:54 +0000 (12:39 -0400)]
Merge pull request #13487 from mikedn/switch-temp-type

Fix incorrect switch temp lcl type

7 years agoDelete some dead PAL code (#13469)
Justin Van Patten [Tue, 22 Aug 2017 14:09:08 +0000 (07:09 -0700)]
Delete some dead PAL code (#13469)

* Delete some dead PAL code

GetComputerName and GetUserName are not used.

* HAVE_GETPWUID_R can now be deleted

7 years agoRemove empty try's (#13493)
Dan Moseley [Tue, 22 Aug 2017 05:25:35 +0000 (22:25 -0700)]
Remove empty try's (#13493)

* Remove empty try's

* Remove some dead comments

* more

7 years agoUndo a few JIT layout workarounds (#13505)
Joseph Tremoulet [Tue, 22 Aug 2017 04:14:17 +0000 (00:14 -0400)]
Undo a few JIT layout workarounds (#13505)

Remove some `goto`s that were added to work around #9692 (poor code
layout for loop exit paths) -- the JIT's layout decisions were improved
in #13314, and these particular `goto`s are no longer needed; crossgen
of System.Private.CoreLib now produces the same machine code with or
without this change.

Part of #13466.

7 years agoThreadPool minimalistic thread request cap (#13431)
Steve MacLean [Tue, 22 Aug 2017 03:10:01 +0000 (23:10 -0400)]
ThreadPool minimalistic thread request cap (#13431)

Cap ThreadPool thread requests minimalistically

- Only request an additional thread on dequeue if enqueue request was suppressed, and if there are any work items left in the queues
- ThreadPool pad hot cache line
- Add ideas from #13408

7 years agofix JitConfig initialize and destoy (#13477)
Sergey Andreenko [Tue, 22 Aug 2017 01:04:29 +0000 (18:04 -0700)]
fix JitConfig initialize and destoy (#13477)

fix JitConfig initialize and destoy.

7 years agoMerge pull request #13496 from justinvp/version_parse
Stephen Toub [Tue, 22 Aug 2017 00:27:13 +0000 (20:27 -0400)]
Merge pull request #13496 from justinvp/version_parse

Avoid unnecessary intermediate Version allocation

7 years agoFixing wcsstr function to account for cases where search string is longer than remain...
Mike Kaufman [Mon, 21 Aug 2017 23:30:34 +0000 (16:30 -0700)]
Fixing wcsstr function to account for cases where search string is longer than remaining target string. (#13504)

7 years agoUse CreateFile2FromApp if available (#13410)
Jeremy Kuhne [Mon, 21 Aug 2017 22:45:57 +0000 (15:45 -0700)]
Use CreateFile2FromApp if available (#13410)

* Use CreateFile2FromApp if available

This is needed for F5 UAP brokering scenarios.

Remove check for handle type. Overzealous, doesn't apply to UAP scenarios.

* Address feedback

- Use CreateFile2 if Win8 or higher
- Always use CreateFile2FromApp if Appx
- Make DisableMediaInsertionPrompt a struct
- Push CreateFile2FromApp down to avoid JIT

* More feedback

Always use FromApp for WinRT.

* Conditionalize IsWindows8OrAbove check

* Always use FromApp if in AppX

* Address more feedback

- Fix Unix build by moving LoadString to shared
- Break out CREATEFILE2 struct
- Condition CreateFile2FromApp usage

* Move include

7 years agoClean up VS experience for s.p.corelib.csproj (#13481)
Dan Moseley [Mon, 21 Aug 2017 22:18:28 +0000 (15:18 -0700)]
Clean up VS experience for s.p.corelib.csproj (#13481)

* Remove bogus assembly warnings in VS

* Fix warnings about sharing files within the project tree

* Remove bogus lines

* Remove lines showing up as bogus source files

* Remove overridden target

* feedback

7 years agoMerge pull request #13482 from rartemev/issue_12469
Roman Artemev [Mon, 21 Aug 2017 19:30:36 +0000 (12:30 -0700)]
Merge pull request #13482 from rartemev/issue_12469

Fixed misconception between FP register allocator and RyuJIT's CSE phase

7 years agoMerge pull request #13424 from stephentoub/versionspan
Stephen Toub [Mon, 21 Aug 2017 19:04:17 +0000 (15:04 -0400)]
Merge pull request #13424 from stephentoub/versionspan

Add span-based Version methods

7 years agoSupport docker cgroup limits (#13488)
Tom Deseyn [Mon, 21 Aug 2017 18:56:32 +0000 (20:56 +0200)]
Support docker cgroup limits (#13488)

* Fix cgroup mountinfo parsing

The parsing would find the wrong '-' in lines like this:
354 347 0:28 /system.slice/docker-654dd7b6b8bbfe1739ae3309b471e95ccc82b3a3f56b7879f0a811d68b5c4e1d.scope /sys/fs/cgroup/cpuacct,cpu ro,nosuid,nodev,noexec,relatime - cgroup cgroup rw,cpuacct,cpu

* cgroup: don't append cgroup relative path for reading docker limits

7 years agoMerge pull request #13497 from noahfalk/tiered_jit_fix_tests
Noah Falk [Mon, 21 Aug 2017 17:45:32 +0000 (10:45 -0700)]
Merge pull request #13497 from noahfalk/tiered_jit_fix_tests

Enable by-request tiered compilation testing in CI

7 years agoMerge pull request #13483 from dotnet-maestro-bot/master-UpdateDependencies
Stephen Toub [Mon, 21 Aug 2017 17:38:32 +0000 (13:38 -0400)]
Merge pull request #13483 from dotnet-maestro-bot/master-UpdateDependencies

Update CoreClr, CoreFx to preview2-25621-02, preview2-25621-02, respectively (master)

7 years agoMerge pull request #12489 from jashook/unix_x64_and_arm64_fasttailcall_fix
Jarret Shook [Mon, 21 Aug 2017 16:10:57 +0000 (09:10 -0700)]
Merge pull request #12489 from jashook/unix_x64_and_arm64_fasttailcall_fix

[Unix x64|Arm64] Correct canfastTailCall decisions

7 years agoUpdate CoreClr, CoreFx to preview2-25621-02, preview2-25621-02, respectively
dotnet-maestro-bot [Mon, 21 Aug 2017 13:32:54 +0000 (06:32 -0700)]
Update CoreClr, CoreFx to preview2-25621-02, preview2-25621-02, respectively

7 years agoFixing assert in groovy
noahfalk [Mon, 21 Aug 2017 00:21:57 +0000 (17:21 -0700)]
Fixing assert in groovy

7 years agoEnable by-request tiered compilation testing in CI
noahfalk [Sun, 20 Aug 2017 23:43:23 +0000 (16:43 -0700)]
Enable by-request tiered compilation testing in CI

7 years agoAvoid unnecessary intermediate Version allocation
Justin Van Patten [Sun, 20 Aug 2017 19:37:18 +0000 (12:37 -0700)]
Avoid unnecessary intermediate Version allocation

`Version..ctor(string)` is implemented by calling `Version.Parse`, which
allocates an intermediate `Version` instance. Avoid the unnecessary
intermediate allocation by using `Version.Parse` directly.

7 years agoFix incorrect switch temp lcl type
Mike Danes [Sat, 19 Aug 2017 08:59:24 +0000 (11:59 +0300)]
Fix incorrect switch temp lcl type

7 years agoMerge pull request #12892 from pgavlin/LivenessDCE
Pat Gavlin [Sat, 19 Aug 2017 13:43:06 +0000 (06:43 -0700)]
Merge pull request #12892 from pgavlin/LivenessDCE

Improve DCE in LIR liveness.

7 years agodelete unused return argument (#13468)
Sergey Andreenko [Sat, 19 Aug 2017 03:50:13 +0000 (20:50 -0700)]
delete unused return argument (#13468)

7 years agoRename System.Threading.Thread.m_ManagedThreadId to System.Threading.Thread._ManagedT...
Andrew Au [Sat, 19 Aug 2017 03:04:37 +0000 (20:04 -0700)]
Rename System.Threading.Thread.m_ManagedThreadId to System.Threading.Thread._ManagedThreadId to align with CoreRT implementation (#13473)

Rename System.Threading.Thread.m_ManagedThreadId to System.Threading.Thread._ManagedThreadId to align with CoreRT implementation

7 years agoFixed misconception between FP register allocator and RyuJIT's CSE phase
Roman Artemev [Sat, 19 Aug 2017 01:20:06 +0000 (18:20 -0700)]
Fixed misconception between FP register allocator and RyuJIT's CSE phase

7 years agoMerge pull request #13392 from noahfalk/tiered_jit_fix_tests
Noah Falk [Sat, 19 Aug 2017 00:59:22 +0000 (17:59 -0700)]
Merge pull request #13392 from noahfalk/tiered_jit_fix_tests

Make unit tests run clean with tiered compilation

7 years agoMerge pull request #13472 from dotnet/revert-13464-reimport_rhel6_test_change
Wes Haggard [Fri, 18 Aug 2017 23:08:48 +0000 (16:08 -0700)]
Merge pull request #13472 from dotnet/revert-13464-reimport_rhel6_test_change

Revert "Re-port test project changes from release/2.0.0 to master"

7 years ago`perf.groovy` updates. (#13465)
José Rivero [Fri, 18 Aug 2017 21:19:17 +0000 (14:19 -0700)]
`perf.groovy` updates. (#13465)

- Increase how long performance artifacts are kept.
- Added an extra step to move files to be archived into a different folder.

7 years agoImprove DCE in liveness.
Pat Gavlin [Mon, 17 Jul 2017 16:55:36 +0000 (09:55 -0700)]
Improve DCE in liveness.

In particular:
- Rather than only removing dead code as part of dead store removal,
  remove all side-effect-free nodes that either do not produce a value
  or produce a value that is unused.
- When optimizing, set `fgStmtRemoved` in order to indicate that tracked
  lclVar uses or defs have been removed and liveness may need to be
  recalculated. Previously this flag was only set upon eliminating a
  dead store.

7 years agoJIT: extend gc descriptor for ppp quirked local struct (#13438)
Andy Ayers [Fri, 18 Aug 2017 20:46:32 +0000 (13:46 -0700)]
JIT: extend gc descriptor for ppp quirked local struct (#13438)

When we expand the size of a local for the ppp quirk, also expand
the size of its gc descriptor, and mark the new "fields" as non-gc.

Fixes #13407.

7 years agoMerge pull request #13439 from dotnet-maestro-bot/master-UpdateDependencies
Wes Haggard [Fri, 18 Aug 2017 20:00:50 +0000 (13:00 -0700)]
Merge pull request #13439 from dotnet-maestro-bot/master-UpdateDependencies

Update CoreClr, CoreFx to preview2-25618-04, preview2-25618-02, respectively (master)

7 years agoRevert "Re-port test project changes from release/2.0.0 to master (#13464)"
Jan Kotas [Fri, 18 Aug 2017 19:54:02 +0000 (12:54 -0700)]
Revert "Re-port test project changes from release/2.0.0 to master (#13464)"

This reverts commit 7a386da8fc7067978a880445555942ccc6343be8.

7 years agoRe-port test project changes from release/2.0.0 to master (#13464)
smile21prc [Fri, 18 Aug 2017 17:49:52 +0000 (10:49 -0700)]
Re-port test project changes from release/2.0.0 to master (#13464)

Re-port test project changes from release/2.0.0 to master

7 years agoMention Byref Store/Load VN and Helper Call Kills
Joseph Tremoulet [Fri, 18 Aug 2017 16:13:41 +0000 (12:13 -0400)]
Mention Byref Store/Load VN and Helper Call Kills

These are two more areas that have received recent scrutiny.

7 years agoMerge pull request #13314 from JosephTremoulet/loops
Joseph Tremoulet [Fri, 18 Aug 2017 16:25:31 +0000 (12:25 -0400)]
Merge pull request #13314 from JosephTremoulet/loops

Lay out loop bodies contiguously

7 years agoCategorize optimization ToDos
Joseph Tremoulet [Fri, 18 Aug 2017 16:09:56 +0000 (12:09 -0400)]
Categorize optimization ToDos

7 years agoUpdate JitOptimizerTodoAssessment
Joseph Tremoulet [Fri, 18 Aug 2017 15:58:33 +0000 (11:58 -0400)]
Update JitOptimizerTodoAssessment

Update notes on struct promotion, loop optimization, if-conversion, and
mulshift.  Add notes about switch lowering and write barriers.

7 years agoMerge pull request #13459 from adiaaida/updatePgoCounts
Michelle McDaniel [Fri, 18 Aug 2017 15:47:47 +0000 (08:47 -0700)]
Merge pull request #13459 from adiaaida/updatePgoCounts

Update optdata in master to version 20170817-0120

7 years agoUpdate optdata in master to version 20170817-0120
Michelle McDaniel [Fri, 18 Aug 2017 15:42:45 +0000 (08:42 -0700)]
Update optdata in master to version 20170817-0120

7 years agoMerge pull request #13456 from adiaaida/revertPGO
Michelle McDaniel [Fri, 18 Aug 2017 15:31:58 +0000 (08:31 -0700)]
Merge pull request #13456 from adiaaida/revertPGO

Revert "Update optdata in master to version 20170817-0120"

7 years agoRevert "Update optdata in master to version 20170817-0120"
Michelle McDaniel [Fri, 18 Aug 2017 15:31:19 +0000 (08:31 -0700)]
Revert "Update optdata in master to version 20170817-0120"

This reverts commit 694eb48ae21ae79ca745fa3448be87d144ff912d.

7 years agoMerge pull request #13455 from adiaaida/updatePgoCounts
Michelle McDaniel [Fri, 18 Aug 2017 15:24:28 +0000 (08:24 -0700)]
Merge pull request #13455 from adiaaida/updatePgoCounts

Update optdata in master to version 20170817-0120

7 years agoIntroduce COMPlus_GDBJitElfDump (#13448)
Jonghyun Park [Fri, 18 Aug 2017 15:21:56 +0000 (00:21 +0900)]
Introduce COMPlus_GDBJitElfDump (#13448)

* Add COMPlus_GDBJitElfDump

* Fix Release build error

* Add flags in EEConfig

7 years agoUpdate optdata in master to version 20170817-0120
Michelle McDaniel [Fri, 18 Aug 2017 15:21:11 +0000 (08:21 -0700)]
Update optdata in master to version 20170817-0120

7 years agoMerge pull request #13400 from sergign60/arm_build
Bruce Forstall [Fri, 18 Aug 2017 15:11:45 +0000 (08:11 -0700)]
Merge pull request #13400 from sergign60/arm_build

[armel tizen] Fix for CoreRT issue https://github.com/dotnet/coreclr/issues/13195

7 years ago[Unix x64|Arm64] Correct canfastTailCall decisions
jashook [Mon, 5 Jun 2017 21:48:51 +0000 (14:48 -0700)]
[Unix x64|Arm64] Correct canfastTailCall decisions

This will change how the fastTailCall decision is made for x64 unix and arm64.
Before this change the decision was based on the amount of incoming and outgoing
caller arguments like on Windows. This was incorrect on Unix x64 and Arm64
because one argument does not translate to one register or one stack slot use.

Before this change structs on Arm64 and Amd64 Unix could
pessimize when we could fastTailCall if they were engregisterable
and took more than one register.

This change also fixes several cases when determining to fastTailCall. It fixes
 #12479 and will cause a no fastTailCalls decisions for case #12468.

In addition this change adds several regression cases for #12479 and #12468. It
includes more logging ofr fastTailCall decisions, including a new COMPlus
variable named COMPlus_JitReportFastTailCallDecisions, which can be toggled with
COMPlus_JitReportFastTailCallDecisions=1.

7 years agoUpdate CoreClr, CoreFx to preview2-25618-04, preview2-25618-02, respectively
dotnet-maestro-bot [Fri, 18 Aug 2017 13:32:14 +0000 (06:32 -0700)]
Update CoreClr, CoreFx to preview2-25618-04, preview2-25618-02, respectively

7 years agoFix for CoreRT issue https://github.com/dotnet/coreclr/issues/13195
Sergey Ignatov [Wed, 16 Aug 2017 18:30:06 +0000 (21:30 +0300)]
Fix for CoreRT issue https://github.com/dotnet/coreclr/issues/13195

7 years agoMerge pull request dotnet/corert#4340 from dotnet/nmirror
Jan Kotas [Thu, 17 Aug 2017 21:22:32 +0000 (14:22 -0700)]
Merge pull request dotnet/corert#4340 from dotnet/nmirror

Merge nmirror to master

Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
7 years agoTypo (#13444)
John Doe [Fri, 18 Aug 2017 04:41:54 +0000 (21:41 -0700)]
Typo (#13444)

7 years agoMerge pull request #13445 from hseok-oh/ryujit/fix_13421
Bruce Forstall [Fri, 18 Aug 2017 04:36:56 +0000 (21:36 -0700)]
Merge pull request #13445 from hseok-oh/ryujit/fix_13421

[RyuJIT/ARM32] Set carry bit: neg operation

7 years agoMerge pull request #13442 from BruceForstall/EnableSuperPmiCoreDisAsmDiffs2
Bruce Forstall [Fri, 18 Aug 2017 04:34:58 +0000 (21:34 -0700)]
Merge pull request #13442 from BruceForstall/EnableSuperPmiCoreDisAsmDiffs2

Enable SuperPMI asm diffs using CoreDisTools

7 years agoPort fixes in DotNet-CoreClr-Trusted-Linux.json to unblock coreclr (#13446)
smile21prc [Fri, 18 Aug 2017 03:58:14 +0000 (20:58 -0700)]
Port fixes in DotNet-CoreClr-Trusted-Linux.json to unblock coreclr (#13446)

* Port fixes in DotNet-CoreClr-Trusted-Linux.json to unblock coreclr official run.

Port this commit:
https://github.com/dotnet/coreclr/commit/66d0fed853589e19336b6486f05f9218019ca4c9

* Remove extra new line at end of the file

Remove extra new line at end of the file

* Remove end line

Remove end line

7 years agoSplit fgComputeLifeLocal's subcases into separate functions.
Pat Gavlin [Tue, 18 Jul 2017 22:17:46 +0000 (15:17 -0700)]
Split fgComputeLifeLocal's subcases into separate functions.

There are three cases that are relevant here:
- Defs of tracked locals
- Uses of tracked locals
- Appearances of untracked locals

Each of these cases has been moved into its own function.

7 years ago[RyuJIT/ARM32] Set carry bit: neg operation
Hyeongseok Oh [Fri, 18 Aug 2017 02:50:27 +0000 (11:50 +0900)]
[RyuJIT/ARM32] Set carry bit: neg operation

Set carry bit when we generate ARM32 code for neg operation.

7 years agoEnable SuperPMI asm diffs using CoreDisTools
Bruce Forstall [Fri, 18 Aug 2017 01:29:20 +0000 (18:29 -0700)]
Enable SuperPMI asm diffs using CoreDisTools

Change SuperPMI to dynamically load coredistools.dll on demand.

7 years agoMerge pull request #12632 from rartemev/issue_12464
Roman Artemev [Fri, 18 Aug 2017 01:34:37 +0000 (18:34 -0700)]
Merge pull request #12632 from rartemev/issue_12464

Fix legacy backend crash on assert #12464

7 years agoMigrate Git clone from GitHub to VSO (#13430)
smile21prc [Fri, 18 Aug 2017 01:24:22 +0000 (18:24 -0700)]
Migrate Git clone from GitHub to VSO (#13430)

* Migrate Git clone from GitHub to VSO

Migrate Git clone from GitHub to VSO

* Correct var name

Correct var name

* Remove PB_ as they are unnecessary and confusing.

Remove PB_ as they are unnecessary and confusing.

* Add dependent vars.

Add dependent vars.

* Fix repo name.

Fix repo name.

7 years agoFix more contract violations
noahfalk [Fri, 18 Aug 2017 00:39:49 +0000 (17:39 -0700)]
Fix more contract violations

7 years agoAdd perf test
Joseph Tremoulet [Tue, 8 Aug 2017 21:09:25 +0000 (17:09 -0400)]
Add perf test

7 years agoRefactor loop identification into a class
Joseph Tremoulet [Thu, 17 Aug 2017 23:01:57 +0000 (19:01 -0400)]
Refactor loop identification into a class

This is mainly done to increase readability, as `optFindNaturalLoops`
had grown excessively large.  It also facilitates re-using code to fix
up fallthrough, and skipping past CallFinally/BBJ_ALWAYS pairs rather
than aborting once they're found.

7 years agoLay out loop bodies contiguously
Joseph Tremoulet [Tue, 18 Jul 2017 14:32:54 +0000 (10:32 -0400)]
Lay out loop bodies contiguously

Rearrange basic blocks during loop identification so that loop bodies
are kept contiguous when possible.  Blocks in the lexical range of the
loop which do not participate in the flow cycle (which typically
correspond to code associated with early exits using `break` or
`return`) are moved out below the loop when possible without breaking EH
region nesting.  The target insertion point, when possible, is chosen to
be the first spot below the loop that will not break up fall-through.

Layout can significantly affect the performance of loops, particularly
small search loops, by avoiding the taken branch on the hot path,
improving the locality of the code fetched while iterating the loop, and
potentially aiding loop stream detection.

Resolves #9692.

7 years agoFix legacy backend crash
Roman Artemev [Tue, 4 Jul 2017 19:53:31 +0000 (12:53 -0700)]
Fix legacy backend crash

7 years agoRevert test part "Enable RedHat 6 in coreclr master (#13315)" to unblock CI.
Smile Wei [Thu, 17 Aug 2017 23:04:29 +0000 (16:04 -0700)]
Revert test part "Enable RedHat 6 in coreclr master (#13315)" to unblock CI.

This reverts commit b2b5fef27a4cb68571549f2e19660f39bd76467b.

7 years agoRevert PR 13375 (#13436)
Victor "Nate" Graf [Thu, 17 Aug 2017 21:48:28 +0000 (14:48 -0700)]
Revert PR 13375 (#13436)

7 years agoMerge pull request #13073 from rartemev/add_minopts_scenario
Roman Artemev [Thu, 17 Aug 2017 21:02:48 +0000 (14:02 -0700)]
Merge pull request #13073 from rartemev/add_minopts_scenario

Added perf and perf_minopts scenarios for legacy backend

7 years agoAdd minopts scenario for Legacy backend
Roman Artemev [Wed, 26 Jul 2017 23:07:24 +0000 (16:07 -0700)]
Add minopts scenario for Legacy backend

7 years agoMerge pull request #13426 from JosephTremoulet/ConservativeConstant
Joseph Tremoulet [Thu, 17 Aug 2017 19:03:25 +0000 (15:03 -0400)]
Merge pull request #13426 from JosephTremoulet/ConservativeConstant

Use conservative VN in CSE candidate const check

7 years agoEnable RedHat 6 in coreclr master (#13315)
smile21prc [Thu, 17 Aug 2017 17:42:22 +0000 (10:42 -0700)]
Enable RedHat 6 in coreclr master (#13315)

* Enable RedHat 6 in coreclr master

Enable RedHat 6 in coreclr master.

This is identical as the approved PR to enable RedHat 6 in coreclr
release/2.0.0:
https://github.com/dotnet/coreclr/pull/13301

* Correct Rid to match /src/.nuget/dirs.props

Correct Rid to match /src/.nuget/dirs.props

* Update dockertag and add logic to detect RHEL6 in init-tools.sh

Update dockertag and add logic to detect RHEL6 in init-tools.sh

* Port changes from Release/2.0.0 to fix coreclr RHEL 6 official runs.

Port changes from Release/2.0.0 to fix coreclr RHEL 6 official runs.

* Remove empty quotes.

Remove empty quotes.

7 years agoMerge pull request #13419 from wateret/fix-arm-lea-needless-mov
Bruce Forstall [Thu, 17 Aug 2017 17:39:22 +0000 (10:39 -0700)]
Merge pull request #13419 from wateret/fix-arm-lea-needless-mov

[RyuJIT/arm32] Fix LEA codegen

7 years agoMerge pull request #13198 from CarolEidt/LowerContain
Carol Eidt [Thu, 17 Aug 2017 17:04:09 +0000 (10:04 -0700)]
Merge pull request #13198 from CarolEidt/LowerContain

Move containment analysis to 1st phase of Lowering

7 years agoSupport GDBJIT on NI/IL_STUBS (#13417)
Jonghyun Park [Thu, 17 Aug 2017 16:01:26 +0000 (01:01 +0900)]
Support GDBJIT on NI/IL_STUBS (#13417)

* Support GDBJIT on NI/IL_STUBS

* Move tls_isSymReaderInProgress into gdbjit.cpp

7 years agoMerge pull request #13100 from sjsinju/currentInterval2
Carol Eidt [Thu, 17 Aug 2017 15:00:24 +0000 (08:00 -0700)]
Merge pull request #13100 from sjsinju/currentInterval2

[RyuJIT/ARM32] Add additional unassigning if the currentInterval has TYP_DOUBLE

7 years agoUse conservative VN in CSE candidate const check
Joseph Tremoulet [Thu, 17 Aug 2017 14:09:24 +0000 (10:09 -0400)]
Use conservative VN in CSE candidate const check

The check in CSE is supposed to leave code alone that constant prop
(done by VN-based Assertion Prop) is going to handle, but since that
constant prop code only propagates based on conservative VN, the check
in CSE needs to likewise use conservative VN to determine what to skip,
or else neither phase will eliminate the redundancy.

Fixes #6234.

7 years agoMerge pull request #13406 from ericstj/updateDependencies
Eric StJohn [Thu, 17 Aug 2017 13:38:50 +0000 (06:38 -0700)]
Merge pull request #13406 from ericstj/updateDependencies

Update dependencies

7 years agoAdd span-based Version methods
Stephen Toub [Thu, 17 Aug 2017 13:33:26 +0000 (09:33 -0400)]
Add span-based Version methods

The span-based {Try}Parse is allocation-free, and as the string-based {Try}Parse uses it, it's also now allocation-free, rather than allocating a string[] from a split and a string for each component in the version.

7 years agoFix AssemblyName(string) constructor's version parsing (#13373)
Koundinya Veluri [Thu, 17 Aug 2017 07:05:21 +0000 (00:05 -0700)]
Fix AssemblyName(string) constructor's version parsing (#13373)

Fix AssemblyName(string) constructor's version parsing

Functional fix for https://github.com/dotnet/corefx/issues/22663
- Allow fewer version components
- Match .NET Framework behavior in several cases. Major and minor version must be specified for the version to be used.
- Used zero for unspecified build/revision. This is different from .NET Framework but the loader also behaves differently. Details are in code comments.

7 years ago[RyuJIT/arm32] Fix LEA codegen
Hanjoung Lee [Thu, 17 Aug 2017 02:55:43 +0000 (11:55 +0900)]
[RyuJIT/arm32] Fix LEA codegen

Do not generate `mov` when src and dst are the same
when we generate code for LEA node.

Fix #13418

7 years agoMerge pull request #13409 from stephentoub/encoder_span
Stephen Toub [Thu, 17 Aug 2017 01:53:02 +0000 (21:53 -0400)]
Merge pull request #13409 from stephentoub/encoder_span

Add span-based overloads to Encoder/Decoder

7 years agoFixes for code review feedback
noahfalk [Thu, 17 Aug 2017 01:08:27 +0000 (18:08 -0700)]
Fixes for code review feedback

7 years agoUpdate coreclr tests to netcoreapp2.1
Eric St. John [Wed, 16 Aug 2017 22:38:31 +0000 (15:38 -0700)]
Update coreclr tests to netcoreapp2.1

7 years ago`archiveSettings.addFiles` uses glob instead of path. (#13403)
José Rivero [Thu, 17 Aug 2017 00:11:56 +0000 (17:11 -0700)]
`archiveSettings.addFiles` uses glob instead of path. (#13403)

- Files were not being archived after last changes.

7 years agoAdd span-based overloads to Encoder/Decoder
Stephen Toub [Wed, 16 Aug 2017 23:19:17 +0000 (19:19 -0400)]
Add span-based overloads to Encoder/Decoder

7 years agoAdded BinaryWriter Span-based APIs (#13378)
jp2masa [Wed, 16 Aug 2017 22:53:56 +0000 (23:53 +0100)]
Added BinaryWriter Span-based APIs (#13378)

7 years agoUpdate CoreClr, CoreFx to preview2-25616-01, preview2-25616-02, respectively
dotnet-maestro-bot [Wed, 16 Aug 2017 13:37:35 +0000 (06:37 -0700)]
Update CoreClr, CoreFx to preview2-25616-01, preview2-25616-02, respectively

7 years agoFixed Android AMD64 build. (#13402)
Mike McLaughlin [Wed, 16 Aug 2017 22:35:38 +0000 (15:35 -0700)]
Fixed Android AMD64 build. (#13402)

7 years agoIntroduce FEATURE_GDBJIT_FRAME feature (#13283)
Jonghyun Park [Wed, 16 Aug 2017 22:23:44 +0000 (07:23 +0900)]
Introduce FEATURE_GDBJIT_FRAME feature (#13283)

7 years agoAdd Span-based {Try}Parse methods to primitive types (#13389)
Stephen Toub [Wed, 16 Aug 2017 21:09:29 +0000 (17:09 -0400)]
Add Span-based {Try}Parse methods to primitive types (#13389)

* Add Span-based {Try}Parse methods to primitive types

Adds Parse and TryParse methods to Boolean, Byte, Double, Int16, Int32, Int64, SByte, Single, UInt16, UInt32, UInt64, and Decimal.

* Address PR feedback

- Make delegation between overloads as consistent as possible across the primitive types: Boolean, SByte/Byte, Int16/UInt16, and Single/Double were doing it one way, whereas Decimal, Int32/UInt32, and Int64/UInt64 were doing it another way (most of this inconsistency was preexisting this PR, but my previous commit doubled-down on the inconsistency).  Changed the former to be like the latter.

7 years agoMove Containment Analysis to Lowering
Carol Eidt [Tue, 1 Aug 2017 00:41:13 +0000 (17:41 -0700)]
Move Containment Analysis to Lowering

- Ensure that the only changes to child nodes are the specification of srcCandidates
(i.e. the register requirements of the parent/consumer)
- Since this now occurs before redoing dataflow, we don't have complete information on
what lclVars are containable. To mitigate this:
  - In `TreeNodeInfoInit()`, if a lclVar is marked `isRegOptional` but is now untracked,
  change it to be contained.
  - Mark decomposed/promoted fields of long params as `lvDoNotEnregister`
 - Ensure that any new code added after `Lowering` is analyzed as necessary.

- When a value becomes unused, it is no longer contained. (This is needed now because liveness runs after containment analysis)
- Add dumping of nodes deleted as unused.
- Need to set byteable regs, as needed on contained RMW memory ops.

7 years agoMerge pull request #13208 from jashook/add_gc_stress_arm_metadata
Jarret Shook [Wed, 16 Aug 2017 18:13:13 +0000 (11:13 -0700)]
Merge pull request #13208 from jashook/add_gc_stress_arm_metadata

Add arm32 GCStress excludes

7 years agoMerge pull request #13377 from jashook/arm64_alignment
Jarret Shook [Wed, 16 Aug 2017 18:10:37 +0000 (11:10 -0700)]
Merge pull request #13377 from jashook/arm64_alignment

Restrict alignment assert to only if volatile

7 years agoRestrict alignment assert to only if volatile
jashook [Tue, 15 Aug 2017 15:57:54 +0000 (08:57 -0700)]
Restrict alignment assert to only if volatile

7 years agoFix AsyncValueTaskMethodBuilder.Create for corert (#13396)
Stephen Toub [Wed, 16 Aug 2017 17:54:51 +0000 (13:54 -0400)]
Fix AsyncValueTaskMethodBuilder.Create for corert (#13396)

I changed AsyncValueTaskMethodBuilder.Create to avoid calling the nop AsyncTaskMethodBuilder.Create, but it turns out on corert that AsyncTaskMethodBuilder.Create actually does additional work if the debugger is attached, so we should still call it there.

7 years agoDon't run arm64 on every commit (#13384)
Matt Mitchell [Wed, 16 Aug 2017 16:08:28 +0000 (09:08 -0700)]
Don't run arm64 on every commit (#13384)

We cannot keep up currently

@jashook PTAL