John Chen [Fri, 28 Oct 2016 18:48:58 +0000 (11:48 -0700)]
Ensure the module slot in R2R image can be located (dotnet/coreclr#7875)
Each Ready-to-Run image has a slot for storing a pointer to the Module
object associated with this image. However, if the image contains no
code (e.g., facade assemblies), the import table needed to locate
this slot wasn't written out, so the runtime couldn't find this slot.
This casued "crossgen /createpdb" command to fail on facade assemblies
after PR dotnet/coreclr#7809, and required a workaround (commit c4d8994).
This commit ensures writing the import table needed to locate the
slot for module. It also removes the workaround in commit c4d8994,
which is no longer necessary.
Commit migrated from https://github.com/dotnet/coreclr/commit/
7d945336a9307eaaf59f985e4ec2c1b5b8c052b4
Drew Scoggins [Fri, 28 Oct 2016 18:32:14 +0000 (11:32 -0700)]
Merge pull request dotnet/coreclr#7835 from DrewScoggins/coreclr-perf
Adding CoreCLR Perf support for Jenkins
Commit migrated from https://github.com/dotnet/coreclr/commit/
dfcc8d72d9e11af945c7dff80f923ba0575f158c
Jan Kotas [Fri, 28 Oct 2016 14:42:28 +0000 (07:42 -0700)]
Merge pull request dotnet/coreclr#7872 from jkotas/revert-tuple-hash
Revert changes in tuple hashing algorithm
Commit migrated from https://github.com/dotnet/coreclr/commit/
9a3ac1852eafd1556e986cb8343bdedf5a9c61ac
Jan Kotas [Fri, 28 Oct 2016 11:25:48 +0000 (04:25 -0700)]
Add comment about F# dependency on hashing algorithm
Commit migrated from https://github.com/dotnet/coreclr/commit/
ea5de57d774bc8558064d3111028d6a94068f115
Jan Kotas [Fri, 28 Oct 2016 11:20:21 +0000 (04:20 -0700)]
Revert "Better Tuple hashing, avoid boxing in Equals/GetHashCode (dotnet/coreclr#6767)"
This reverts commit dotnet/coreclr@
361e6eb85c74b57691955d97dda801d725cd2a59.
Conflicts:
src/mscorlib/mscorlib.shared.sources.props
Commit migrated from https://github.com/dotnet/coreclr/commit/
9ebb94e3fe54fab92bbf1b45d36b2b469e68be39
Phil Christensen [Fri, 28 Oct 2016 09:09:35 +0000 (02:09 -0700)]
C++ conformance. (building with /permissive-) (dotnet/coreclr#7855)
These issues were found when building with the /permissive- flag in the
latest version of MSVC. No tests were added/modified because this does not
change any behavior.
There are a few types of language conformance issues fixed in this:
1) Strict string conversion (this is also covered by the /Zc:strictStrings
flag)
The 'const' is not implicitly dropped by string literals, which means the
following is not allowed:
char str = "const string literal"; //error: cannot convert a 'const char'
to a 'char*'
This fix to to make str 'const char*'. (This can have a domino effect
depending on where str is used)
2) Fully qualified inline declarations members inside class
struct A {
void A::f() { } // Error: illegal qualified name in member declaration,
remove redundant 'A::' to fix
};
3) MSVC by default will allows name lookup in a dependent base. This is
disabled by /permissive-
template <class T> struct B {
void f();
};
template <class T> struct D
: public B<T> //B is a dependent base because its type depends on the type of T in D<T>.
{
//One possible fix is to uncomment the following line. If this
//were a type we should have 'using typename'...
//using B<T>::f;
void g() {
f(); //Error: identifier not found, one possible fix is change it to 'this->f();'
}
};
void h()
{
D<int> d;
d.g();
}
4) Warning 4800 has been removed in version 19.1 (1910) of the compiler.
For backwards compatability, surround the usage of 4800.
This is not related to C++ conformance.
#if _MSC_VER <= 1900
// 'BOOL' forcing value to bool 'true' or 'false'
#pragma warning(disable: 4800)
#endif
Commit migrated from https://github.com/dotnet/coreclr/commit/
8877516062414f770f6c97272c4fad43296202f6
Jan Kotas [Fri, 28 Oct 2016 03:39:24 +0000 (20:39 -0700)]
Merge pull request dotnet/coreclr#7866 from dotnet-bot/from-tfs
Merge changes from TFS
Commit migrated from https://github.com/dotnet/coreclr/commit/
c4d899414fc9af1a22b9b38748d53b3e6e5eeb2b
Jan Vorlicek [Fri, 28 Oct 2016 02:34:42 +0000 (04:34 +0200)]
Add missing std::move to one exception throw (dotnet/coreclr#7865)
We had the std::move missing in one of the exception throws. For some reason,
the current clang didn't complain about it even though the copy constructor was
deleted.
Commit migrated from https://github.com/dotnet/coreclr/commit/
7dfb2ed8614dea8c2fe757592436a38694e91ebc
kchoi [Fri, 28 Oct 2016 02:33:51 +0000 (19:33 -0700)]
Update broken link to RIDs (dotnet/coreclr#7850)
Commit migrated from https://github.com/dotnet/coreclr/commit/
3331ad17e177ad123ebbb1e91e47a43d04ab40fd
Michal Strehovský [Fri, 28 Oct 2016 02:32:55 +0000 (19:32 -0700)]
Use memset instead of ZeroMemory (dotnet/coreclr#7851)
`CORINFO_HELP_READYTORUN_STATIC_BASE` and
`CORINFO_HELP_READYTORUN_GENERIC_STATIC_BASE` both use a mostly/fully
zeroed out `resolvedToken`, the common practice is to zero out with
`memset` in this codebase.
Commit migrated from https://github.com/dotnet/coreclr/commit/
0f275518bde94bce9b6c2b29226fd59de6194c9f
Mike McLaughlin [Fri, 28 Oct 2016 02:31:45 +0000 (19:31 -0700)]
Fix exception.StackTrace race condition. Issue dotnet/coreclr#12467. (dotnet/coreclr#7856)
Commit migrated from https://github.com/dotnet/coreclr/commit/
3e2dde0f36948e148cb645a75794ea07efc4ba80
Austin Wise [Fri, 28 Oct 2016 01:03:30 +0000 (18:03 -0700)]
Fix conversion from CorJitFlag2 enum to JitFlag. (dotnet/coreclr#7857)
Commit migrated from https://github.com/dotnet/coreclr/commit/
e1faf243c624050f3a3bb1a72ff63938d59240a2
Dan Moseley [Thu, 27 Oct 2016 23:45:57 +0000 (16:45 -0700)]
fix typo
Commit migrated from https://github.com/dotnet/coreclr/commit/
cecc33e198ea3089e6fd1593208073cfd6e4430c
Rahul Kumar [Thu, 27 Oct 2016 22:39:18 +0000 (15:39 -0700)]
rollback CS1635584
[tfs-changeset: 1635595]
Commit migrated from https://github.com/dotnet/coreclr/commit/
d965a3f0342a422c1a7b6bdbe37afcb13d6c7716
Rahul Kumar [Thu, 27 Oct 2016 21:26:11 +0000 (14:26 -0700)]
Expose System.Security.Principal.PrincipalPolicy (required for AppDomain apis)
[tfs-changeset: 1635584]
Commit migrated from https://github.com/dotnet/coreclr/commit/
7c210b763b26e4ebd57fb8b3098245a6cbdebcb9
Bruce Forstall [Thu, 27 Oct 2016 20:48:06 +0000 (13:48 -0700)]
Merge pull request dotnet/coreclr#7837 from BruceForstall/JitFlags4
Introduce new CORJIT_FLAGS type
Commit migrated from https://github.com/dotnet/coreclr/commit/
7250e6f6630839b09d54f2f71d858b33c018ae8b
Jan Vorlicek [Thu, 27 Oct 2016 19:53:35 +0000 (21:53 +0200)]
Add verification of System.Globalization.Native.so symbols (dotnet/coreclr#7848)
This change adds check of undefined dependencies of the System.Globalization.Native.so
to the build.sh. The recent change that made the ICU APIs resolving driven by the
shared library itself creates a potential for someone adding usage of an ICU API that
is not defined in the icushim.h.
With this change, such problem will be caught during the build and cause it to fail.
Commit migrated from https://github.com/dotnet/coreclr/commit/
c26e5c5e23446a8c46eab7a071edb8fe6c2ef216
Bruce Forstall [Wed, 26 Oct 2016 22:52:06 +0000 (15:52 -0700)]
Introduce new CORJIT_FLAGS type
The "JIT flags" currently passed between the EE and the JIT have traditionally
been bit flags in a 32-bit word. Recently, a second 32-bit word was added to
accommodate additional flags, but that set of flags is definitely "2nd class":
they are not universally passed, and require using a separate set of bit
definitions, and comparing those bits against the proper, 2nd word.
This change replaces all uses of bare DWORD or 'unsigned int' types
representing flags with CORJIT_FLAGS, which is now an opaque type. All
flag names were renamed from CORJIT_FLG_* to CORJIT_FLAG_* to ensure all
cases were changed to use the new names, which are also scoped within the
CORJIT_FLAGS type itself.
Another motivation to do this, besides cleaner code, is to allow enabling the
SSE/AVX flags for x86. For x86, we had fewer bits available in the "first
word", so would have to either put them in the "second word", which, as
stated, was very much 2nd class and not plumbed through many usages, or
we could move other bits to the "second word", with the same issues. Neither
was a good option.
RyuJIT compiles with both COR_JIT_EE_VERSION > 460 and <= 460. I introduced
a JitFlags adapter class in jitee.h to handle both JIT flag types. All JIT
code uses this JitFlags type, which operates identically to the new
CORJIT_FLAGS type.
In addition to introducing the new CORJIT_FLAGS type, the SSE/AVX flags are
enabled for x86.
The JIT-EE interface GUID is changed, as this is a breaking change.
Commit migrated from https://github.com/dotnet/coreclr/commit/
e72536c32676b412cfead025b577d4e8c18d1c2f
AlexGhiondea [Thu, 27 Oct 2016 18:55:16 +0000 (11:55 -0700)]
Merge pull request dotnet/coreclr#7803 from AlexGhiondea/Fix_SB
Make sure that when the StringBuilder.Append method is called we firs…
Commit migrated from https://github.com/dotnet/coreclr/commit/
675622bb85f3c78de1967a78052d7280a2834611
Michal Strehovský [Thu, 27 Oct 2016 18:11:52 +0000 (11:11 -0700)]
Implement initThisClass for generic types in ReadyToRun (dotnet/coreclr#7842)
Only implementing the RyuJIT portion for CoreRT purposes (CoreRT side at dotnet/corertdotnet/coreclr#2085).
I can file an issue to add support for this in CoreCLR if there's interest. On CoreCLR this is currently a disqualification from ReadyToRun and causes fallback to JITting.
Commit migrated from https://github.com/dotnet/coreclr/commit/
96d7b6fa7ed6c2568b41c6bab32efef012a0b32f
Rahul Kumar [Thu, 27 Oct 2016 18:11:04 +0000 (11:11 -0700)]
Merge pull request dotnet/coreclr#7839 from rahku/_appdomain
expose events from AppDomain via AssemblyLoadContext
Commit migrated from https://github.com/dotnet/coreclr/commit/
00619325cba73553e1a7d977377413936db6bafe
Rahul Kumar [Thu, 27 Oct 2016 01:14:39 +0000 (18:14 -0700)]
expose events from AppDomain via AssemblyLoadContext
Commit migrated from https://github.com/dotnet/coreclr/commit/
35aedcbaa560481d729f3582fb9d42804a43e359
dotnet-bot [Thu, 27 Oct 2016 17:34:18 +0000 (10:34 -0700)]
Fix PDB creation for Ready-to-Run image of facade assemblies
[tfs-changeset: 1635538]
Commit migrated from https://github.com/dotnet/coreclr/commit/
806f001566f22a62010a2f4004d863b9aed83b4e
Dmitry-Me [Thu, 27 Oct 2016 16:45:34 +0000 (19:45 +0300)]
Properly spell class name in comments (dotnet/coreclr#7821)
Commit migrated from https://github.com/dotnet/coreclr/commit/
7d15a54c70a61b4ccb643417e8da96178d821bf4
Jim Ma [Thu, 27 Oct 2016 08:37:22 +0000 (16:37 +0800)]
Fixed gcinfoencoder build errors. (dotnet/coreclr#7826)
MEASURE_INFO switch now depends on _DEBUG switch. Ensure NumUntracked,
UntrackedSlotSize, NumUntrackedSize and EncPreservedSlots fields handled correctly in
GcInfoSize::operator+=() and GCInfoSize::Log().
fix dotnet/coreclr#6008
Commit migrated from https://github.com/dotnet/coreclr/commit/
446e4f15e78278ad85b80f3160af88c15a6683fb
Tarek Mahmoud Sayed [Thu, 27 Oct 2016 08:16:07 +0000 (01:16 -0700)]
Add the missing ICU APIs to the ICU shim (dotnet/coreclr#7840)
there was a change done by the PR dotnet/coreclr#7773 which removed the dependency on ICU version. and there is another PR dotnet/coreclr#7811 which used more ICU APIs not listed in the shim.
the change here is to add these APIs to the shim
Commit migrated from https://github.com/dotnet/coreclr/commit/
fe77cdebf43ffd794ef7f336b059230fb8ac4c5b
Michal Strehovský [Thu, 27 Oct 2016 02:57:41 +0000 (19:57 -0700)]
Use getLocationOfThisType instead of embedGenericHandle (dotnet/coreclr#7813)
getLocationOfThisType does way less work and gives the same result (the part we care about).
Commit migrated from https://github.com/dotnet/coreclr/commit/
22303a95a5320c4a339fe36c21ffaa9e59ffb08f
Hanjoung Lee [Thu, 27 Oct 2016 02:45:46 +0000 (11:45 +0900)]
[ARM/CI] Change the name of corefx project (dotnet/coreclr#7820)
Commit migrated from https://github.com/dotnet/coreclr/commit/
63a2b04a06374438f4837334fde030bb5d25f524
Sivarv [Thu, 27 Oct 2016 02:15:23 +0000 (19:15 -0700)]
Merge pull request dotnet/coreclr#7787 from sivarv/cmpOpt
Optimize 'test' instruction in case of op1 == 0 or op1 != 0 where op1 is known to set Zero flag.
Commit migrated from https://github.com/dotnet/coreclr/commit/
fb4f9dc6f125f666dbcd45eb538125a46d24003b
Michal Strehovský [Thu, 27 Oct 2016 00:50:15 +0000 (17:50 -0700)]
Merge pull request dotnet/coreclr#7828 from MichalStrehovsky/readyToRunGenericStaticBaseValueNum
Fix value numbering of ReadyToRunGenericStaticBase
Commit migrated from https://github.com/dotnet/coreclr/commit/
61ba8ca810eca553648c630aef557e3eb5caa04d
Andy Ayers [Thu, 27 Oct 2016 00:33:46 +0000 (17:33 -0700)]
Merge pull request dotnet/coreclr#7746 from AndyAyersMS/LessGCLayout
Jit: use class attributes check to reduce GC layout asks
Commit migrated from https://github.com/dotnet/coreclr/commit/
2652800977797e313c2bbe96c6d96657f7e91e8f
Drew Scoggins [Wed, 26 Oct 2016 20:32:30 +0000 (13:32 -0700)]
Move JIT perf tests to new infrastructure
Moved over the running of the JIT perf tests to use the same logic as the
perflab tests. Had to make a few changes to what we save and where since
we reuse the sandbox folder.
Commit migrated from https://github.com/dotnet/coreclr/commit/
b53f75a454dea81824d13bc3df375fdc66054b99
Drew Scoggins [Tue, 25 Oct 2016 23:58:31 +0000 (16:58 -0700)]
Update performance tests
Add inner iterations to all performance tests in the perflab directory.
This is because we were measuring a time that was to small, and the
results were not useful. This should also reduce the number of high level
iterations we run as well.
Commit migrated from https://github.com/dotnet/coreclr/commit/
e265939060ae690a3e971d80d60cdb5b45f734bb
John Soklaski [Tue, 18 Oct 2016 01:09:58 +0000 (18:09 -0700)]
Move benchmarks to use netstandard1.4 instead of netcoreapp1.0 to fix desktop reflection issue
Commit migrated from https://github.com/dotnet/coreclr/commit/
ef60f7921285baef7257b79fa79443ff15205d57
Alex Ghiondea [Tue, 25 Oct 2016 20:51:28 +0000 (13:51 -0700)]
Make sure that when the StringBuilder.Append method is called we first check that we can insert as many characters as were requested before we actually start writting them into the StringBuilder.
This will prevent the case when we realize that there is not enough space in the StringBuilder (and we cannot grow it as much as it is requested) after we already wrote stuff in it.
Commit migrated from https://github.com/dotnet/coreclr/commit/
45228fd11a1dfb51d136f2312a22b50bc300a3cb
John Chen [Wed, 26 Oct 2016 20:49:54 +0000 (13:49 -0700)]
Allow Ready-to-Run image to be loaded multiple times (dotnet/coreclr#7809)
Address issue dotnet/coreclr#6695 by porting the fix from desktop CLR.
Commit migrated from https://github.com/dotnet/coreclr/commit/
482cb7c67ec0485e67072d806cead86997e44c11
Michal Strehovský [Wed, 26 Oct 2016 19:41:14 +0000 (12:41 -0700)]
Fix value numbering of ReadyToRunGenericStaticBase
Fixes dotnet/corertdotnet/coreclr#2080.
Commit migrated from https://github.com/dotnet/coreclr/commit/
777ad2971b9e39976cc9b482ee05c279ca990f21
Faizur Rahman [Wed, 26 Oct 2016 00:29:16 +0000 (17:29 -0700)]
Add Misc types to InteropServices
Add the following types to InteropServices:
- AutomationProxyAttribute
- ComAliasNameAttribute
- ComCompatibleVersionAttribute
- ComConversionLossAttribute
- ComRegisterFunctionAttribute
- ComUnregisterFunctionAttribute
- ICustomFactory
- ICustomMarshaler
- ImportedFromTypeLibAttribute
- LCIDConversionAttribute
- ManagedToNativeComInteropStubAttribute
- PrimaryInteropAssemblyAttribute
- ProgIdAttribute
- TypeLibImportClassAttribute
- TypeLibVersionAttribute
Commit migrated from https://github.com/dotnet/coreclr/commit/
e8c4f5499136e137fdb3e3c5fb798b2637b21996
sivarv [Tue, 25 Oct 2016 23:52:08 +0000 (16:52 -0700)]
Optimize 'test' instruction for op1 == 0 and op1 != 0 where op1 is known to set flags.
Commit migrated from https://github.com/dotnet/coreclr/commit/
6ef848ca17d13b05ab23a75a422c52e4dffe1b34
Davis Goodin [Wed, 26 Oct 2016 18:52:41 +0000 (13:52 -0500)]
Update CoreClr, CoreFx to beta-24625-03, beta-24625-02, respectively (master) (dotnet/coreclr#7804)
* Update CoreClr, CoreFx to beta-24625-03, beta-24625-02, respectively
* Upgrade S.R.Serialization.Primitives to prerelease
Commit migrated from https://github.com/dotnet/coreclr/commit/
653639fee416d4c323306e41bff179e8167e2e5a
Pat Gavlin [Wed, 26 Oct 2016 16:59:37 +0000 (09:59 -0700)]
Merge pull request dotnet/coreclr#7808 from pgavlin/VSO280103
Clear side-effect flags on local reads in rationalize.
Commit migrated from https://github.com/dotnet/coreclr/commit/
8e5a34e76b4e0b18ecab83645dd0814c329c0d20
Michelle McDaniel [Wed, 26 Oct 2016 16:15:46 +0000 (09:15 -0700)]
Merge pull request dotnet/coreclr#7823 from adiaaida/checkformatlocation
Fix format.py to look for .bat on Windows
Commit migrated from https://github.com/dotnet/coreclr/commit/
de791ced486cc21b39903b534bff4e41a794a981
Michelle McDaniel [Wed, 26 Oct 2016 15:45:10 +0000 (08:45 -0700)]
Fix format.py to look for .bat on Windows
https://github.com/dotnet/jitutils/pull/56 changed the file extension for
the script files on Windows to be .bat, so the format.py script needs to
be updated.
Commit migrated from https://github.com/dotnet/coreclr/commit/
722708800eb809abad36cd92c6ff63f1773fd4db
Tarek Mahmoud Sayed [Wed, 26 Oct 2016 15:37:53 +0000 (08:37 -0700)]
Enable CultureInfo netstandard 1.7 APIs on Linux (dotnet/coreclr#7811)
* Enable CultureInfo netstandard 1.7 APIs on Linux
* fix spaces
* Use Array.Empty<CultureInfo> instead of CultureInfo[0]
Commit migrated from https://github.com/dotnet/coreclr/commit/
e5b7e4450a087240fc55a5174314605cee07b991
Jan Vorlicek [Wed, 26 Oct 2016 09:46:24 +0000 (11:46 +0200)]
Remove dependency of System.Globalization.Native.so on specific ICU version (dotnet/coreclr#7773)
Remove dependency of System.Globalization.Native.so on specific ICU version
Commit migrated from https://github.com/dotnet/coreclr/commit/
cf0c28faec35090781799df0a2360cf2440d05ce
Rama krishnan Raghupathy [Wed, 26 Oct 2016 05:47:27 +0000 (22:47 -0700)]
Merge pull request dotnet/coreclr#7816 from ramarag/ThreadingOverlapped
Adding missing members of threading.overlapped
Commit migrated from https://github.com/dotnet/coreclr/commit/
14a139d05e1e53552e991ddec915026c022c8071
sandreenko [Wed, 26 Oct 2016 05:32:11 +0000 (22:32 -0700)]
Merge pull request dotnet/coreclr#7806 from sandreenko/fix-VSO-278365
RyuJIT/x86: fix VSO 278365
Commit migrated from https://github.com/dotnet/coreclr/commit/
5bf1e383b0ac0fda70c96ec7365dc1395606f44c
Bruce Forstall [Wed, 26 Oct 2016 04:36:19 +0000 (21:36 -0700)]
Merge pull request dotnet/coreclr#7814 from dotnet-bot/from-tfs
Merge changes from TFS
Commit migrated from https://github.com/dotnet/coreclr/commit/
32aa7500214038bdd36c013f631c87bcd601e1a2
Rama Krishnan Raghupathy [Wed, 26 Oct 2016 03:25:03 +0000 (20:25 -0700)]
Adding missing members of threading.overlapped
Commit migrated from https://github.com/dotnet/coreclr/commit/
ec6103ab15fd9e4eaca5d0156f6cbba75efaa9ab
Rahul Kumar [Wed, 26 Oct 2016 00:15:57 +0000 (17:15 -0700)]
Fix build break caused by git commit for AppDomain::GetAssemblies
[tfs-changeset: 1635147]
Commit migrated from https://github.com/dotnet/coreclr/commit/
9dc2d9972257a496274580a10fa75994612615f0
Pat Gavlin [Tue, 25 Oct 2016 22:55:07 +0000 (15:55 -0700)]
Merge pull request dotnet/coreclr#7802 from pgavlin/VSO279829
Do not promote long-typed args in methods that use JMP.
Commit migrated from https://github.com/dotnet/coreclr/commit/
203c9a610c0fa99c40787165e5c3fa75e347a70f
Sergey Andreenko [Tue, 25 Oct 2016 21:54:52 +0000 (14:54 -0700)]
fix VSO 278365
don't convert (int) ((double)Round(double)) to (int)Round(double) on
RyuJit/x86
Commit migrated from https://github.com/dotnet/coreclr/commit/
6413f4d162bc7e8c2f3911e1d5d0892367195b92
Rama krishnan Raghupathy [Tue, 25 Oct 2016 22:36:23 +0000 (15:36 -0700)]
Merge pull request dotnet/coreclr#7751 from ramarag/MemFailPoint
Making MemoryFailPoint functional on xplat
Commit migrated from https://github.com/dotnet/coreclr/commit/
5fd9f5bc1ee7ae53651ef97db9f85fd468c4b1c9
Drew Scoggins [Fri, 9 Sep 2016 18:27:47 +0000 (11:27 -0700)]
Add CoreCLR perf test support to Jenkins
Made changes to the perf.groovy to add support for running the CoreCLR
performance tests in the Perflab directory. Also made changes to the
runner script for CoreCLR to allow it to run more than one type of test.
Commit migrated from https://github.com/dotnet/coreclr/commit/
e77cbf0eedaf829f69b9d3eaa63e6e79585da729
Bruce Forstall [Tue, 25 Oct 2016 22:03:15 +0000 (15:03 -0700)]
Merge pull request dotnet/coreclr#7800 from BruceForstall/ChangeJITGuid
Change JIT-EE interface GUID
Commit migrated from https://github.com/dotnet/coreclr/commit/
5672210ce21ec07711151822a2f2d4e9eed0bebd
Rama Krishnan Raghupathy [Fri, 7 Oct 2016 23:55:19 +0000 (16:55 -0700)]
Making MemoryFailPoint functional on xplat
Expose GlobalMemoryStatusEx on Xplat
Commit migrated from https://github.com/dotnet/coreclr/commit/
f2ac449d96ae21abf5b458645ff79ed328fe4ebc
Pat Gavlin [Tue, 25 Oct 2016 21:56:56 +0000 (14:56 -0700)]
Clear side-effect flags on local reads in rationalize.
These operations are always side-effect free.
Commit migrated from https://github.com/dotnet/coreclr/commit/
7e002fd3c5d2b01a28f6af1679d17554d88098e9
Rahul Kumar [Tue, 25 Oct 2016 21:43:04 +0000 (14:43 -0700)]
Merge pull request dotnet/coreclr#7786 from rahku/_appdomain
Add implementation of AppDomain.GetAssemblies
Commit migrated from https://github.com/dotnet/coreclr/commit/
e90db7bdfde00932d04188aa9eb105442a3fa294
Rahul Kumar [Mon, 24 Oct 2016 21:46:40 +0000 (14:46 -0700)]
Add implementation of AppDomain.GetAssemblies
Commit migrated from https://github.com/dotnet/coreclr/commit/
3556e1210f50975515ceec5abe306cb805587b51
Pat Gavlin [Tue, 25 Oct 2016 19:55:15 +0000 (12:55 -0700)]
Do not promote long-typed args in methods that use JMP.
On x86, methods that use JMP must ensure that all incoming arguments are
located in the appropriate stack slots/registers. To ensure that this is
true for long-typed arguments, do not promote these arguments in such
methods.
Commit migrated from https://github.com/dotnet/coreclr/commit/
822f3b70051280d3db15540c099a39f41a578e33
Michelle McDaniel [Tue, 25 Oct 2016 19:24:21 +0000 (12:24 -0700)]
Merge pull request dotnet/coreclr#7799 from adiaaida/fixRotateFlagCheck
Fix flag check when morphing into rotate
Commit migrated from https://github.com/dotnet/coreclr/commit/
9f351fab54563573b14a96a52290f6fa77face53
Andy Ayers [Tue, 25 Oct 2016 18:57:54 +0000 (11:57 -0700)]
Merge pull request dotnet/coreclr#7798 from AndyAyersMS/FixObservationImpact
Inliner: fix RARE_GC_STRUCT observation impact
Commit migrated from https://github.com/dotnet/coreclr/commit/
3638d5cc8c9df1f37560a237c2897bcf60a99763
Bruce Forstall [Tue, 25 Oct 2016 18:39:54 +0000 (11:39 -0700)]
Change JIT-EE interface GUID
This should have been changed with dotnet/coreclr#7672. However, changing it now
will help prevent unexpected bad interactions with SuperPMI and other
tools that expect the old interface.
Commit migrated from https://github.com/dotnet/coreclr/commit/
c949346dd2ce4dd02f844b6eed8fd7fab9f58186
Michelle McDaniel [Tue, 25 Oct 2016 17:09:06 +0000 (10:09 -0700)]
Fix flag check when morphing into rotate
When we morphed a tree into a rotate, we assumed that the parent's flags
would be the same as its operands' flags, when in actuality, the parent's
flags should be a superset of its operands' flags. This change fixes the
flag check.
Fixes VSO 278374.
Commit migrated from https://github.com/dotnet/coreclr/commit/
650358779c1d0f3cca92bf599aaf249773a9b554
Dmitry-Me [Tue, 25 Oct 2016 17:02:55 +0000 (20:02 +0300)]
Check index before access (dotnet/coreclr#7795)
Commit migrated from https://github.com/dotnet/coreclr/commit/
e9e1eb2666d4f79d8d02168375219426460c2bae
Ivan Baravy [Tue, 25 Oct 2016 16:32:15 +0000 (20:32 +0400)]
Add more lldbplugin/libsosplugin tests (dotnet/coreclr#5606)
* Add more libsosplugin tests, update framework
+ Introduce test.assert* functions in testutils.py
+ Print test results as a table with failed assertions highlighted
+ PEP8!
* Add more lldbplugin/libsosplugin tests
Commit migrated from https://github.com/dotnet/coreclr/commit/
f6b0056c819b07ae053d3112299ade0990144d00
Andy Ayers [Tue, 25 Oct 2016 16:31:47 +0000 (09:31 -0700)]
Inliner: fix RARE_GC_STRUCT observation impact
Closes dotnet/coreclr#7792.
Since this observation isn't always fatal, change its impact to INFORMATION.
Also, refresh the assertion checking around fatal observations so that the
EnhancedLegacyPolicy (which is the current default) will catch this kind of
error going forward.
Commit migrated from https://github.com/dotnet/coreclr/commit/
ee0344e285c1c9727e35e16ff2502a8e4937a96e
Jan Kotas [Tue, 25 Oct 2016 16:02:38 +0000 (09:02 -0700)]
Do not materialize CAS PseudoCustomAttribute (dotnet/coreclr#7794)
Do not materialize CAS permissionsets as custom attributes in reflection. We are just providing the CAS types in corefx to make things compile, but nothing else.
Fix https://github.com/dotnet/corefx/issues/12759
Commit migrated from https://github.com/dotnet/coreclr/commit/
565efeadebc4e57adda634396933e958ffd51bb0
Faizur Rahman [Tue, 25 Oct 2016 04:21:29 +0000 (21:21 -0700)]
Add few Interop Marshal APIs (dotnet/coreclr#7742)
Add the following interop Marshal APIs:
M:System.Runtime.InteropServices.Marshal.GenerateGuidForType(System.Type)
M:System.Runtime.InteropServices.Marshal.GenerateProgIdForType(System.Type)
M:System.Runtime.InteropServices.Marshal.GetComObjectData(System.Object,System.Object)
M:System.Runtime.InteropServices.Marshal.GetHINSTANCE(System.Reflection.Module)
M:System.Runtime.InteropServices.Marshal.GetIDispatchForObject(System.Object)
M:System.Runtime.InteropServices.Marshal.GetTypedObjectForIUnknown(System.IntPtr,System.Type)
M:System.Runtime.InteropServices.Marshal.PtrToStringAuto(System.IntPtr)
M:System.Runtime.InteropServices.Marshal.SetComObjectData(System.Object,System.Object,System.Object)
M:System.Runtime.InteropServices.Marshal.StringToCoTaskMemAuto(System.String)
M:System.Runtime.InteropServices.Marshal.StringToHGlobalAuto(System.String)
Commit migrated from https://github.com/dotnet/coreclr/commit/
3103a70d1fbe733d2b4e7ed9e2ff795b888b8b79
Daniel Podder [Tue, 25 Oct 2016 04:14:54 +0000 (21:14 -0700)]
Fix typos in windows build instructions (dotnet/coreclr#7789)
Commit migrated from https://github.com/dotnet/coreclr/commit/
47cc5df947ee03dc83c28ee243129e10e5683675
Mike McLaughlin [Tue, 25 Oct 2016 01:59:13 +0000 (18:59 -0700)]
Fix performance problem introduced in previous change. (dotnet/coreclr#7783)
Commit migrated from https://github.com/dotnet/coreclr/commit/
35989ce51b8f60670186b80eef5fb9dba6127fd2
sandreenko [Mon, 24 Oct 2016 23:54:56 +0000 (16:54 -0700)]
Merge pull request dotnet/coreclr#7782 from sandreenko/fix-tfs-build
fix tfs build crash
Commit migrated from https://github.com/dotnet/coreclr/commit/
9735854c9e1222ba63340b0c62afefebd779ee66
Sergey Andreenko [Mon, 24 Oct 2016 21:33:13 +0000 (14:33 -0700)]
fix tfs build crash
ifdef EE version statements were forgotten in two files.
Braket was on the wrong line.
Commit migrated from https://github.com/dotnet/coreclr/commit/
6c6fb3aa1f117d0c101bafa1f9af54062f193d6e
Ian Hays [Mon, 24 Oct 2016 22:23:03 +0000 (15:23 -0700)]
Merge pull request dotnet/coreclr#7778 from ianhays/binaryreadwrite_buffers
Add some extra checks to BinaryReader/Writer buffers
Commit migrated from https://github.com/dotnet/coreclr/commit/
5b29c2bb29039054638e51ef80e14aa75d3cd421
Jan Kotas [Mon, 24 Oct 2016 22:16:12 +0000 (15:16 -0700)]
Add back call to BitArray::ClearAll (dotnet/coreclr#7779)
Commit migrated from https://github.com/dotnet/coreclr/commit/
5d2c2040cddb8789fb1d20df3c729cbed0d3997e
noahfalk [Mon, 24 Oct 2016 21:51:12 +0000 (14:51 -0700)]
Merge pull request dotnet/coreclr#7706 from mjsabby/lcgjitprofcallbacks
Add LCG JIT Compilation Profiler Callbacks
Commit migrated from https://github.com/dotnet/coreclr/commit/
77140bcef2d3e21398360cda1c852a67026a7885
Sivarv [Mon, 24 Oct 2016 20:44:43 +0000 (13:44 -0700)]
Merge pull request dotnet/coreclr#7776 from sivarv/lsraStatFix
Fix the condition to dump a basic block stats.
Commit migrated from https://github.com/dotnet/coreclr/commit/
c537c3f54282fae452f85a3975a39a7ec1c35bba
Ian Hays [Mon, 24 Oct 2016 20:26:42 +0000 (13:26 -0700)]
PR feedback for BinaryReader/Writer buffers
Commit migrated from https://github.com/dotnet/coreclr/commit/
e807e3de05ef0434fec600f3cda8ca8461d3b947
Ian Hays [Mon, 24 Oct 2016 20:09:36 +0000 (13:09 -0700)]
Add some extra checks to BinaryReader/Writer buffers
Commit migrated from https://github.com/dotnet/coreclr/commit/
418ed80c623e676eb2680011f5b3f02b22a9b89e
Ian Hays [Mon, 24 Oct 2016 19:58:19 +0000 (12:58 -0700)]
Merge pull request dotnet/coreclr#7775 from ianhays/cfg_arm64
Add CFG flag to ARM64 build
Commit migrated from https://github.com/dotnet/coreclr/commit/
31d3cf041eff655d92a9a4925e1e8b1f7cc7f11e
Jan Kotas [Mon, 24 Oct 2016 18:51:06 +0000 (11:51 -0700)]
Merge pull request dotnet/coreclr#7772 from jkotas/gcinfo-cleanup
GCInfoDecoder cleanup
Commit migrated from https://github.com/dotnet/coreclr/commit/
6c4d3ac8536912009cc6b64ed580a1bc8420f0e5
sivarv [Mon, 24 Oct 2016 18:42:03 +0000 (11:42 -0700)]
Fix the condition to dump a basic block stats.
Commit migrated from https://github.com/dotnet/coreclr/commit/
dadc45fdf8fe0a61b0f020046ebfa62485d960f2
Ian Hays [Mon, 24 Oct 2016 18:04:03 +0000 (11:04 -0700)]
Add CFG flag to ARM64 build
Commit migrated from https://github.com/dotnet/coreclr/commit/
df09c7b50a0d8f112b67f0525b0620a7dc00355f
Pat Gavlin [Mon, 24 Oct 2016 15:54:25 +0000 (08:54 -0700)]
Merge pull request dotnet/coreclr#7720 from Dmitry-Me/fixBrokenComparison
Fix broken range check
Commit migrated from https://github.com/dotnet/coreclr/commit/
de41f232a5e90c2a0d663d9f1eb8d3abe7117188
Jan Kotas [Mon, 24 Oct 2016 14:59:16 +0000 (07:59 -0700)]
Replace LPVOID with void*
Commit migrated from https://github.com/dotnet/coreclr/commit/
8ad166a44d54c2d9a9ef8b7629f361a05bb364dc
Jan Kotas [Mon, 24 Oct 2016 04:31:29 +0000 (21:31 -0700)]
Simplify GCINFODECODER_CONTRACT
Commit migrated from https://github.com/dotnet/coreclr/commit/
c490aa1355fc4db332124c089d787d673cfae9bc
Jan Kotas [Mon, 24 Oct 2016 04:11:49 +0000 (21:11 -0700)]
Delete DISABLE_EH_VECTORS
Commit migrated from https://github.com/dotnet/coreclr/commit/
3e71169287f5f4deae73151aea0567148a15062a
Jan Kotas [Mon, 24 Oct 2016 01:21:22 +0000 (18:21 -0700)]
Delete _TARGET_SET_ macro
Commit migrated from https://github.com/dotnet/coreclr/commit/
2d07bf2e857f22b8303edbd06c545790039a8f3e
Jim Ma [Sat, 22 Oct 2016 16:19:57 +0000 (00:19 +0800)]
Fixed month calculating issue of calendars(dotnet/coreclr#7666) (dotnet/coreclr#7769)
Fixed the issue introduced by misunderstanding the precedence of '+' and
'>>'.
fix dotnet/coreclr#7666
Commit migrated from https://github.com/dotnet/coreclr/commit/
817c8397e5bcd4592dfaaaea3a03714ba5c3d3d8
Gaurav Khanna [Sat, 22 Oct 2016 16:18:26 +0000 (09:18 -0700)]
Fix Binder based PInvoke resolution for dynamic assembly (dotnet/coreclr#7770)
Commit migrated from https://github.com/dotnet/coreclr/commit/
5ff10a5b41d5481e21df9bbf5a4e8b419895530d
Vijay Ramakrishnan [Sat, 22 Oct 2016 11:51:20 +0000 (04:51 -0700)]
Fixing the StackOverflowException error message. (dotnet/coreclr#4786)
Commit migrated from https://github.com/dotnet/coreclr/commit/
24a6c7908f2582fb8628e53fe3d02306f6fba43c
Jim Ma [Sat, 22 Oct 2016 11:13:17 +0000 (19:13 +0800)]
Fixed typos and format issues on clr-code-guide doc(dotnet/coreclr#7767) (dotnet/coreclr#7768)
There're several typos and format issues. Just fixed them.
Fix issue dotnet/coreclr#7767
Commit migrated from https://github.com/dotnet/coreclr/commit/
73b4f008866b153a4d86785b648de4a281981c9e
Jan Kotas [Sat, 22 Oct 2016 05:07:29 +0000 (22:07 -0700)]
Port GC changes from CoreRT (dotnet/coreclr#7764)
https://github.com/dotnet/corert/pull/2064: Add back limit for maximum object size
https://github.com/dotnet/corert/pull/2061: Fix retail build break
Commit migrated from https://github.com/dotnet/coreclr/commit/
a0ae251eed00dfb5f5dc8dd3769c15c300c7502c
Dmitry-Me [Sat, 22 Oct 2016 04:05:09 +0000 (07:05 +0300)]
Fix broken #elif (dotnet/coreclr#7756)
Commit migrated from https://github.com/dotnet/coreclr/commit/
6c7bcaf51c9ed8fdf1253e05429291d56fc56509
Mukul Sabharwal [Sat, 22 Oct 2016 02:45:06 +0000 (19:45 -0700)]
Add Profiling API callbacks for R2R methods (dotnet/coreclr#7732)
Commit migrated from https://github.com/dotnet/coreclr/commit/
ac0cb2fb119f45bd653d44ba9e4a2abed6a23000
Sivarv [Sat, 22 Oct 2016 02:36:25 +0000 (19:36 -0700)]
Merge pull request dotnet/coreclr#7749 from sivarv/VectorIntDot
Recognize Vector<int>.Dot on AVX as a JIT intrinsic.
Commit migrated from https://github.com/dotnet/coreclr/commit/
437b45edab4d07adc220607a3448624ccfcdab9f
James Ko [Sat, 22 Oct 2016 01:21:27 +0000 (21:21 -0400)]
Improve ArraySegment's override of GetHashCode (dotnet/coreclr#4654)
* Improve ArraySegment's override of GetHashCode
* Use new implementation suggested by @VSadov
* Respond to PR feedback
* Remove the workaround for object.GetHashCode
* Respond to HashHelpers changes
* Fix compile errors.
Commit migrated from https://github.com/dotnet/coreclr/commit/
15ea0086a7e6f87e8237923684e100e3e1f44698
Pat Gavlin [Sat, 22 Oct 2016 01:21:01 +0000 (18:21 -0700)]
Merge pull request dotnet/coreclr#7739 from pgavlin/DisableGCStressIncompatibleTests
Mark tests GCStress-incompatible for x86.
Commit migrated from https://github.com/dotnet/coreclr/commit/
940a6f0d7277f368fc2e3d25b527e27242639141
Pat Gavlin [Sat, 22 Oct 2016 00:24:17 +0000 (17:24 -0700)]
Merge pull request dotnet/coreclr#7760 from pgavlin/VSO279832
Properly initialize the varargs base lclVar.
Commit migrated from https://github.com/dotnet/coreclr/commit/
eb6b52c30d616eb1378f30138c0b5115e69515fb
Pat Gavlin [Sat, 22 Oct 2016 00:22:49 +0000 (17:22 -0700)]
Merge pull request dotnet/coreclr#7759 from pgavlin/VSO278367
Initialize long return type descs in `gtNewCallNode`.
Commit migrated from https://github.com/dotnet/coreclr/commit/
cf708032c8c6d4463e3db204d1780700554c43b6