platform/upstream/coreclr.git
7 years agoCR feedback
Brian Sullivan [Sat, 25 Mar 2017 00:51:47 +0000 (17:51 -0700)]
CR feedback
Removed assert about BB_NONE

7 years agoFix for JitStress test failures
Brian Sullivan [Fri, 24 Mar 2017 22:42:04 +0000 (15:42 -0700)]
Fix for JitStress test failures

7 years agoMerge pull request #10459 from dotnet/mirror-merge-9061692
Jan Kotas [Fri, 24 Mar 2017 21:59:25 +0000 (14:59 -0700)]
Merge pull request #10459 from dotnet/mirror-merge-9061692

Mirror changes from dotnet/corert

7 years agoDelete moved file
Jan Kotas [Fri, 24 Mar 2017 20:16:39 +0000 (13:16 -0700)]
Delete moved file

7 years agoUse Array.Copy with index and remove coreclr specific function
Alex Perovich [Fri, 24 Mar 2017 18:40:21 +0000 (11:40 -0700)]
Use Array.Copy with index and remove coreclr specific function

7 years agoNS2.0 Complete DBNull's surface area. (#3085)
Atsushi Kanamori [Thu, 23 Mar 2017 22:34:07 +0000 (15:34 -0700)]
NS2.0 Complete DBNull's surface area. (#3085)

* Copy over CoreCLRs' DBNull.cs

* Make it presentable, then move it into the shared partition.

