Michelle McDaniel [Thu, 16 Feb 2017 17:14:35 +0000 (09:14 -0800)]
Merge pull request #9588 from adiaaida/perfLegacyJit
Add perf job for legacy jit
Jonghyun Park [Thu, 16 Feb 2017 16:40:03 +0000 (01:40 +0900)]
[x86/Linux] Emit proper frame for FastGetSharedStaticBase (#9618)
* [x86/Linux] Emit proper frame for FastGetSharedStaticBase
* Adjust Stack-align Padding
* Remove FEATURE_PAL ifdef
Steve MacLean [Thu, 16 Feb 2017 08:55:20 +0000 (03:55 -0500)]
[Unix] Fix arm/lldb rootfs breakage (#9625)
SaeHie Park [Thu, 16 Feb 2017 08:50:08 +0000 (17:50 +0900)]
[x86/Linux] Fix IsIPInMarkedJitHelper to handle sigsegv (#9605)
Include JIT_WriteBarrier and JIT_CheckedWriteBarrier functions
so that we can handle NullReferenceException for sigsegv from WriteBarriers.
Dan Moseley [Thu, 16 Feb 2017 05:50:01 +0000 (21:50 -0800)]
Merge pull request #9603 from danmosemsft/defines4
Remove more dead native defines
Dan Moseley [Thu, 16 Feb 2017 02:09:34 +0000 (18:09 -0800)]
Update testing-with-corefx.md
Andy Ayers [Thu, 16 Feb 2017 01:48:59 +0000 (17:48 -0800)]
Merge pull request #9622 from AndyAyersMS/FixRetDesktopBreak
JIT: fix desktop build break
Dan Moseley [Wed, 15 Feb 2017 23:55:09 +0000 (15:55 -0800)]
Merge pull request #9599 from dotnet-bot/master-UpdateDependencies
Update CoreClr, CoreFx to beta-25015-04, beta-25015-02, respectively (master)
danmosemsft [Wed, 15 Feb 2017 23:52:17 +0000 (15:52 -0800)]
Other props stragglers for never defined symbols
danmosemsft [Wed, 15 Feb 2017 23:44:09 +0000 (15:44 -0800)]
More FEATURE_WIN_DB_APPCOMPAT
danmosemsft [Wed, 15 Feb 2017 23:41:02 +0000 (15:41 -0800)]
More FEATURE_ISOSTORE
danmosemsft [Wed, 15 Feb 2017 23:38:26 +0000 (15:38 -0800)]
Remove never defined FEATURE_X509
danmosemsft [Wed, 15 Feb 2017 22:58:27 +0000 (14:58 -0800)]
Remove never defined FEATURE_WIN_DB_APPCOMPAT
danmosemsft [Wed, 15 Feb 2017 22:55:46 +0000 (14:55 -0800)]
Remove never defined FEATURE_UEF_CHAINMANAGER
danmosemsft [Wed, 15 Feb 2017 22:20:38 +0000 (14:20 -0800)]
Remove never defined FEATURE_TRACELOGGING except in jit/**
danmosemsft [Wed, 15 Feb 2017 21:49:49 +0000 (13:49 -0800)]
Remove never defined FEATURE_SERIALIZATION
Andy Ayers [Wed, 15 Feb 2017 23:35:12 +0000 (15:35 -0800)]
JIT: fix desktop build break
Desktop builds warn about unreachable code after returns, so modify
how finally chain merging is enabled and disabled in various configs.
Michelle McDaniel [Tue, 14 Feb 2017 18:11:56 +0000 (10:11 -0800)]
Add perf job for legacy jit
Add performance testing jobs for jit32. This change adds jit32 as an
architecture for perf.groovy. It also renames the x86 legs to be
x86ryujit. For the two x86-based architectures, we pass a testenv. This is
so if we have to switch which version is the default jit on x86, we will
not need to change the perf jobs, we can just update the testenv files.
This change updates run-xunit-perf.cmd to take a test env script as a
parameter and run it before running the tests if it exists.
This change also cleans up some of the calls in perf.groovy to use
variables that we've already set, rather than baking in the contents of
those variables (changing Release to ${configuration}).
SaeHie Park [Wed, 15 Feb 2017 21:46:36 +0000 (06:46 +0900)]
[x86/Linux] Fix GetModRMOperandValue() (#9600)
Getting idiv divisor in GetModRMOperandValue() needs to handle x86 also
This patch will correct address of divisor when it resides in memory
Related unit test case: JIT/Regression/CLR-x86-JIT/V1-M09.5-PDC/b16328/b16328
Michelle McDaniel [Wed, 15 Feb 2017 21:32:22 +0000 (13:32 -0800)]
Merge pull request #9587 from adiaaida/newDelaySign
Enable delay signing in ilasm
danmosemsft [Wed, 15 Feb 2017 21:16:04 +0000 (13:16 -0800)]
Extra line
Dan Moseley [Wed, 15 Feb 2017 21:15:00 +0000 (13:15 -0800)]
Merge pull request #9613 from danmosemsft/stragglers
Remove dead code
chcosta [Wed, 15 Feb 2017 21:14:09 +0000 (13:14 -0800)]
Merge pull request #9263 from chcosta/refactor_packaging
Refactor coreclr packaging
Andy Ayers [Wed, 15 Feb 2017 19:11:13 +0000 (11:11 -0800)]
JIT: Finally chain merging (#8810)
Add an optimization that performs a specialized tail merge for chains
of callfinallys. These can arise from try-finallys where there are
multiple exit points from the try that have the same continuation.
When the jit generates a callfinally, it does so without considering
whether some previously generated callfinally might invoke the same
handler and then continue on to the same continuation.
This optimization looks for callfinallys that invoke the same handler
and have the same continuation and effectively merges them into one
canonical callfinally.
This optimization is done bottom-up (from outermost handler invocation
to innermost) to allow the merging done at an outer levels to enable
merging at inner levels.
This optimization saves code size and also results in more compact EH
reporting, since the callfinallies are reported to the runtime as
duplicate EH regions.
When run upstream of finally cloning, finally chain merging also allows
more of the paths exiting the try to exit via the clone.
Also fix an issue in block ref count maintenance during empty try
removal that caused an assert during finally chain merging.
Christopher Costa [Wed, 15 Feb 2017 18:38:46 +0000 (10:38 -0800)]
Rename dir.targets -> dir.traversal.targets
Michelle McDaniel [Mon, 13 Feb 2017 19:00:58 +0000 (11:00 -0800)]
Enable delay signing in ilasm
Corefx needs the .Net Core version of ilasm to create delay signable
assemblies. This change brings back AllocateStrongNameSignature that was
deleted in 2efbb92 and modifies it to use similar logic from Roslyn to
determine the size of the signature that we need to allocate space for.
Fixes #9292.
dotnet-bot [Wed, 15 Feb 2017 17:53:21 +0000 (17:53 +0000)]
Update CoreClr, CoreFx to beta-25015-04, beta-25015-02, respectively
danmosemsft [Wed, 15 Feb 2017 17:39:39 +0000 (09:39 -0800)]
Remove dead code
Andy Ayers [Wed, 15 Feb 2017 17:33:16 +0000 (09:33 -0800)]
Merge pull request #9479 from AndyAyersMS/TrimInlineGcRefs
JIT: null out inline gc type locals after inline body
Steve MacLean [Wed, 15 Feb 2017 17:00:56 +0000 (12:00 -0500)]
[ARM64/Unix] LLDB (#9504)
* [Arm64/Unix] Default to no lldb in build-rootfs
lldb is not readily available on arm64 Ubuntu releases prior to
16.10
Set the default lldb version to none to allow building Arm64 rootfs
* [Arm64/Unix] Warn if lldb is missing
SOS lldb plugin is an optional component
lldb is not availiable on arm64 prior to lldb3.9
lldb3.9 is not readily available on many ubuntu until 16.10
Change error to warning to simplify building arm64
Hyung-Kyu Choi [Wed, 15 Feb 2017 12:07:08 +0000 (21:07 +0900)]
Fix build-rootfs.sh to include lldb package (#9608)
lldb package is missing for architectures other than arm and armel.
Signed-off-by: Hyung-Kyu Choi <hk0110.choi@samsung.com>
danmosemsft [Wed, 15 Feb 2017 06:24:54 +0000 (22:24 -0800)]
Remove never defined FEATURE_RWLOCK
danmosemsft [Wed, 15 Feb 2017 06:20:22 +0000 (22:20 -0800)]
Remove never defined FEATURE_REMOTING
danmosemsft [Wed, 15 Feb 2017 05:34:56 +0000 (21:34 -0800)]
Remove never defined FEATURE_REFLECTION_ONLY_LOAD
danmosemsft [Wed, 15 Feb 2017 05:23:33 +0000 (21:23 -0800)]
Remove never defined FEATURE_PLS
danmosemsft [Wed, 15 Feb 2017 05:21:22 +0000 (21:21 -0800)]
Remove never defined FEATURE_PERFMON
danmosemsft [Wed, 15 Feb 2017 05:18:37 +0000 (21:18 -0800)]
Remove never defined FEATURE_NON_UNICODE_CODE_PAGES
danmosemsft [Wed, 15 Feb 2017 05:13:22 +0000 (21:13 -0800)]
Remove never defined FEATURE_MULTIMODULE_ASSEMBLIES
danmosemsft [Wed, 15 Feb 2017 05:07:49 +0000 (21:07 -0800)]
Remove never defined FEATURE_MIXEDMODE
danmosemsft [Wed, 15 Feb 2017 04:49:11 +0000 (20:49 -0800)]
Remove never defined FEATURE_METHOD_RENTAL
danmosemsft [Wed, 15 Feb 2017 04:44:23 +0000 (20:44 -0800)]
Remove never defined FEATURE_METADATA_STANDALONE_WINRT
danmosemsft [Wed, 15 Feb 2017 04:37:29 +0000 (20:37 -0800)]
Remove never defined FEATURE_METADATA_STANDALONE_WINRT_RO
SaeHie Park [Wed, 15 Feb 2017 05:12:06 +0000 (14:12 +0900)]
[x86/Linux] Fix CreateInstantiatingILStub (#9590)
The hidden argument should be always passed last for x86
danmosemsft [Tue, 14 Feb 2017 21:58:27 +0000 (13:58 -0800)]
Remove never defined FEATURE_LEAK_CULTURE_INFO
Rama krishnan Raghupathy [Wed, 15 Feb 2017 02:55:00 +0000 (18:55 -0800)]
Merge pull request #9472 from ramarag/RMLocalizationparity
RM localization parity with desktop
Jonghyun Park [Wed, 15 Feb 2017 01:11:32 +0000 (10:11 +0900)]
Rewrite GetRegisterAddressByIndex using getRegAddr (#9574)
* Rewrite GetRegisterAddressByIndex using getRegAddr
* Use offset-based indirection in x86 getRegAddr
William Godbe [Wed, 15 Feb 2017 00:49:20 +0000 (16:49 -0800)]
Merge pull request #9593 from wtgodbe/skipGCTests
Return exit code 0 for long-running/GCSimulator tests in Helix
Rama Krishnan Raghupathy [Wed, 15 Feb 2017 00:44:42 +0000 (16:44 -0800)]
Removing nativeGetResourceFallbackArray support from Vm
Joseph Tremoulet [Wed, 15 Feb 2017 00:41:17 +0000 (19:41 -0500)]
Merge pull request #9583 from JosephTremoulet/ByrefConst
Value number casts and zeros of TYP_BYREF
Christopher Costa [Wed, 15 Feb 2017 00:29:51 +0000 (16:29 -0800)]
change package_platform to platform
William Godbe [Wed, 15 Feb 2017 00:27:07 +0000 (16:27 -0800)]
Merge pull request #9589 from dotnet-bot/master-UpdateDependencies
Update CoreClr to beta-25014-04 (master)
Rama Krishnan Raghupathy [Thu, 9 Feb 2017 23:09:12 +0000 (15:09 -0800)]
Removing Os specified ulimatefallback for localization
Christopher Costa [Wed, 15 Feb 2017 00:14:31 +0000 (16:14 -0800)]
Exclude binaries not built on armel
Sivarv [Tue, 14 Feb 2017 23:48:14 +0000 (15:48 -0800)]
Merge pull request #9485 from sivarv/span
Promote struct containing fields of struct of a single pointer-size field
Christopher Costa [Tue, 14 Feb 2017 23:40:20 +0000 (15:40 -0800)]
Remove PackagePlatforms property
wtgodbe [Tue, 14 Feb 2017 22:49:06 +0000 (14:49 -0800)]
Return exit code 0 for long-running/GCSimulator tests in Helix
Sergey Andreenko [Tue, 14 Feb 2017 22:55:30 +0000 (14:55 -0800)]
Merge pull request #9522 from sandreenko/GVM-for-corert
Generic Virtual methods for CoreRT
dotnet-bot [Tue, 14 Feb 2017 22:52:30 +0000 (22:52 +0000)]
Update CoreClr to beta-25014-04
Steve MacLean [Tue, 14 Feb 2017 22:26:32 +0000 (17:26 -0500)]
Fix EH_LOG Catch set notation (#9586)
Update log to indicate EHClause.TryEndPC in non-inclusive
danmosemsft [Tue, 14 Feb 2017 21:53:43 +0000 (13:53 -0800)]
Remove never defined FEATURE_ISOSTORE
danmosemsft [Tue, 14 Feb 2017 21:43:19 +0000 (13:43 -0800)]
Remove never defined FEATURE_INCLUDE_ALL_INTERFACES
danmosemsft [Tue, 14 Feb 2017 21:26:38 +0000 (13:26 -0800)]
Remove never defined FEATURE_IMPERSONATION
sivarv [Fri, 10 Feb 2017 05:31:04 +0000 (21:31 -0800)]
Promote struct containing fields of struct of a single pointer-size field.
Christopher Costa [Tue, 14 Feb 2017 21:48:28 +0000 (13:48 -0800)]
Add arch to distrorid
danmosemsft [Tue, 14 Feb 2017 21:19:14 +0000 (13:19 -0800)]
Remove never defined FEATURE_IDENTITY_REFERENCE
William Godbe [Tue, 14 Feb 2017 21:04:05 +0000 (13:04 -0800)]
Merge pull request #9584 from wtgodbe/chmod
chmod +x all .sh files before Helix execution
Sergey Andreenko [Sat, 11 Feb 2017 02:35:00 +0000 (18:35 -0800)]
Generic Virtual calls for CoreRT
wtgodbe [Tue, 14 Feb 2017 20:34:53 +0000 (12:34 -0800)]
chmod +x all .sh files before Helix execution
Gaurav Khanna [Tue, 14 Feb 2017 20:04:14 +0000 (12:04 -0800)]
Merge pull request #9579 from dotnet-bot/master-UpdateDependencies
Update CoreClr to beta-25014-03 (master)
Andy Ayers [Fri, 10 Feb 2017 00:43:55 +0000 (16:43 -0800)]
JIT: null out inline gc type locals after inline body
Inlining can sometimes end up stretching GC lifetimes for inlinee
locals past the end of the inlinee method body.
This change extends the work done for inlining methods with pinned
locals to null out all gc ref type locals. If there are any gc type
locals, the return value is copied to a temp inside the inlinee body,
and then at the end of the body the gc type locals are set to null.
In most cases these null stores end up getting removed by dead code
elimination, but if the local ends up untracked, the store remains
and limits the active GC lifetime.
This change requires more extensive use of the return value spill temp
(since we must be absolutely sure the return value expression does not
depend on any of the locals). We now use the spill temp if any local is
a gc ref type (used or not).
More widespread use of the spill temp exposed an issue in the tail call
transformation, where the side effect flags were overly pessimistic for
a post tail-call GT_COMMA statement that represented an ignored return
value from an inlined call. The root issue is that the return value
placeholder is given a GTF_CALL effect but later when the actual return
value expression is substituted in place there may be no side effect --
in particular this happens when the return value expression is the spill
temp.
So, we also update the post tail-call side-effect-free statment check to
look through the potentially pessimistic GT_COMMA flags and check for side
effects on the child nodes.
Closes #9218.
Christopher Costa [Tue, 14 Feb 2017 20:01:33 +0000 (12:01 -0800)]
Fix typo
Christopher Costa [Tue, 14 Feb 2017 19:47:56 +0000 (11:47 -0800)]
Default distrorid on osx
Joseph Tremoulet [Tue, 14 Feb 2017 19:39:03 +0000 (14:39 -0500)]
Value number casts and zeros of TYP_BYREF
Value numbering already has a representation for constants of byref type.
Hook up both `VNZeroForType` and `EvalCastForConstantArgs` to return a
value number using this representation (rather than fail an assertion)
when the requested result type is byref.
Fixes #9453
Christopher Costa [Tue, 14 Feb 2017 18:46:21 +0000 (10:46 -0800)]
Always specify a default for derivedpackagetargetosgroup
dotnet-bot [Tue, 14 Feb 2017 17:49:32 +0000 (17:49 +0000)]
Update CoreClr to beta-25014-03
Pat Gavlin [Tue, 14 Feb 2017 17:24:06 +0000 (09:24 -0800)]
Merge pull request #9566 from pgavlin/MeasureIR
Add IR size after certain phases to the JIT log.
Gaurav Khanna [Tue, 14 Feb 2017 17:12:57 +0000 (09:12 -0800)]
Merge pull request #9575 from dotnet-bot/master-UpdateDependencies
Update CoreClr, CoreFx to beta-25014-02, beta-25014-02, respectively (master)
Erti-Chris Eelmaa [Tue, 14 Feb 2017 16:35:16 +0000 (16:35 +0000)]
Add case-insensitive String.Replace overloads (#9316)
Added overloads for String.Replace so that they now accept
StringComparison and CultureInfo as input parameters.
Jarret Shook [Tue, 14 Feb 2017 16:31:05 +0000 (08:31 -0800)]
Merge pull request #9475 from jashook/lst_creator_update
Update lst_creator and Arm64 lstFile
dotnet-bot [Tue, 14 Feb 2017 15:04:30 +0000 (15:04 +0000)]
Update CoreClr, CoreFx to beta-25014-02, beta-25014-02, respectively
SaeHie Park [Tue, 14 Feb 2017 14:55:45 +0000 (23:55 +0900)]
[x86/Linux] Fix IL Stub for Shared Generic (#9571)
Fix parameter order in UnboxingILStub for Shared Generic
Gaurav Khanna [Tue, 14 Feb 2017 05:16:09 +0000 (21:16 -0800)]
Merge pull request #9411 from hqueue/cross/common
Use same logic to prepare rootfs across dotnet if possible
Bruce Forstall [Tue, 14 Feb 2017 05:15:36 +0000 (21:15 -0800)]
Merge pull request #9546 from parjong/fix/issue_9545
[x86/Linux] Ignore fake jump while checking funclet branches
Andy Ayers [Tue, 14 Feb 2017 04:38:56 +0000 (20:38 -0800)]
Merge pull request #9572 from AndyAyersMS/FixTailCallStress
Jit: fix gtIsRecursiveCall
Gaurav Khanna [Tue, 14 Feb 2017 04:12:26 +0000 (20:12 -0800)]
Merge pull request #9573 from dotnet-bot/master-UpdateDependencies
Update CoreFx to beta-25014-01 (master)
Sivarv [Tue, 14 Feb 2017 03:54:27 +0000 (19:54 -0800)]
Merge pull request #9567 from fiigii/master
Directly support Min/Max intrinsic for Vector<T> on SSE3_4 and above targets
dotnet-bot [Tue, 14 Feb 2017 02:59:38 +0000 (02:59 +0000)]
Update CoreFx to beta-25014-01
Andy Ayers [Tue, 14 Feb 2017 02:38:14 +0000 (18:38 -0800)]
Jit: fix gtIsRecursiveCall
When called from the inline compiler, this needs to look at the root
method's handle, not the inlined method's handle.
Fixes #9568.
Pat Gavlin [Tue, 14 Feb 2017 01:56:48 +0000 (17:56 -0800)]
Format code.
noahfalk [Tue, 14 Feb 2017 01:51:40 +0000 (17:51 -0800)]
Merge pull request #9298 from noahfalk/r2r
Rejit support for R2R
Fei Peng [Tue, 14 Feb 2017 00:07:56 +0000 (16:07 -0800)]
Directly support Min/Max intrinsic for Vector<T> on SSE3_4 and above targets
Christopher Costa [Tue, 14 Feb 2017 01:24:26 +0000 (17:24 -0800)]
Merge branch 'master' of https://github.com/dotnet/coreclr into refactor_packaging
William Godbe [Tue, 14 Feb 2017 01:23:55 +0000 (17:23 -0800)]
Merge pull request #9483 from dotnet-bot/master-UpdateDependencies
Update CoreClr, CoreFx to beta-25013-09, beta-25013-01, respectively (master)
Christopher Costa [Tue, 14 Feb 2017 01:10:52 +0000 (17:10 -0800)]
Respond to PR feedback
Dan Moseley [Tue, 14 Feb 2017 00:56:52 +0000 (16:56 -0800)]
Merge pull request #9551 from danmosemsft/dead2
Remove dead source files in vm\**
Pat Gavlin [Tue, 14 Feb 2017 00:56:08 +0000 (16:56 -0800)]
Merge pull request #9564 from pgavlin/ReportCodeSize
Report code and GC info size in the JIT time log.
jashook [Fri, 3 Feb 2017 00:48:27 +0000 (16:48 -0800)]
Update lst_creator.
Generally refactoring, make it a little more robust and easier to use.
In addition, expand its functionality to update the lstFile.
Pat Gavlin [Mon, 13 Feb 2017 23:39:33 +0000 (15:39 -0800)]
Add IR size after certain phases to the JIT log.
This change adds support for measuring and reporting the number of nodes
in a function after a certain subset of the JIT's phases. This reporting
is enabled by setting `COMPlus_JitMeasureIR` and `COMPlus_JtiTimeLogCsv`
in conjunction with each other.
Joseph Tremoulet [Mon, 13 Feb 2017 23:38:50 +0000 (18:38 -0500)]
Merge pull request #9560 from JosephTremoulet/TypeToTypeVN
Value number TypeHandleToRuntimeType helper
dotnet-bot [Mon, 13 Feb 2017 23:36:44 +0000 (23:36 +0000)]
Update CoreClr, CoreFx to beta-25013-09, beta-25013-01, respectively