Imported Upstream version 4.2.1.124

Former-commit-id: 3b6a300a4ce80578c93599ba6e26a8f66743cde0
This commit is contained in:
Xamarin Public Jenkins 2015-12-09 05:54:53 -05:00
parent 4c37e28ac4
commit d11e8b35fd
33 changed files with 84 additions and 76 deletions

View File

@ -1318,7 +1318,8 @@ namespace System
else {
abbrevs.Add (abbrev_index, sb.ToString ());
//Adding all the substrings too, as it seems to be used, at least for Africa/Windhoek
for (int j = 1; j < sb.Length; j++)
//j == sb.Length empty substring also needs to be added #31432
for (int j = 1; j <= sb.Length; j++)
abbrevs.Add (abbrev_index + j, sb.ToString (j, sb.Length - j));
abbrev_index = i + 1;
sb = new StringBuilder ();

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
f8f8e8e5ba7264993dba7738414a0123ab743cfe
06f7fdab7429fe3c9ed22771dfe9380d208f037d

View File

@ -1 +1 @@
4e690a5fc430b0f2617d1e6ef0c3f48c60c2acf2
f41bbb4a396f59eec461720dfc065f676523d1c1

View File

@ -1 +1 @@
3d129032906541b033f18089e67b70c7bfa0a13a
ff03cd74a2624bd0a4a51658bb41e7d90f3144c9

View File

@ -1 +1 @@
32e21a2c8d84ae3b6a90e4eafcfb933ce24d0350
d8009a94148589526c8dc39f0e1c0ca9e77217e8

View File

@ -1 +1 @@
ff1a5fc565b24ddfc0c76f0f19d1271343f59208
22fc25a9bdf68807d3d57dc73d711bbd3bc8bc79

View File

@ -334,6 +334,9 @@ namespace Mono.Linker.Steps {
return;
MarkType (et);
if (argument.Value == null)
return;
foreach (var cac in (CustomAttributeArgument[]) argument.Value)
MarkWithResolvedScope ((TypeReference) cac.Value);
} else if (at.Namespace == "System" && at.Name == "Type") {
@ -355,7 +358,6 @@ namespace Mono.Linker.Steps {
if ((git != null) && git.HasGenericArguments) {
foreach (var ga in git.GenericArguments)
MarkWithResolvedScope (ga);
return;
}
// we cannot set the Scope of a TypeSpecification but it's element type can be set
// e.g. System.String[] -> System.String

View File

@ -129,15 +129,24 @@ namespace Mono.Linker.Steps {
return new Regex (pattern.Replace(".", @"\.").Replace("*", "(.*)"));
}
void MatchType (TypeDefinition type, Regex regex, XPathNavigator nav)
{
if (regex.Match (type.FullName).Success)
ProcessType (type, nav);
if (!type.HasNestedTypes)
return;
foreach (var nt in type.NestedTypes)
MatchType (nt, regex, nav);
}
void ProcessTypePattern (string fullname, AssemblyDefinition assembly, XPathNavigator nav)
{
Regex regex = CreateRegexFromPattern (fullname);
foreach (TypeDefinition type in assembly.MainModule.Types) {
if (!regex.Match (type.FullName).Success)
continue;
ProcessType (type, nav);
MatchType (type, regex, nav);
}
}

View File

@ -120,8 +120,6 @@ static const MonoRuntimeInfo *current_runtime = NULL;
*/
static const MonoRuntimeInfo supported_runtimes[] = {
{"v4.0.30319","4.5", { {4,0,0,0}, {10,0,0,0}, {4,0,0,0}, {4,0,0,0} } },
{"v4.0.30128","4.0", { {4,0,0,0}, {10,0,0,0}, {4,0,0,0}, {4,0,0,0} } },
{"v4.0.20506","4.0", { {4,0,0,0}, {10,0,0,0}, {4,0,0,0}, {4,0,0,0} } },
{"mobile", "2.1", { {2,0,5,0}, {10,0,0,0}, {2,0,5,0}, {2,0,5,0} } },
{"moonlight", "2.1", { {2,0,5,0}, { 9,0,0,0}, {3,5,0,0}, {3,0,0,0} } },
};

View File

@ -749,7 +749,7 @@ EXTRA_DIST = TestDriver.cs \
Makefile.am.in
version.h: Makefile
echo "#define FULL_VERSION \"Stable 4.2.1.102/6dd2d0d\"" > version.h
echo "#define FULL_VERSION \"Stable 4.2.1.124/39edf24\"" > version.h
# Utility target for patching libtool to speed up linking
patch-libtool:

View File

@ -749,7 +749,7 @@ EXTRA_DIST = TestDriver.cs \
Makefile.am.in
version.h: Makefile
echo "#define FULL_VERSION \"Stable 4.2.1.102/6dd2d0d\"" > version.h
echo "#define FULL_VERSION \"Stable 4.2.1.124/39edf24\"" > version.h
# Utility target for patching libtool to speed up linking
patch-libtool:

View File

@ -1 +1 @@
93d782893e1caf2f8a1ed7b26a892c99955b11e1
3cfd458f71bd744fd88bb6d83cb1577e532349ed

View File

@ -1 +1 @@
cb63252e0018b9aefb43fe181130006eafb121b8
cfb7eed7bb4f48fe36aa3b8c99187b233fb8ed25

View File

@ -1 +1 @@
bf88f17bace11357a53f5ac7a00bdefc6a4588ee
f71435042be76f9c1351b68ab479e824c9cd68f3

View File

@ -882,11 +882,11 @@ class_type_info (MonoDomain *domain, MonoClass *class, MonoRgctxInfoType info_ty
return GUINT_TO_POINTER (mono_class_value_size (class, NULL));
case MONO_RGCTX_INFO_CLASS_BOX_TYPE:
if (MONO_TYPE_IS_REFERENCE (&class->byval_arg))
return GUINT_TO_POINTER (1);
return GUINT_TO_POINTER (MONO_GSHAREDVT_BOX_TYPE_REF);
else if (mono_class_is_nullable (class))
return GUINT_TO_POINTER (2);
return GUINT_TO_POINTER (MONO_GSHAREDVT_BOX_TYPE_NULLABLE);
else
return GUINT_TO_POINTER (0);
return GUINT_TO_POINTER (MONO_GSHAREDVT_BOX_TYPE_VTYPE);
case MONO_RGCTX_INFO_MEMCPY:
case MONO_RGCTX_INFO_BZERO: {
static MonoMethod *memcpy_method [17];
@ -1236,11 +1236,11 @@ instantiate_info (MonoDomain *domain, MonoRuntimeGenericContextInfoTemplate *oti
impl_class = method->klass;
if (MONO_TYPE_IS_REFERENCE (&impl_class->byval_arg))
return GUINT_TO_POINTER (1);
return GUINT_TO_POINTER (MONO_GSHAREDVT_BOX_TYPE_REF);
else if (mono_class_is_nullable (impl_class))
return GUINT_TO_POINTER (2);
return GUINT_TO_POINTER (MONO_GSHAREDVT_BOX_TYPE_NULLABLE);
else
return GUINT_TO_POINTER (0);
return GUINT_TO_POINTER (MONO_GSHAREDVT_BOX_TYPE_VTYPE);
}
#ifndef DISABLE_REMOTING
case MONO_RGCTX_INFO_REMOTING_INVOKE_WITH_CHECK:
@ -1253,10 +1253,11 @@ instantiate_info (MonoDomain *domain, MonoRuntimeGenericContextInfoTemplate *oti
case MONO_RGCTX_INFO_FIELD_OFFSET: {
MonoClassField *field = data;
/* The value is offset by 1 */
if (field->parent->valuetype && !(field->type->attrs & FIELD_ATTRIBUTE_STATIC))
return GUINT_TO_POINTER (field->offset - sizeof (MonoObject));
return GUINT_TO_POINTER (field->offset - sizeof (MonoObject) + 1);
else
return GUINT_TO_POINTER (field->offset);
return GUINT_TO_POINTER (field->offset + 1);
}
case MONO_RGCTX_INFO_METHOD_RGCTX: {
MonoMethodInflated *method = data;
@ -1851,6 +1852,7 @@ fill_runtime_generic_context (MonoVTable *class_vtable, MonoRuntimeGenericContex
method_inst ? method_inst->type_argc : 0, slot, TRUE, TRUE, &do_free);
/* This might take the loader lock */
info = instantiate_info (domain, &oti, &context, class);
g_assert (info);
/*
if (method_inst)

View File

@ -1 +1 @@
7c01d8b67d92f0bebbdeff1c929e982a99b7d3bb
2e5dc1ce3dbfe8e7af13b7ab7a5e73b37690cfdf

View File

@ -1 +1 @@
#define FULL_VERSION "Stable 4.2.1.102/6dd2d0d"
#define FULL_VERSION "Stable 4.2.1.124/39edf24"

View File

@ -76,11 +76,6 @@ mono_get_address_info (const char *hostname, int port, int flags, MonoAddressInf
while (res) {
cur = g_new0 (MonoAddressEntry, 1);
if (prev)
prev->next = cur;
else
addr_info->entries = cur;
cur->family = res->ai_family;
cur->socktype = res->ai_socktype;
cur->protocol = res->ai_protocol;
@ -91,12 +86,20 @@ mono_get_address_info (const char *hostname, int port, int flags, MonoAddressInf
cur->address_len = sizeof (struct in6_addr);
cur->address.v6 = ((struct sockaddr_in6*)res->ai_addr)->sin6_addr;
} else {
g_error ("Cannot handle address family %d", cur->family);
g_warning ("Cannot handle address family %d", cur->family);
res = res->ai_next;
g_free (cur);
continue;
}
if (res->ai_canonname)
cur->canonical_name = g_strdup (res->ai_canonname);
if (prev)
prev->next = cur;
else
addr_info->entries = cur;
prev = cur;
res = res->ai_next;
}
@ -339,4 +342,4 @@ mono_networking_shutdown (void)
{
//nothing really
}
#endif
#endif

View File

@ -71,13 +71,11 @@
<ClCompile Include="..\mono\metadata\mono-basic-block.c" />
<ClCompile Include="..\mono\metadata\mono-config.c" />
<ClCompile Include="..\mono\metadata\mono-config-dirs.c" />
<ClCompile Include="..\mono\metadata\mono-cq.c" />
<ClCompile Include="..\mono\metadata\mono-debug.c" />
<ClCompile Include="..\mono\metadata\mono-endian.c" />
<ClCompile Include="..\mono\metadata\mono-hash.c" />
<ClCompile Include="..\mono\metadata\mono-mlist.c" />
<ClCompile Include="..\mono\metadata\mono-perfcounters.c" />
<ClCompile Include="..\mono\metadata\mono-wsq.c" />
<ClCompile Include="..\mono\metadata\nacl-stub.c" />
<ClCompile Include="..\mono\metadata\null-gc.c" />
<ClCompile Include="..\mono\metadata\number-ms.c" />
@ -129,8 +127,6 @@
<ClCompile Include="..\mono\metadata\socket-io.c" />
<ClCompile Include="..\mono\metadata\string-icalls.c" />
<ClCompile Include="..\mono\metadata\sysmath.c" />
<ClCompile Include="..\mono\metadata\threadpool.c" />
<ClCompile Include="..\mono\metadata\tpool-poll.c" />
<ClCompile Include="..\mono\metadata\threads.c" />
<ClCompile Include="..\mono\metadata\verify.c" />
<ClCompile Include="..\mono\mini\mini-cross-helpers.c" />
@ -178,7 +174,6 @@
<ClInclude Include="..\mono\metadata\mono-basic-block.h" />
<ClInclude Include="..\mono\metadata\mono-config.h" />
<ClInclude Include="..\mono\metadata\mono-config-dirs.h" />
<ClInclude Include="..\mono\metadata\mono-cq.h" />
<ClInclude Include="..\mono\metadata\mono-debug-debugger.h" />
<ClInclude Include="..\mono\metadata\mono-debug.h" />
<ClInclude Include="..\mono\metadata\mono-endian.h" />
@ -187,7 +182,6 @@
<ClInclude Include="..\mono\metadata\mono-perfcounters-def.h" />
<ClInclude Include="..\mono\metadata\mono-perfcounters.h" />
<ClInclude Include="..\mono\metadata\mono-ptr-array.h" />
<ClInclude Include="..\mono\metadata\mono-wsq.h" />
<ClInclude Include="..\mono\metadata\normalization-tables.h" />
<ClInclude Include="..\mono\metadata\number-formatter.h" />
<ClInclude Include="..\mono\metadata\object-internals.h" />
@ -226,8 +220,6 @@
<ClInclude Include="..\mono\metadata\string-icalls.h" />
<ClInclude Include="..\mono\metadata\sysmath.h" />
<ClInclude Include="..\mono\metadata\tabledefs.h" />
<ClInclude Include="..\mono\metadata\threadpool-internals.h" />
<ClInclude Include="..\mono\metadata\threadpool.h" />
<ClInclude Include="..\mono\metadata\threads-types.h" />
<ClInclude Include="..\mono\metadata\verify-internals.h" />
<ClInclude Include="..\mono\metadata\verify.h" />
@ -483,4 +475,4 @@
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>
</Project>

Some files were not shown because too many files have changed in this diff Show More