7 years agoUpdate CoreClr to beta-25123-08 (#10435)
dotnet bot [Fri, 24 Mar 2017 17:39:37 +0000 (10:39 -0700)]
Update CoreClr to beta-25123-08 (#10435)

7 years agoMerge pull request #10149 from JosephTremoulet/DestSingleField
Joseph Tremoulet [Fri, 24 Mar 2017 16:55:01 +0000 (12:55 -0400)]
Merge pull request #10149 from JosephTremoulet/DestSingleField

Scalarize single-field-to-lclVar block copy

7 years agoMerge pull request #10451 from ionuttamas/patch-1
Bruce Forstall [Fri, 24 Mar 2017 15:57:23 +0000 (08:57 -0700)]
Merge pull request #10451 from ionuttamas/patch-1

Update ryujit-overview.md

7 years ago[Linux][GDB-JIT] Add lexical scopes info for local variables (#10307)
Igor Kulaychuk [Fri, 24 Mar 2017 15:52:47 +0000 (18:52 +0300)]
[Linux][GDB-JIT] Add lexical scopes info for local variables (#10307)

* Fix memory leak when getting local variable names

* Pass locals from SymbolReader using new LocalVarInfo struct

* Map IL to native addresses for variable scopes

* Dump variables with scopes

* Add scope info to VarDebugInfo

* Remove unnecessary usage of lines info in BuildDebugInfo

* Use holders for scopes and local var names

* Move array of FunctionMember from global scope to local scope

* Move SymbolNames from global scope to local scope

7 years agoCopy-paste errors found by PVS-Studio. (#10450)
Ilya [Fri, 24 Mar 2017 15:48:02 +0000 (18:48 +0300)]
Copy-paste errors found by PVS-Studio. (#10450)

I used PVS-Studio static analyzer to check this project. I would like to suggest a variant of the way to fix the copy-paste errors, detected with the help of V778 diagnostic. Description of the diagnostic: https://www.viva64.com/en/w/V778/

7 years agoUpdate ryujit-overview.md
Ionut Tamas [Fri, 24 Mar 2017 11:58:53 +0000 (13:58 +0200)]
Update ryujit-overview.md

7 years agoUpdate ci-trigger-phrases.md (#10444)
Hyeongseok Oh [Fri, 24 Mar 2017 07:16:47 +0000 (16:16 +0900)]
Update ci-trigger-phrases.md (#10444)

- Add Linux arm/x86 CI trigger phrases
- Add Ubuntu16.10 x64 pri0 trigger phrase
- Remove Ubuntu15.10 x64 pri0 trigger phrase

7 years agoAdd PNSE messages (#10440)
Dan Moseley [Fri, 24 Mar 2017 06:47:38 +0000 (23:47 -0700)]
Add PNSE messages (#10440)

* PNSE messages

* threading

* marshal

* interop svc

* More

* more

* Remove env var special casing for UWP

* Pending question

* remove pinvoke

7 years agoMerge pull request #10426 from BruceForstall/FixIlasmRoundtrip
Jan Kotas [Fri, 24 Mar 2017 04:02:52 +0000 (21:02 -0700)]
Merge pull request #10426 from BruceForstall/FixIlasmRoundtrip

Enable FEATURE_METADATA_EMIT_ALL for non-crossgen compiles

7 years ago[Local GC] Redirect fatal errors to the EE (#10436)
Sean Gillespie [Fri, 24 Mar 2017 01:40:56 +0000 (18:40 -0700)]
[Local GC] Redirect fatal errors to the EE (#10436)

* [Local GC] Redirect fatal errors to the EE

* Address code review feedback: don't fetch the IP when reporting a fatal error

7 years agoGetContainingObject is inconsistent with the lowest address it chooses. (#10438)
Maoni Stephens [Fri, 24 Mar 2017 01:24:55 +0000 (18:24 -0700)]
GetContainingObject is inconsistent with the lowest address it chooses. (#10438)

For profiling purpose it only cares about condemned ranges; for byref
validation it cares about any object on the heap.

7 years agoMerge pull request #10400 from briansull/ibc-counts
Brian Sullivan [Fri, 24 Mar 2017 01:24:40 +0000 (18:24 -0700)]
Merge pull request #10400 from briansull/ibc-counts

Change setBBProfileWeight so that we no longer multiply a profile counts by 100

7 years agoMerge pull request #10434 from dotnet/mirror-merge-9060302
Jan Kotas [Fri, 24 Mar 2017 00:39:59 +0000 (17:39 -0700)]
Merge pull request #10434 from dotnet/mirror-merge-9060302

Mirror changes from dotnet/corert

7 years agoMove StringBuilder to shared partition (#10357)
Alex Perovich [Thu, 23 Mar 2017 23:33:46 +0000 (18:33 -0500)]
Move StringBuilder to shared partition (#10357)

* Move StringBuilder to shared partition

* Fix PR comments

* s/CoreClr/CoreCLR

* Remove unused ThreadSafeCopy overload

* Actually rename the file

7 years agoDelete NewMerger
Jan Kotas [Thu, 23 Mar 2017 18:55:26 +0000 (11:55 -0700)]
Delete NewMerger

This was only used as part of C++ link.exe for IJW

7 years agoEnable FEATURE_METADATA_EMIT_ALL for non-crossgen compiles
Bruce Forstall [Thu, 23 Mar 2017 16:31:35 +0000 (09:31 -0700)]
Enable FEATURE_METADATA_EMIT_ALL for non-crossgen compiles

This allows ilasm roundtrip test to work with NetStandard 2.0
changes where C# compiler emits a ".permissionset" attribute
into the assembly that ildasm emits. This define enables the
APIs that ilasm uses to process this attribute.

Re-enable ilasm roundtrip test.

Fixes #8418

7 years agoMerge pull request #10417 from viva64/master
Aditya Mandaleeka [Thu, 23 Mar 2017 22:14:48 +0000 (15:14 -0700)]
Merge pull request #10417 from viva64/master

Missing comma

7 years agoAdd missing
Alex Perovich [Thu, 23 Mar 2017 22:08:35 +0000 (15:08 -0700)]
Add missing

7 years agoRemove moved files
Alex Perovich [Thu, 23 Mar 2017 21:49:30 +0000 (14:49 -0700)]
Remove moved files

7 years agoporting desktop changes to enable up to 1024 CPUs (#10404)
Maoni Stephens [Thu, 23 Mar 2017 21:37:47 +0000 (14:37 -0700)]
porting desktop changes to enable up to 1024 CPUs (#10404)

porting desktop changes to enable up to 1024 CPUs

7 years agoMove IReflect.cs to shared partition. (#3074)
Atsushi Kanamori [Thu, 23 Mar 2017 13:54:08 +0000 (06:54 -0700)]
Move IReflect.cs to shared partition. (#3074)

 Split AssemblyAttributes.cs into properly named files.

7 years agoMove the easy files in System\Reflection to the shared partition. (#3060)
Atsushi Kanamori [Wed, 22 Mar 2017 18:16:35 +0000 (11:16 -0700)]
Move the easy files in System\Reflection to the shared partition. (#3060)

* Prepare the "easy" System\Reflection .cs files for move to shared partition

Files to be moved the shared partition (after https://github.com/dotnet/coreclr/pull/10387 side is in)

AmbiguousMatchException.cs
AssemblyAttributes.cs
AssemblyContentType.cs
AssemblyNameFlags.cs
Binder.cs
BindingFlags.cs
CallingConventions.cs
CustomAttributeFormatException.cs
DefaultMemberAttribute.cs
EventAttributes.cs
ExceptionHandlingClauseOptions.cs
FieldAttributes.cs
GenericParameterAttributes.cs
ICustomAttributeProvider.cs
ImageFileMachine.cs
InterfaceMapping.cs
IntrospectionExtensions.cs
InvalidFilterCriteriaException.cs
IReflectableType.cs
ManifestResourceInfo.cs
MemberFilter.cs
MemberTypes.cs
MethodAttributes.cs
MethodImplAttributes.cs
Missing.cs
ModuleResolveEventHandler.cs
ParameterAttributes.cs
ParameterModifier.cs
PortableExecutableKinds.cs
ProcessorArchitecture.cs
PropertyAttributes.cs
ReflectionContext.cs
ReflectionTypeLoadException.cs
ResourceAttributes.cs
ResourceLocation.cs
StrongNameKeyPair.cs
TargetException.cs
TargetInvocationException.cs
TargetParameterCountException.cs
TypeAttributes.cs
TypeFilter.cs

* Prepare the "easy" System\Reflection .cs files for move to shared partition

Files to be moved the shared partition (after https://github.com/dotnet/coreclr/pull/10387 side is in)

AmbiguousMatchException.cs
AssemblyAttributes.cs
AssemblyContentType.cs
AssemblyNameFlags.cs
Binder.cs
BindingFlags.cs
CallingConventions.cs
CustomAttributeFormatException.cs
DefaultMemberAttribute.cs
EventAttributes.cs
ExceptionHandlingClauseOptions.cs
FieldAttributes.cs
GenericParameterAttributes.cs
ICustomAttributeProvider.cs
ImageFileMachine.cs
InterfaceMapping.cs
IntrospectionExtensions.cs
InvalidFilterCriteriaException.cs
IReflectableType.cs
ManifestResourceInfo.cs
MemberFilter.cs
MemberTypes.cs
MethodAttributes.cs
MethodImplAttributes.cs
Missing.cs
ModuleResolveEventHandler.cs
ParameterAttributes.cs
ParameterModifier.cs
PortableExecutableKinds.cs
ProcessorArchitecture.cs
PropertyAttributes.cs
ReflectionContext.cs
ReflectionTypeLoadException.cs
ResourceAttributes.cs
ResourceLocation.cs
StrongNameKeyPair.cs
TargetException.cs
TargetInvocationException.cs
TargetParameterCountException.cs
TypeAttributes.cs
TypeFilter.cs

* Move to shared.

7 years agoMerge pull request #10336 from noahfalk/wer_resource
Noah Falk [Thu, 23 Mar 2017 20:21:48 +0000 (13:21 -0700)]
Merge pull request #10336 from noahfalk/wer_resource

Support Windows Minidump

7 years agoMark b425314 Incompatible (#10431)
Steve MacLean [Thu, 23 Mar 2017 20:05:55 +0000 (16:05 -0400)]
Mark b425314 Incompatible (#10431)

b425314 has internal logic to determine if it making forward progress

If test takes too long, test self check fails and test aborts with a
failure.  This makes this test difficult in GCStress/HeapVerify situations
where run time is substantially longer.

This test was already marked incompatible for x86.  Remove x86 condition
to mark incompatible on al platforms.

7 years agoMerge pull request #10432 from AndyAyersMS/ImproveTypes3
Andy Ayers [Thu, 23 Mar 2017 20:03:07 +0000 (13:03 -0700)]
Merge pull request #10432 from AndyAyersMS/ImproveTypes3

Jit: track ref types for inlinee locals and args

7 years agoUpdate CoreClr to beta-25123-07 (#10428)
dotnet bot [Thu, 23 Mar 2017 19:34:59 +0000 (12:34 -0700)]
Update CoreClr to beta-25123-07 (#10428)

7 years agoUse roslyn common props (#10430)
chcosta [Thu, 23 Mar 2017 18:56:52 +0000 (11:56 -0700)]
Use roslyn common props (#10430)

7 years ago[PAL] Do NOT check execute bit in INIT_FindEXEPath (#10342)
Jonghyun Park [Thu, 23 Mar 2017 18:51:13 +0000 (03:51 +0900)]
[PAL] Do NOT check execute bit in INIT_FindEXEPath (#10342)

* Do NOT check execute bit in INIT_FindEXEPath

* Do NOT lookup path during PAL_Initialize

This commmit removes path lookup inside INIT_FindEXEPath, and renames
INIT_FindEXEPath as INIT_EXEPath.

7 years agoMigrate the Reflection serialization holders to the shared partition. (#10429)
Atsushi Kanamori [Thu, 23 Mar 2017 18:49:42 +0000 (11:49 -0700)]
Migrate the Reflection serialization holders to the shared partition. (#10429)

* String => string, SR.GetResourceString() => SR.

* Copy over CoreRT files verbatim.

* Get things building and running again.

* Don't bring CoreRT's visibility sins into CoreCLR

* String => string, Object => object

* De-"m_" the field names.

* Move the files to the shared directory.

7 years agoMerge pull request #10411 from rahku/fix10197
Rahul Kumar [Thu, 23 Mar 2017 18:35:12 +0000 (11:35 -0700)]
Merge pull request #10411 from rahku/fix10197

Re-enable tests

7 years agoMerge pull request #10397 from briansull/ibc-dump
Brian Sullivan [Thu, 23 Mar 2017 18:30:05 +0000 (11:30 -0700)]
Merge pull request #10397 from briansull/ibc-dump

Improve the dumping of BasicBlock weights and edge counts in the JIT

7 years agoMerge pull request #10402 from BruceForstall/FixMulCseBug
Bruce Forstall [Thu, 23 Mar 2017 17:57:49 +0000 (10:57 -0700)]
Merge pull request #10402 from BruceForstall/FixMulCseBug

Fix CSE bug with GT_MUL and GTF_MUL_64RSLT

7 years agoJit: track ref types for inlinee locals and args
Andy Ayers [Mon, 20 Mar 2017 18:12:05 +0000 (11:12 -0700)]
Jit: track ref types for inlinee locals and args

The jit may use new temporaries for inline locals and args. For temps
representing ref type locals and args, propagate the class handle from
the appropriate signature. This makes more types to be available for
devirtualization.

Also in addition to capturing arg ref types, cleanup `impInlineFetchArg`
by commoning out the table lookups and adding a header comment.

7 years ago[Unix] runtest.sh crossgen should exit on failure (#9907)
Steve MacLean [Thu, 23 Mar 2017 17:38:50 +0000 (13:38 -0400)]
[Unix] runtest.sh crossgen should exit on failure (#9907)

* Fix crossgen segfault

* Check crossgen in runtests.sh

* Do not use test -v

CI showed bash 4.2 feature test -v is not present on
OSX CI systems.  Fall back to more standard bash test

7 years agoWe have found and fixed a security weakness (CWE-188) using PVS-Studio tool: Analyzer...
Ilya Ivanov [Thu, 23 Mar 2017 14:46:08 +0000 (17:46 +0300)]
We have found and fixed a security weakness (CWE-188) using PVS-Studio tool: Analyzer warning: V557 Array overrun is possible. The value of 'dwCode - 1' index could reach 8.
PVS-Studio is a static code analyzer for C, C++ and C#: https://www.viva64.com/en/pvs-studio/

7 years agoScalarize single-field-to-lclVar block copy
Joseph Tremoulet [Mon, 13 Mar 2017 18:49:16 +0000 (11:49 -0700)]
Scalarize single-field-to-lclVar block copy

Morph has some logic to scalarize struct copies where the RHS is a scalar
and the LHS is a single-field struct.  This change adds the symmetric
logic where the LHS is a scalar and the RHS is a single-field struct.
This pattern shows up in Span<T> methods that initialize the data pointer
field, due to the way scalar replacement operates on spans.

7 years agoMove IReflect.cs to shared partition. (#10415)
Atsushi Kanamori [Thu, 23 Mar 2017 14:02:28 +0000 (07:02 -0700)]
Move IReflect.cs to shared partition. (#10415)

7 years agoI used PVS-Studio static analyzer to check this project. I would like to suggest...
Ilya [Thu, 23 Mar 2017 13:58:18 +0000 (16:58 +0300)]
I used PVS-Studio static analyzer to check this project. I would like to suggest a variant of the way to fix the error, detected with the help of V534 diagnostic. Description of the diagnostic: https://viva64.com/en/examples/v534/ (#10414)

Incorrect variable 'i' from the outer loop is used in condition of the inner loop.

7 years agoMerge pull request #10412 from dotnet-bot/master-UpdateDependencies
Stephen Toub [Thu, 23 Mar 2017 13:41:12 +0000 (09:41 -0400)]
Merge pull request #10412 from dotnet-bot/master-UpdateDependencies

Update CoreClr, CoreFx to beta-25123-03, beta-25122-02, respectively (master)

7 years ago[x86/Linux] fix broken stack in DelayLoad_Helper when converting to AT&T syntax assem...
ragmani [Thu, 23 Mar 2017 09:09:09 +0000 (18:09 +0900)]
[x86/Linux] fix broken stack in DelayLoad_Helper when converting to AT&T syntax assembly. (#10383)

* fix broken stack in DelayLoad_Helper when converting to AT&T syntax assembly.
"push \frameFlags" was changed to "pushw $0x0" by converting to AT&T syntax assembly.

Signed-off-by: ragmani <ragmani0216@gmail.com>
* [x86/Linux] modify pushing frameFlags stack from Intel syntax to AT&T syntax.

Signed-off-by: ragmani <ragmani0216@gmail.com>
7 years agoUpdate CoreClr, CoreFx to beta-25123-03, beta-25122-02, respectively
dotnet-bot [Thu, 23 Mar 2017 08:57:36 +0000 (08:57 +0000)]
Update CoreClr, CoreFx to beta-25123-03, beta-25122-02, respectively

7 years agoMerge pull request #10064 from rahku/cgroup
Rahul Kumar [Thu, 23 Mar 2017 08:13:54 +0000 (01:13 -0700)]
Merge pull request #10064 from rahku/cgroup

memory limit in containers on linux

7 years agoRe-enable tests
Rahul Kumar [Thu, 23 Mar 2017 07:51:55 +0000 (00:51 -0700)]
Re-enable tests

7 years agomemory limit in containers on linux
rahul [Thu, 9 Mar 2017 02:55:24 +0000 (18:55 -0800)]
memory limit in containers on linux

7 years agoVarious fixes for generating portable RID packages (#10409)
Gaurav Khanna [Thu, 23 Mar 2017 06:25:57 +0000 (23:25 -0700)]
Various fixes for generating portable RID packages (#10409)

7 years agoAdd handling of multiple CMake installations in probe-win (#9980)
Luis G [Thu, 23 Mar 2017 05:51:45 +0000 (02:51 -0300)]
Add handling of multiple CMake installations in probe-win (#9980)

* Add handling of multiple CMake installations in probe-win
Check if multiple CMake versions are installed, and use by default the first path available

Fixes #8221

* Fix typo in value accessor

* Restore previous null check in probe_win

* Remove redundant assignment

7 years agoRemoving the special handling in classlibnative for atan2(±∞, ±∞) and pow(-1.0, ...
Tanner Gooding [Thu, 23 Mar 2017 05:44:40 +0000 (22:44 -0700)]
Removing the special handling in classlibnative for atan2(±∞, Â±âˆž) and pow(-1.0, Â±âˆž). (#10295)

* Removing the special handling in classlibnative for atan2(±∞, Â±âˆž) and pow(-1.0, Â±âˆž).

* Fixing up the logic for HAVE_COMPATIBLE_POW in the PAL layer.

7 years agoFix fallout from switching corelib to use resx (#10407)
Jan Kotas [Thu, 23 Mar 2017 05:43:36 +0000 (22:43 -0700)]
Fix fallout from switching corelib to use resx (#10407)

Fixes #https://github.com/dotnet/corefx/issues/17413

7 years agoUnify command line arg for portable RID build (#10408)
Gaurav Khanna [Thu, 23 Mar 2017 04:35:24 +0000 (21:35 -0700)]
Unify command line arg for portable RID build (#10408)

7 years agoNamed Multiply and Divide methods on TimeSpan (#10366)
Jon Hanna [Thu, 23 Mar 2017 04:25:58 +0000 (04:25 +0000)]
Named Multiply and Divide methods on TimeSpan (#10366)

dotnet/corefx#16476

7 years agoAdd reflect.xml for a abstract* tests
Swaroop Sridhar [Wed, 22 Mar 2017 22:22:46 +0000 (15:22 -0700)]
Add reflect.xml for a abstract* tests

For the abstract* tests in question:
The tests check for TypeLoad exception from a derived class that doesn't implement an abstract method in base class.
However, the Linker removed the abstract method from base, so there is no exception.
Therefore, add reflect.xml to override the linker's behavior and enable testing for TypeLoadException.

7 years agoExclude some tests from Linker testing.
Swaroop Sridhar [Wed, 22 Mar 2017 22:22:04 +0000 (15:22 -0700)]
Exclude some tests from Linker testing.

Exclude some tests while testing via ILLINK.
The reasons are mentioned in issues.targets.

7 years agoLinker Testing: Use a central target for copying reflection roots.
Swaroop Sridhar [Mon, 20 Mar 2017 18:20:12 +0000 (11:20 -0700)]
Linker Testing: Use a central target for copying reflection roots.

Copy the test.refect.xml file (if one exists) as part of the
AfterBuild job -- so that individual tests need not identify
the CopyReflectionRoots explicitly as a default target.

7 years agoMerge pull request #9947 from DrewScoggins/xunitApi
Drew Scoggins [Thu, 23 Mar 2017 00:21:13 +0000 (17:21 -0700)]
Merge pull request #9947 from DrewScoggins/xunitApi

Update CoreCLR to use xunit perf api

7 years agoOpt-out of GC Stress for FEATURE_STANDALONE_GC (#10391)
Sean Gillespie [Wed, 22 Mar 2017 23:39:14 +0000 (16:39 -0700)]
Opt-out of GC Stress for FEATURE_STANDALONE_GC (#10391)

7 years agoJump stubs (#10398)
Bruce Forstall [Wed, 22 Mar 2017 23:36:53 +0000 (16:36 -0700)]
Jump stubs (#10398)

Add document on CLR Jump Stubs

7 years agoFix CSE bug with GT_MUL and GTF_MUL_64RSLT
Bruce Forstall [Wed, 22 Mar 2017 23:21:04 +0000 (16:21 -0700)]
Fix CSE bug with GT_MUL and GTF_MUL_64RSLT

Unconditionally set op1 and op2 as GTF_DONT_CSE.
Previously, this was only done if the cast was not
a GT_NOP. It is possible for it already to come in
as GT_NOP, thus leading to the possibility to CSE
the operand, and leading to this assert firing:
```
assert(tree->gtIsValid64RsltMul());
```

7 years agoMove Type.IsSerializable and Type.DefaultBinder to shared file. (#10395)
Atsushi Kanamori [Wed, 22 Mar 2017 22:28:14 +0000 (15:28 -0700)]
Move Type.IsSerializable and Type.DefaultBinder to shared file. (#10395)

This will pave the way for the mirrorbot to fix
https://github.com/dotnet/corert/issues/3061.

7 years ago[x86/Linux] 16-byte aligned TheUMEntryPrestub (#10376)
Jonghyun Park [Wed, 22 Mar 2017 22:25:19 +0000 (07:25 +0900)]
[x86/Linux] 16-byte aligned TheUMEntryPrestub (#10376)

7 years agoChange setBBProfileWeight so that we no longer multiply the profile count by 100
Brian Sullivan [Wed, 22 Mar 2017 21:53:51 +0000 (14:53 -0700)]
Change setBBProfileWeight so that we no longer multiply the profile count by 100

Fix fgAddSyncMethodEnterExit to properly set the IBC profile weight when we have profile data
In fgComputeEdgeWeights properly set fgCalledCount when we inserted a new first block using fgFirstBBisScratch
Fix fgOptimizeUncondBranchToSimpleCond to properly set the new BasicBlock's weight and flags

7 years agoImprove the dumping of BasicBlock weights and edge counts in the JIT
Brian Sullivan [Wed, 22 Mar 2017 18:23:19 +0000 (11:23 -0700)]
Improve the dumping of BasicBlock weights and edge counts in the JIT
Weights are now printed to fit into a 6 character field in one of three forms:
standard (ddd or ddd.dd), large (ddddd.) or very large (dddddk)

7 years agoSwitch tests to use OSX.10.12 RID (#10394)
Gaurav Khanna [Wed, 22 Mar 2017 20:54:41 +0000 (13:54 -0700)]
Switch tests to use OSX.10.12 RID (#10394)

7 years agoEnable Portable Windows RID (#10365)
Gaurav Khanna [Wed, 22 Mar 2017 20:30:49 +0000 (13:30 -0700)]
Enable Portable Windows RID (#10365)

* Enable Portable RID support for Windows and OSX.

7 years agoAdd updated timeout
Drew Scoggins [Tue, 21 Mar 2017 21:01:03 +0000 (14:01 -0700)]
Add updated timeout

7 years agoUpdate CoreCLR to use xunit perf api
Drew Scoggins [Fri, 3 Mar 2017 22:51:37 +0000 (14:51 -0800)]
Update CoreCLR to use xunit perf api

This updates the CoreCLR performance runs to use the new xunit
performance api.  This will unblock several people who were wanting to
move tests forward from netstandard1.4 which is were we have been locked
because of using the old desktop runner.

7 years agoReconcile the "easy" System\Reflection .cs files with their CoreRT versions. (#10387)
Atsushi Kanamori [Wed, 22 Mar 2017 17:51:46 +0000 (10:51 -0700)]
Reconcile the "easy" System\Reflection .cs files with their CoreRT versions. (#10387)

Files to be moved the shared partition (after CoreRT side is in)

AmbiguousMatchException.cs
AssemblyAttributes.cs
AssemblyContentType.cs
AssemblyNameFlags.cs
Binder.cs
BindingFlags.cs
CallingConventions.cs
CustomAttributeFormatException.cs
DefaultMemberAttribute.cs
EventAttributes.cs
ExceptionHandlingClauseOptions.cs
FieldAttributes.cs
GenericParameterAttributes.cs
ICustomAttributeProvider.cs
ImageFileMachine.cs
InterfaceMapping.cs
IntrospectionExtensions.cs
InvalidFilterCriteriaException.cs
IReflectableType.cs
ManifestResourceInfo.cs
MemberFilter.cs
MemberTypes.cs
MethodAttributes.cs
MethodImplAttributes.cs
Missing.cs
ModuleResolveEventHandler.cs
ParameterAttributes.cs
ParameterModifier.cs
PortableExecutableKinds.cs
ProcessorArchitecture.cs
PropertyAttributes.cs
ReflectionContext.cs
ReflectionTypeLoadException.cs
ResourceAttributes.cs
ResourceLocation.cs
StrongNameKeyPair.cs
TargetException.cs
TargetInvocationException.cs
TargetParameterCountException.cs
TypeAttributes.cs
TypeFilter.cs

7 years agoChange default CI job for ARM and clean-up (#10370)
Hyeongseok Oh [Wed, 22 Mar 2017 17:32:11 +0000 (02:32 +0900)]
Change default CI job for ARM and clean-up (#10370)

- Change ARM CI job triggered by PR: ubuntu16.04 debug, ubuntu release, tizen debug/release
- Clean-up: remove emulator build/test
- Change ubuntu16.04 x64 default job name and trigger phrase: conflict triggerring with arm

7 years agoFix an issue where GCStress allocated objects using the Gen 0 alloc context (#10322)
Sean Gillespie [Wed, 22 Mar 2017 17:25:08 +0000 (10:25 -0700)]
Fix an issue where GCStress allocated objects using the Gen 0 alloc context (#10322)

* Fix an issue where GCStress allocated objects using the Gen 0 alloc context

* Remove a GCStress MaybeTrigger on LOH allocations that attempted to use the gen 0 alloc context

7 years agoMerge pull request #10371 from AndyAyersMS/FixDevirt
Andy Ayers [Wed, 22 Mar 2017 17:23:56 +0000 (10:23 -0700)]
Merge pull request #10371 from AndyAyersMS/FixDevirt

Fix several devirtualization issues

7 years agoMove OSX packages to use 10.12 as the RID (#10354)
Gaurav Khanna [Wed, 22 Mar 2017 15:55:53 +0000 (08:55 -0700)]
Move OSX packages to use 10.12 as the RID (#10354)

7 years agoMerge pull request #10374 from dotnet/mirror-merge-9057970
Jan Kotas [Wed, 22 Mar 2017 15:03:09 +0000 (08:03 -0700)]
Merge pull request #10374 from dotnet/mirror-merge-9057970

Mirror changes from dotnet/corert

7 years agoMove DefaultBinder.cs to the shared partition. (#10355)
Atsushi Kanamori [Wed, 22 Mar 2017 11:37:12 +0000 (04:37 -0700)]
Move DefaultBinder.cs to the shared partition. (#10355)

7 years agoFileStream redirection got changed. Add ThreadPoolBoundHandle redirect.
Jeremy Kuhne [Tue, 21 Mar 2017 23:07:53 +0000 (16:07 -0700)]
FileStream redirection got changed. Add ThreadPoolBoundHandle redirect.

https://devdiv.visualstudio.com/DefaultCollection/DevDiv/_workitems?id=398142&_a=edit

[tfs-changeset: 1651640]

7 years agoFix leak in Task.WaitAny(..., int) (#10331)
Stephen Toub [Wed, 22 Mar 2017 06:09:22 +0000 (02:09 -0400)]
Fix leak in Task.WaitAny(..., int) (#10331)

WaitAny is effectively built on top of WhenAny, creating a continuation from the supplied tasks and then blocking on that continuation.  When a timeout is provided, it blocks with that timeout.  But if it doesn't complete within the timeout, it ends up leaking the continuations it created into the constituent tasks.  The fix is simply to force the returned continuation to complete, such that its continuation logic does all of the appropriate cleanup.

7 years agoUpdate CoreClr, CoreFx to beta-25121-02, beta-25122-01, respectively (#10310)
dotnet bot [Wed, 22 Mar 2017 05:04:42 +0000 (22:04 -0700)]
Update CoreClr, CoreFx to beta-25121-02, beta-25122-01, respectively (#10310)

7 years agoSwitch coreclr corelib to use resx (#10372)
Alex Perovich [Wed, 22 Mar 2017 05:02:47 +0000 (00:02 -0500)]
Switch coreclr corelib to use resx (#10372)

* Revert "Revert "Switch coreclr corelib to use resx (#10268)""

* Add resources.target override

This fixes the GenerateResource task running on the arm emulator runs.

* Fix run.sh to have a working Tools-Override

7 years ago[Local GC] Forbid inclusion of gcscan.h from VM and DAC directories (#10332)
Sean Gillespie [Wed, 22 Mar 2017 05:00:12 +0000 (22:00 -0700)]
[Local GC] Forbid inclusion of gcscan.h from VM and DAC directories (#10332)

* Forbid inclusion of gcscan.h from VM and DAC directories

* Address code review feedback - hoist IsGCHeapInitialized check to an assert, since the heap should definitely be initialized if we are validating objects that ostensibly came from it

7 years agoFix several devirtualization issues
Andy Ayers [Tue, 21 Mar 2017 20:17:28 +0000 (13:17 -0700)]
Fix several devirtualization issues

When doing interface devirtualization, if the object type is canonical,
ensure that the owner type is too. The jit may present a mixed set
when inlining a shared method into a non-shared method. Ideally the
jit would also be able to present exact object types in such cases but
currently it cannot guarantee this. Closes #10311.

Adjust contracts to address some contract violations seen in desktop
testing. Make the helper non-static and fold in some of the info that
was passed from the caller to bring the desktop and CoreCLR implementations
closer.

Disallow interface devirt if the method is final but the class is not
exact or final, since derived classes can still override final methods
when implementing interfaces.

Don't try and devirtualize interface calls from com objects.

Add some related test cases.

7 years agoMerge pull request #10363 from jkotas/revert
Jan Kotas [Wed, 22 Mar 2017 00:45:57 +0000 (17:45 -0700)]
Merge pull request #10363 from jkotas/revert

Revert "Switch coreclr corelib to use resx (#10268)"

7 years agoSupport Windows Minidump
noahfalk [Tue, 21 Mar 2017 00:06:59 +0000 (17:06 -0700)]
Support Windows Minidump

This is the coreclr portion of the work to complete issue #10334. It adds a resource to coreclr with a well-known name and format
that can be used by MiniDumpWriteDump to discover and load custom dump collection extensions.

At this time the OS work hasn't been implemented yet and the scenario won't work until their part is complete.

7 years agoRevert "Switch coreclr corelib to use resx (#10268)"
Jan Kotas [Tue, 21 Mar 2017 23:24:52 +0000 (16:24 -0700)]
Revert "Switch coreclr corelib to use resx (#10268)"

This reverts commit 12ef04c22b07f1e4ec5a63009298e4537a2c8e1a.

7 years agoFix Linux/x86 call alignment calculation and insertion (#10266)
Bruce Forstall [Tue, 21 Mar 2017 22:27:07 +0000 (15:27 -0700)]
Fix Linux/x86 call alignment calculation and insertion (#10266)

* Fix Linux/x86 call alignment calculation and insertion

The existing system of calculating per-call alignment adjustments
did not consider the possibility of nested calls. On x86, some
arguments for a call might be pushed on the stack before a
nested call's arguments start being pushed. Thus, a call can't
consider only its own arguments when determining the stack level.

Instead, use the existing genStackLevel variable, updated
dynamically during code generation, to determine the baseline
stack alignment when a call first needs to push something on
the stack, or if it has no stack arguments, whether it needs to
align the stack before a call.

One wrinkle here is that the fgAddCodeRef() function for adding
throw blocks for array bounds checks, and other similar helpers,
need to know the stack level on entry, and this stack level is
computed during argument morphing. There is a tough phase ordering
problem here. So, we bail out and force an EBP frame if there are
any such throw helpers in the function. When using an EBP frame,
the helper block doesn't need to know the stack level -- it is
only needed for ESP frames, needed for unwinding. Note that this
bail out already existed if the same helper needed multiple different
stack levels on entry. We could do slightly better without too much
work by not bailing out for top-level calls with no stack arguments.

* Track max alignment added for nested calls during codegen

This information is needed by Linux/x86 for an assert about
maximum emitter stack depth.

* Make max stack align tracking available in release as well

The assert these are used in is a noway_assert.

* Formatting

7 years ago[x86/Linux] Invoke gcResetForBB() in genFuncletProlog (#10186)
Hanjoung Lee [Tue, 21 Mar 2017 22:00:56 +0000 (07:00 +0900)]
[x86/Linux] Invoke gcResetForBB() in genFuncletProlog (#10186)

7 years agoMerge pull request #10343 from parjong/fix/self_override
Andy Ayers [Tue, 21 Mar 2017 20:08:01 +0000 (13:08 -0700)]
Merge pull request #10343 from parjong/fix/self_override

Fix bogus assert in resolveVirtualMethodHelper and update related ilproj

7 years agoAdd /silent option to crossgen (#10350)
Bruce Forstall [Tue, 21 Mar 2017 20:01:52 +0000 (13:01 -0700)]
Add /silent option to crossgen (#10350)

This sets the NGenOptions.fSilent flag, which prevents displaying
the final output message.

This is useful for JIT asm diff generation.

7 years agoSwitch coreclr corelib to use resx (#10268)
Alex Perovich [Tue, 21 Mar 2017 19:55:39 +0000 (14:55 -0500)]
Switch coreclr corelib to use resx (#10268)

* Switch to resx

* Use roslyn rewriter to switch from GetResourceString to SR

* More GetResourceString changes

* Add missing resource

* Remove Environment.GetResourceString and replace final usages with SR

* Remove comment

* Fix spacing

* Replace final instances of Environment.GetResourceString

* Add another missing resource

* Add back Environment.GetResourceStringLocal because the runtime needs it

7 years agoSystem.IO.Path.IsPathRooted does not check if valid drive letter on Windows (#10323)
Viktor Hofer [Tue, 21 Mar 2017 19:36:25 +0000 (20:36 +0100)]
System.IO.Path.IsPathRooted does not check if valid drive letter on Windows (#10323)

7 years agoMerge pull request #10254 from sdmaclea/PR-FIX-SCRIPT-ERROR
Aditya Mandaleeka [Tue, 21 Mar 2017 19:01:53 +0000 (12:01 -0700)]
Merge pull request #10254 from sdmaclea/PR-FIX-SCRIPT-ERROR

Fix script ERRORLEVEL typo

7 years agoTemporarily disable frequently failing Sleep PAL tests (#10313)
Koundinya Veluri [Tue, 21 Mar 2017 18:47:32 +0000 (11:47 -0700)]
Temporarily disable frequently failing Sleep PAL tests (#10313)

See #8321

7 years agoMerge pull request #10321 from WinCPP/issue-7060
Ian Hays [Tue, 21 Mar 2017 17:37:51 +0000 (10:37 -0700)]
Merge pull request #10321 from WinCPP/issue-7060

Issue #7060 - Make StreamReader.ReadBuffer non-virtual

7 years agoMerge pull request #10327 from mikedn/assertion-info
Joseph Tremoulet [Tue, 21 Mar 2017 15:06:24 +0000 (11:06 -0400)]
Merge pull request #10327 from mikedn/assertion-info

Refactor GenTree assertion information storage

7 years ago[x86/Linux] Log UpdateRegDisplay calls (#10335)
Jonghyun Park [Tue, 21 Mar 2017 09:31:04 +0000 (18:31 +0900)]
[x86/Linux] Log UpdateRegDisplay calls (#10335)

7 years agoFix bogus assert in resolveVirtualMethodHelper and update related ilproj
Jonghyun Park [Tue, 21 Mar 2017 06:10:30 +0000 (15:10 +0900)]
Fix bogus assert in resolveVirtualMethodHelper and update related ilproj

7 years ago[x86/Linux] Use 4-byte align for double in struct (#10340)
Jonghyun Park [Tue, 21 Mar 2017 04:36:27 +0000 (13:36 +0900)]
[x86/Linux] Use 4-byte align for double in struct (#10340)