You've already forked linux-packaging-mono
Imported Upstream version 5.14.0.78
Former-commit-id: 3494343bcc9ddb42b36b82dd9ae7b69e85e0229f
This commit is contained in:
parent
74b74abd9f
commit
19234507ba
@@ -181,34 +181,39 @@ namespace System
|
||||
((byte*)dest) [0] = ((byte*)src) [0];
|
||||
}
|
||||
|
||||
internal static unsafe void Memcpy (byte *dest, byte *src, int size) {
|
||||
internal static unsafe void Memcpy (byte *dest, byte *src, int len) {
|
||||
// FIXME: if pointers are not aligned, try to align them
|
||||
// so a faster routine can be used. Handle the case where
|
||||
// the pointers can't be reduced to have the same alignment
|
||||
// (just ignore the issue on x86?)
|
||||
if ((((int)dest | (int)src) & 3) != 0) {
|
||||
if (((int)dest & 1) != 0 && ((int)src & 1) != 0 && size >= 1) {
|
||||
if (((int)dest & 1) != 0 && ((int)src & 1) != 0 && len >= 1) {
|
||||
dest [0] = src [0];
|
||||
++dest;
|
||||
++src;
|
||||
--size;
|
||||
--len;
|
||||
}
|
||||
if (((int)dest & 2) != 0 && ((int)src & 2) != 0 && size >= 2) {
|
||||
if (((int)dest & 2) != 0 && ((int)src & 2) != 0 && len >= 2) {
|
||||
((short*)dest) [0] = ((short*)src) [0];
|
||||
dest += 2;
|
||||
src += 2;
|
||||
size -= 2;
|
||||
len -= 2;
|
||||
}
|
||||
if ((((int)dest | (int)src) & 1) != 0) {
|
||||
memcpy1 (dest, src, size);
|
||||
memcpy1 (dest, src, len);
|
||||
return;
|
||||
}
|
||||
if ((((int)dest | (int)src) & 2) != 0) {
|
||||
memcpy2 (dest, src, size);
|
||||
memcpy2 (dest, src, len);
|
||||
return;
|
||||
}
|
||||
}
|
||||
memcpy4 (dest, src, size);
|
||||
memcpy4 (dest, src, len);
|
||||
}
|
||||
|
||||
internal static unsafe void Memmove (byte *dest, byte *src, uint len)
|
||||
{
|
||||
Memcpy (dest, src, (int) len);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -64,9 +64,9 @@ namespace System.Globalization
|
||||
}
|
||||
|
||||
lock (collators) {
|
||||
if (!collators.TryGetValue (m_sortName, out collator)) {
|
||||
if (!collators.TryGetValue (_sortName, out collator)) {
|
||||
collator = new SimpleCollator (CultureInfo.GetCultureInfo (m_name));
|
||||
collators [m_sortName] = collator;
|
||||
collators [_sortName] = collator;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -88,20 +88,11 @@ namespace System.Globalization
|
||||
return(key);
|
||||
}
|
||||
|
||||
int internal_index_switch (string s, int sindex, int count, char c, CompareOptions opt, bool first)
|
||||
{
|
||||
if (opt == CompareOptions.Ordinal && first)
|
||||
return s.IndexOfUnchecked (c, sindex, count);
|
||||
|
||||
return UseManagedCollation ?
|
||||
internal_index_managed (s, sindex, count, c, opt, first) :
|
||||
internal_index (s, sindex, count, c, opt, first);
|
||||
}
|
||||
|
||||
int internal_index_switch (string s1, int sindex, int count, string s2, CompareOptions opt, bool first)
|
||||
{
|
||||
if (opt == CompareOptions.Ordinal && first)
|
||||
return s1.IndexOfUnchecked (s2, sindex, count);
|
||||
// TODO: should not be needed, why is there specialization for OrdinalIgnore and not for Ordinal
|
||||
if (opt == CompareOptions.Ordinal)
|
||||
return first ? s1.IndexOfUnchecked (s2, sindex, count) : s1.LastIndexOfUnchecked (s2, sindex, count);
|
||||
|
||||
return UseManagedCollation ?
|
||||
internal_index_managed (s1, sindex, count, s2, opt, first) :
|
||||
|
||||
@@ -30,15 +30,15 @@ namespace System.Reflection
|
||||
throw new NotImplementedException ();
|
||||
}
|
||||
|
||||
internal virtual int get_next_table_index (object obj, int table, bool inc) {
|
||||
internal virtual int get_next_table_index (object obj, int table, int count) {
|
||||
#if !FULL_AOT_RUNTIME
|
||||
if (this is MethodBuilder) {
|
||||
MethodBuilder mb = (MethodBuilder)this;
|
||||
return mb.get_next_table_index (obj, table, inc);
|
||||
return mb.get_next_table_index (obj, table, count);
|
||||
}
|
||||
if (this is ConstructorBuilder) {
|
||||
ConstructorBuilder mb = (ConstructorBuilder)this;
|
||||
return mb.get_next_table_index (obj, table, inc);
|
||||
return mb.get_next_table_index (obj, table, count);
|
||||
}
|
||||
#endif
|
||||
throw new Exception ("Method is not a builder method");
|
||||
|
||||
@@ -138,7 +138,7 @@ namespace System
|
||||
return m_serializationCtor;
|
||||
}
|
||||
|
||||
internal Object CreateInstanceSlow(bool publicOnly, bool skipCheckThis, bool fillCache, ref StackCrawlMark stackMark)
|
||||
internal Object CreateInstanceSlow(bool publicOnly, bool wrapExceptions, bool skipCheckThis, bool fillCache, ref StackCrawlMark stackMark)
|
||||
{
|
||||
//bool bNeedSecurityCheck = true;
|
||||
//bool bCanBeCached = false;
|
||||
@@ -150,10 +150,10 @@ namespace System
|
||||
//if (!fillCache)
|
||||
// bSecurityCheckOff = true;
|
||||
|
||||
return CreateInstanceMono (!publicOnly);
|
||||
return CreateInstanceMono (!publicOnly, wrapExceptions);
|
||||
}
|
||||
|
||||
object CreateInstanceMono (bool nonPublic)
|
||||
object CreateInstanceMono (bool nonPublic, bool wrapExceptions)
|
||||
{
|
||||
var ctor = GetDefaultConstructor ();
|
||||
if (!nonPublic && ctor != null && !ctor.IsPublic) {
|
||||
@@ -176,7 +176,7 @@ namespace System
|
||||
throw new MissingMethodException (Locale.GetText ("Cannot create an abstract class '{0}'.", FullName));
|
||||
}
|
||||
|
||||
return ctor.InternalInvoke (null, null);
|
||||
return ctor.InternalInvoke (null, null, wrapExceptions);
|
||||
}
|
||||
|
||||
internal Object CheckValue (Object value, Binder binder, CultureInfo culture, BindingFlags invokeAttr)
|
||||
@@ -465,7 +465,7 @@ namespace System
|
||||
{
|
||||
var gt = (RuntimeType) MakeGenericType (genericType, new Type [] { genericArgument });
|
||||
var ctor = gt.GetDefaultConstructor ();
|
||||
return ctor.InternalInvoke (null, null);
|
||||
return ctor.InternalInvoke (null, null, wrapExceptions: true);
|
||||
}
|
||||
|
||||
[MethodImplAttribute(MethodImplOptions.InternalCall)]
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user