Bruce Forstall [Wed, 5 Jul 2017 20:24:48 +0000 (13:24 -0700)]
Merge pull request #12575 from wateret/armel/floatret
[RyuJIT/armel] Move returned float to float reg
Jonghyun Park [Wed, 5 Jul 2017 01:45:24 +0000 (10:45 +0900)]
Support interprter build when INTERP_TRACING is not set (#12625)
Jonghyun Park [Wed, 5 Jul 2017 01:40:57 +0000 (10:40 +0900)]
Remove unused global variable (#12620)
Jonghyun Park [Wed, 5 Jul 2017 01:39:53 +0000 (10:39 +0900)]
Hide methods in IdDispenser (instead of using DacNotImpl) (#12624)
Jan Kotas [Tue, 4 Jul 2017 14:45:31 +0000 (07:45 -0700)]
Update to latest System.Memory
dotnet-maestro-bot [Tue, 4 Jul 2017 12:55:31 +0000 (12:55 +0000)]
Update CoreClr, CoreFx to preview2-25504-01, preview2-25504-01, respectively
Jan Kotas [Tue, 4 Jul 2017 14:19:32 +0000 (07:19 -0700)]
Delete unnecessary code (#12607)
Hanjoung Lee [Tue, 4 Jul 2017 08:50:57 +0000 (17:50 +0900)]
[RyuJIT/armel] Move returned float to float reg
Returned float values are in r0(float) or r0:r1(double).
These values must be moved to proper float register after call.
Fix #12574
Pat Gavlin [Tue, 4 Jul 2017 00:37:13 +0000 (17:37 -0700)]
Merge pull request #12608 from pgavlin/FixDSE
Fix a bug in LIR dead store removal.
Sergey Andreenko [Mon, 3 Jul 2017 21:09:37 +0000 (14:09 -0700)]
create GetAssertionIndex to convert from unsigned to AssertionIndex (#12554)
Pat Gavlin [Mon, 3 Jul 2017 19:51:36 +0000 (12:51 -0700)]
Fix a bug in LIR dead store removal.
This came in with the recent operand visitor changes: instead of marking
the operands of a dead indirect store unused, DSE would mark the operands
of its address unsued.
Jonghyun Park [Mon, 3 Jul 2017 18:08:57 +0000 (03:08 +0900)]
[x86/Linux] Restore PTR_MethodTable in FastPrimitiveArrayAllocator (#12569)
Sergey Andreenko [Sat, 1 Jul 2017 16:36:36 +0000 (09:36 -0700)]
Move the bitset iterator for bitsetasuint64inclass inside the bitset. (#12553)
It is how it is done for others bitsets.
Bruce Forstall [Sat, 1 Jul 2017 06:04:14 +0000 (23:04 -0700)]
Improve fgAddRefPred (#12585)
* Improve fgAddRefPred
Only do one search through the predecessor list looking for an
existing predecessor edge, or looking for the proper location to
insert a new predecessor edge. Previously, we traversed the list
twice (or part of twice) for new edges. For new edges, stop the
search when we reach the correct location in sorted order.
This reduces x86 release minopts instruction count by 0.42% and
full opts instruction count by 0.33% (of a superpmi replay of
the tests).
Fixes #12582
* Update for feedback
Michal Strehovský [Sat, 1 Jul 2017 03:04:18 +0000 (20:04 -0700)]
Merge pull request dotnet/corert#4046 from dotnet/nmirror
Merge nmirror to master
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Jan Kotas [Sat, 1 Jul 2017 05:23:26 +0000 (22:23 -0700)]
Reducing diffs with CoreRT (#12579)
* Rename m_firstChar to _firstChar to reduce CoreRT diffs
* Reducing diffs with CoreRT
* Delete dead code
Bruce Forstall [Sat, 1 Jul 2017 00:55:54 +0000 (17:55 -0700)]
Merge pull request #12568 from hseok-oh/ryujit/fix_11781
[RyuJIT/ARM32] Fix using fgMorphMultiregStructArg for mkrefany
Hyung-Kyu Choi [Sat, 1 Jul 2017 00:11:52 +0000 (09:11 +0900)]
Remove unnecessary update of RegRecord in LSRA (#12474)
* Remove unnecessary update of RegRecord
We don't need to clear assignedInterval of regRec,
because it was already cleared by checkAndClearInterval() above.
Signed-off-by: Hyung-Kyu Choi <hk0110.choi@samsung.com>
* Apply review feedback
- Add a assertion and comment for the assertion
Signed-off-by: Hyung-Kyu Choi <hk0110.choi@samsung.com>
Hyeongseok Oh [Fri, 30 Jun 2017 23:51:02 +0000 (08:51 +0900)]
[RyuJIT/ARM32] Return HFA struct (#12453)
* [RyuJIT/ARM32] Return HFA struct
- Enable return HFA struct
- Merge ARM32/ARM64 CodeGen::isStructReturn(GenTreePtr treeNode)
- Merge ARM32/ARM64 CodeGen::genStructReturn(GenTreePtr treeNode)
* Add comment
Add TODO comment to optimize two-float loading
Matt Ellis [Fri, 30 Jun 2017 21:18:49 +0000 (14:18 -0700)]
Merge pull request #12539 from ellismg/update-prerelease-tag
Update to master prerelease2 tag
Aditya Mandaleeka [Fri, 30 Jun 2017 21:06:51 +0000 (14:06 -0700)]
Merge pull request #12527 from gsfreema/relative-paths
Fix contributing workflow commit message link
Sean Gillespie [Fri, 30 Jun 2017 20:29:48 +0000 (13:29 -0700)]
Fix an issue where g_ephemeral_low would never get bashed into the write (#12563)
barrier when starting up with Server GC (x86 only).
Pat Gavlin [Fri, 30 Jun 2017 20:17:40 +0000 (13:17 -0700)]
Merge pull request #12577 from dpodder/optdata-170630
Update optdata to version
20170630-0138
Roman Artemev [Fri, 30 Jun 2017 18:12:57 +0000 (11:12 -0700)]
Merge pull request #12236 from rartemev/fix_legacyjit_tests
Fix legacyjit CI testing
Pat Gavlin [Fri, 30 Jun 2017 17:12:52 +0000 (10:12 -0700)]
Merge pull request #12570 from mskvortsov/FixVisitOperands
Add a missing case to GenTree::VisitOperands()
Carol Eidt [Fri, 30 Jun 2017 17:09:49 +0000 (10:09 -0700)]
Merge pull request #11815 from hseok-oh/ryujit/struct_split_small
[ARM32/RyuJIT] Lowering: split struct argument less than 16 bytes
Bruce Forstall [Fri, 30 Jun 2017 16:37:44 +0000 (09:37 -0700)]
Merge pull request #12576 from gsfreema/readme-fixes
README.md link and grammar fixes
Bruce Forstall [Fri, 30 Jun 2017 16:33:48 +0000 (09:33 -0700)]
Merge pull request #12559 from rartemev/fix_build_break
Fix build failure in internal builds
Daniel Podder [Fri, 30 Jun 2017 16:24:28 +0000 (11:24 -0500)]
Update optdata to version
20170630-0138
Scott Freeman [Fri, 30 Jun 2017 13:19:40 +0000 (09:19 -0400)]
README.md link and grammar fixes
Fixing various typos, grammar mistakes, and broken links in the root README.md file.
Mikhail Skvortcov [Fri, 30 Jun 2017 07:47:21 +0000 (10:47 +0300)]
Add a missing case to GenTree::VisitOperands()
Aditya Mandaleeka [Fri, 30 Jun 2017 06:51:45 +0000 (23:51 -0700)]
Merge pull request #12566 from adityamandaleeka/fix_license_header_winrtdq
Fix license header on new file
Pat Gavlin [Fri, 30 Jun 2017 05:55:02 +0000 (22:55 -0700)]
Merge pull request #12540 from pgavlin/OperandVisitor
Add a generic operand visitor to `GenTree`.
Hyeongseok Oh [Fri, 30 Jun 2017 01:02:43 +0000 (10:02 +0900)]
[ARM32/RyuJIT] Lowering: enable passing split struct less than 16 bytes
- Enable passing split struct (less than 16 bytes) in registers and on stack
morphing phase
Lowering phase
- Block at LSRA phase - add NYI_ARM
- Print split struct
Hyeongseok Oh [Fri, 30 Jun 2017 05:04:51 +0000 (14:04 +0900)]
[RyuJIT/ARM32] Fix using fgMorphMultiregStructArg for mkrefany
Block using fgMorphMultiregStructArg function for mkrefany.
Morphing for mkrefany struct is already done in fgMorphArgs function.
Aditya Mandaleeka [Fri, 30 Jun 2017 04:51:02 +0000 (21:51 -0700)]
Fix license header on new file.
Aditya Mandaleeka [Fri, 30 Jun 2017 04:48:09 +0000 (21:48 -0700)]
Merge pull request #12535 from adityamandaleeka/dispatcher_queues_coreclr
Support DispatcherQueues when getting WinRT dispatcher
Aditya Mandaleeka [Fri, 30 Jun 2017 04:47:38 +0000 (21:47 -0700)]
Update README.md
Vance Morrison [Fri, 30 Jun 2017 04:42:52 +0000 (21:42 -0700)]
Add link to archive of officially released .NET Core downloads (#12551)
Adeel Mujahid [Fri, 30 Jun 2017 04:41:26 +0000 (07:41 +0300)]
Make libnuma soft dependency (#12556)
Load libnuma dynamically, so it is not linked at compile time and
hence avoid making it a hard dependency at runtime.
Michal Strehovský [Wed, 28 Jun 2017 19:26:54 +0000 (12:26 -0700)]
Merge pull request dotnet/corert#4004 from dotnet/nmirror
Merge nmirror to master
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Jan Kotas [Fri, 30 Jun 2017 04:40:04 +0000 (21:40 -0700)]
Use public ConditionalWeakTable iterator (#12564)
Port https://github.com/dotnet/corert/pull/4030/commits/
a3837f7fc60a1b7db872cfef6463f74fb1ffeafb to CoreCLR
Jonghyun Park [Fri, 30 Jun 2017 04:31:00 +0000 (13:31 +0900)]
Move JIT_TrialAlloc declaration into jitinterfacex86.cpp (#12562)
Jan Kotas [Fri, 30 Jun 2017 04:30:42 +0000 (21:30 -0700)]
Remove m_ prefixes in BinaryReader.cs (#12561)
Brian Sullivan [Fri, 30 Jun 2017 02:19:54 +0000 (19:19 -0700)]
Merge pull request #12557 from briansull/add-verbose
Implement a /verbose flag to show the verbose output from crossgen
Pat Gavlin [Fri, 30 Jun 2017 00:19:03 +0000 (17:19 -0700)]
Address PR feedback.
Pat Gavlin [Fri, 30 Jun 2017 00:18:38 +0000 (17:18 -0700)]
Format code.
Brian Sullivan [Thu, 29 Jun 2017 22:57:40 +0000 (15:57 -0700)]
Implement a /verbose flag to show the verbose output from crossgen
Added info on /verbose option to PrintUsageHelper()
Convert printf(ascii) to wide strings in methodtable.cpp
In build.cmd echo the crossgen /CreatePdb command line
Roman Artemev [Thu, 29 Jun 2017 23:41:44 +0000 (16:41 -0700)]
Fix build failure in internal builds
Pat Gavlin [Wed, 28 Jun 2017 19:50:33 +0000 (12:50 -0700)]
Change LSRA to use the operand visitor.
Pat Gavlin [Wed, 28 Jun 2017 18:39:50 +0000 (11:39 -0700)]
Refactor LSRA's operand use builder.
Pat Gavlin [Wed, 28 Jun 2017 20:02:40 +0000 (13:02 -0700)]
Replace some uses of the operand iterator with the operand visitor.
Pat Gavlin [Wed, 28 Jun 2017 14:13:11 +0000 (07:13 -0700)]
Add a generic operand visitor to `GenTree`.
This visitor accepts any invokable argument (e.g. lambdas, functors,
etc.) with the following signature:
`GenTree::VisitResult Visitor(GenTree* operand)`
This visitor is typically more efficient than the operand iterator
due to better opportunities for inlining and shorter dynamic path
lengths when deciding which operands need to be visited.
Tarek Mahmoud Sayed [Thu, 29 Jun 2017 19:32:30 +0000 (12:32 -0700)]
Make ResourceManager netstandard 2.0 API behave correctly (#12536)
* Make ResourceManager netstandard 2.0 API behave correctly
In netstandard 2.0 we have enabled the APIs like GetObject, GetStream,..etc. these are not functioning correctly in UWP apps because was assuming we always uses PRI files. The changes here is to initialize the managed resources too and let these APIs behave as if we are running inside desktop app.
* added #ifdef
* Remove the throwing as PRI can handle case insenitive lookup
* remove un-needed resources
Jarret Shook [Thu, 29 Jun 2017 19:25:02 +0000 (12:25 -0700)]
Merge pull request #12532 from jashook/fix_arm64_and_arm32_package_restore
Fix the package restore for arm64 and arm32
Xiangyang (Mark) Guo [Thu, 29 Jun 2017 19:13:16 +0000 (12:13 -0700)]
Use the number of GC threads to calculate spin count (#12525)
* use the number of gc threads to calculate spin count
* use n_heaps
jashook [Wed, 28 Jun 2017 21:22:39 +0000 (14:22 -0700)]
Fix the package restore for arm64 and arm32
Bruce Forstall [Thu, 29 Jun 2017 16:05:41 +0000 (09:05 -0700)]
Merge pull request #12538 from dotnet-bot/from-tfs
Merge changes from TFS
Carol Eidt [Thu, 29 Jun 2017 14:48:18 +0000 (07:48 -0700)]
Merge pull request #12360 from wateret/armel/dblarg
[RyuJIT/armel] Support `double` argument passing
Jan Kotas [Thu, 29 Jun 2017 06:17:32 +0000 (23:17 -0700)]
Delete file moved to shared partition
Michal Strehovský [Wed, 28 Jun 2017 19:26:54 +0000 (12:26 -0700)]
Merge pull request dotnet/corert#4004 from dotnet/nmirror
Merge nmirror to master
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Daniel Podder [Thu, 29 Jun 2017 09:05:38 +0000 (04:05 -0500)]
Reduce the verbosity of optdata sync on stdout (#12543)
Set the "StandardOutputImportance" attribute on the RestoreOptData
target to low, matching the "RestoreNETCorePlatforms" target. Logging
to sync.log remains verbose, but stdout on the console is made much less
verbose.
Fixes #12127
Jan Kotas [Thu, 29 Jun 2017 07:21:17 +0000 (00:21 -0700)]
Fix GC contract violation (#12542)
Michal Strehovský [Thu, 29 Jun 2017 06:58:34 +0000 (23:58 -0700)]
Delete test that tests pinning of System.Object (#12537)
See dotnet/corefx#21673 for motivation. This test fails on CoreRT.
Hanjoung Lee [Mon, 19 Jun 2017 07:50:02 +0000 (16:50 +0900)]
[RyuJIT/armel] Support `double` argument passing
- Fix for putting `double` arguments between Lowering and Codegen phase
- Rename GenTreeMulLong to GenTreeMultiRegOp
GT_PUTARG_REG could be GenTreeMultiRegOp on RyuJIT/arm
Fix #12293
Jonghyun Park [Thu, 29 Jun 2017 03:50:36 +0000 (12:50 +0900)]
[x86/Linux] Adjust SP in throwing helper block (#12504)
* [x86/Linux] Adjust SP in throwing helper block
* Fix format error
* Use funKind intead of siInFuncletRegion
* Use genSPtoFPdelta (and add some comments)
* Fix a typo
* Revert irrelevant changes
Matt Ellis [Wed, 28 Jun 2017 22:33:03 +0000 (15:33 -0700)]
Update to master prerelease2 tag
release/uwp6.0 is going to use preview1 and we don't want to publish
different versions of the package with the same package identity
Pat Gavlin [Thu, 29 Jun 2017 00:15:59 +0000 (17:15 -0700)]
Merge pull request #12528 from pgavlin/NoPgoOption
Add a flag to build.{sh,cmd} to disable PGO.
Pat Gavlin [Thu, 29 Jun 2017 00:01:08 +0000 (17:01 -0700)]
Merge pull request #12534 from dotnet-bot/from-tfs
Merge changes from TFS
Pat Gavlin [Wed, 28 Jun 2017 23:04:26 +0000 (16:04 -0700)]
Merge pull request #12487 from pgavlin/GenTreeVisitor
Add a new, faster tree walker.
Brian Sullivan [Wed, 28 Jun 2017 22:59:06 +0000 (15:59 -0700)]
Remove unreached() macro
[tfs-changeset: 1663789]
Aditya Mandaleeka [Wed, 28 Jun 2017 22:38:13 +0000 (15:38 -0700)]
Support DispatcherQueues when getting WinRT sync context.
Bruce Forstall [Wed, 28 Jun 2017 22:21:40 +0000 (15:21 -0700)]
Merge pull request #12531 from dotnet-bot/from-tfs
Merge changes from TFS
Pat Gavlin [Wed, 28 Jun 2017 22:08:02 +0000 (15:08 -0700)]
Fix a release build break.
[tfs-changeset: 1663777]
Koundinya Veluri [Wed, 28 Jun 2017 19:07:08 +0000 (12:07 -0700)]
Move ReaderWriterLockSlim to shared partition
JC Aguilera [Wed, 28 Jun 2017 20:45:47 +0000 (13:45 -0700)]
Enable SourceBranch to be passed from the pipeline parameters
Enable SourceBranch to be passed from the pipeline parameters
Pat Gavlin [Wed, 28 Jun 2017 20:44:44 +0000 (13:44 -0700)]
Format code.
Pat Gavlin [Wed, 28 Jun 2017 20:40:40 +0000 (13:40 -0700)]
Address PR feedback.
Bruce Forstall [Wed, 28 Jun 2017 20:34:07 +0000 (13:34 -0700)]
Fix build error
[tfs-changeset: 1663755]
Pat Gavlin [Wed, 28 Jun 2017 19:59:19 +0000 (12:59 -0700)]
Fix usage style.
Steve MacLean [Wed, 28 Jun 2017 19:52:24 +0000 (15:52 -0400)]
Reduce excessive loop count in interlocked tests (#12222)
Jonghyun Park [Wed, 28 Jun 2017 18:44:18 +0000 (03:44 +0900)]
Use proper ifdef for EmitProfilerComCallXXX methods (#12502)
Jeremy Kuhne [Wed, 28 Jun 2017 18:43:54 +0000 (11:43 -0700)]
Fix debug assert (#12496)
Jonghyun Park [Wed, 28 Jun 2017 18:40:22 +0000 (03:40 +0900)]
Fix build error when FEATURE_READYTORUN_COMPILER is disabled (#12505)
Pat Gavlin [Wed, 28 Jun 2017 17:37:51 +0000 (10:37 -0700)]
Add a flag to build.{sh,cmd} to disable PGO.
This is helpful when performing JIT throughput measurements.
Hyeongseok Oh [Wed, 28 Jun 2017 18:01:18 +0000 (03:01 +0900)]
[RyuJIT/ARM32] Enable passing large split struct argument (#12050)
* [RyuJIT/ARM32] Enable passing large split struct
This enables passing split struct larger than 16 bytes.
To support splitted struct, it defines new GenTree type - GenTreePutArgSplit.
GenTreePutArgSplit is similar with GenTreePutArgStk,
but it is used for splitted struct only
and it has additional field to save register information.
GenTreePutArgSplit node is generated in lower phase.
* Apply reviews: split struct argument passing
- Fix some comments:
genPutArgSplit, GenTreePutArgStk, GenTreePutArgSplit, NuwPutArg, ArgComplete
- Add assertion check in genPutArgSplit, genCallInstruction
- Rename variable: baseReg
- Change flag for GenTreePutArgSplit: _TARGET_ARM && !LEGACY_BACKEND
- Change type of gtOtherRegs in GenTreePutArgSplit
- Remove duplicated code: NewPutArg
- Implement spill & restore flag for GenTreePutArgSplit
* Apply reviews
- Rebase
- Update managing spillFlag for split struct
- Implement spill & restore code generation
- Fix typos and rename variables
- Fix bug related to print gentree for split struct
* Fix bug and comments
- Fix bug in regset.cpp
- Add comments in morph.cpp's NYI_ARM
- Fix comments' typo in lsraarmarcp.cpp
Scott Freeman [Wed, 28 Jun 2017 15:39:48 +0000 (11:39 -0400)]
Fix contributing workflow commit message link
A recent change moved the Commit Messages section to a different
markdown file. This change fixes that link, and provides relative
paths for links where appropiate. This keeps people in their own
fork of the repo when browsing on github.
JC Aguilera [Wed, 28 Jun 2017 17:15:58 +0000 (10:15 -0700)]
Enable SourceBranch to be passed from the pipeline parameters
sets SkipBranchAndVersionOverrides=false so SourceBranch and SourceVersion
are correctly passed through the pipeline file.
set SkipBranchAndVersionOverrides=true for the publish definitions as
they don't build from the SourceBranch and instead use a different
tools branch to do their work.
Pat Gavlin [Tue, 27 Jun 2017 22:28:26 +0000 (15:28 -0700)]
Convert lvaMarkLclRefs to a visitor.
Pat Gavlin [Tue, 27 Jun 2017 18:34:33 +0000 (11:34 -0700)]
Convert lva{Inc,Dec}RefCntsCB to a visitor.
Pat Gavlin [Tue, 27 Jun 2017 06:35:10 +0000 (23:35 -0700)]
Convert rationalize to the generic visitor.
Pat Gavlin [Tue, 27 Jun 2017 06:18:32 +0000 (23:18 -0700)]
Convert fgWalkTree{Pre,Post,} to use the new visitor.
Pat Gavlin [Tue, 27 Jun 2017 06:17:30 +0000 (23:17 -0700)]
Add a generic tree visitor.
This visitor replaces the function-pointer-based walkers with a more
modern design centered around the curiously-recurring-template pattern.
Adeel Mujahid [Wed, 28 Jun 2017 15:02:16 +0000 (18:02 +0300)]
Cleanup some instances of project.json from the repo (#12484)
* Replace ScriptGenerator project.json with csproj
* Update project.json occurrences in docs
Fix few typos.
* Remove project.json comments
Kyungwoo Lee [Wed, 28 Jun 2017 15:00:27 +0000 (08:00 -0700)]
Fix remove in list (#12497)
`remove` uses `erase` to delete the entry in list.
Since `erase` returns the next iterator, the iterator shouldn't be increased
when the entry is found and deleted.
Hugh Bellamy [Wed, 28 Jun 2017 14:59:15 +0000 (21:59 +0700)]
Remove disabled tests for Marshal.IsComObject(null) (#12359)
Ruben Ayrapetyan [Wed, 28 Jun 2017 06:16:01 +0000 (09:16 +0300)]
Partially remove relocations from Class section of NGEN-ed images (#11962)
* Remove relocations for ParamTypeDesc::m_TemplateMT.
* Remove relocations for LayoutEEClass::m_LayoutInfo.m_pFieldMarshalers.
* Prepare RelativeFixupPointer.
* Remove relocations for FieldMarshaler::m_pFD and FieldMarshaler_*::m_*.
Jonghyun Park [Wed, 28 Jun 2017 06:12:51 +0000 (15:12 +0900)]
Remove unused declaration (#12501)
Sergey Andreenko [Wed, 28 Jun 2017 00:06:59 +0000 (17:06 -0700)]
spmi add R2R field to getFieldInfo (#12498)
Ruben Ayrapetyan [Tue, 27 Jun 2017 16:22:07 +0000 (19:22 +0300)]
Fix JIT_NewArr1 8-byte alignment for ELEMENT_TYPE_R8 on x86.