Imported Upstream version 6.4.0.159

Former-commit-id: 1e2273654f6c532d8a1fc28b8bfe8da4fc9f70d0
This commit is contained in:
Xamarin Public Jenkins (auto-signing) 2019-08-08 08:46:35 +00:00
parent 0f5eeea818
commit 75359d80fe
57 changed files with 158 additions and 57 deletions

View File

@ -1 +1 @@
d4b39c76d234855c13b7e72356ba16af95038fd2
ea71a3011a5bc17919912f79ba0b43a78e90dc46

View File

@ -1 +1 @@
42e4417c14b2befb25de75a219226beb30a507ef
4ff63b001b91e85857354dbd41ddd6d142ef0881

View File

@ -41,7 +41,7 @@ static partial class Consts
// Use these assembly version constants to make code more maintainable.
//
public const string MonoVersion = "6.4.0.154";
public const string MonoVersion = "6.4.0.159";
public const string MonoCompany = "Mono development team";
public const string MonoProduct = "Mono Common Language Infrastructure";
public const string MonoCopyright = "(c) Various Mono authors";

View File

@ -1 +1 @@
ed794b76e398827d7f12d03c2f9fab78c29b6f5e
458539943d85c5779812f36f8951cbe038dff6ed

View File

@ -1 +1 @@
0ca055f5bc4bd3afaaa88e4c60ca00387ec5ed00
c8558d1819748e39e84858f323c3d370729d7457

View File

@ -1 +1 @@
c9483802dd8ba49044cb99f1b6b1633489cfb00f
e037f75eb5fd4aa1518477b0e3ce4edff13aeb57

View File

@ -1 +1 @@
c97b87efd9c3f40784510d56c77fc28b32a56875
45aa9f986afd72991e339803769f9182c6d4caa9

View File

@ -1 +1 @@
6e6088e387d47441a5e29df7a59cba15b4bdd829
28727667395f42082079eeaf78e36c190e751534

View File

@ -1 +1 @@
0d7de73d30827f93ef7f8aea1a648d5bb645aee3
a189cc4109fd07a86386331c219a885dd499bb40

View File

@ -1 +1 @@
b7d268b9027f5299ca5ea1b3d2d2d72c13dc83c0
6adf0f67b3d0103bbf05c10040bed12a3432bc5b

View File

@ -1 +1 @@
ed794b76e398827d7f12d03c2f9fab78c29b6f5e
458539943d85c5779812f36f8951cbe038dff6ed

View File

@ -1 +1 @@
0ca055f5bc4bd3afaaa88e4c60ca00387ec5ed00
c8558d1819748e39e84858f323c3d370729d7457

View File

@ -1 +1 @@
c9483802dd8ba49044cb99f1b6b1633489cfb00f
e037f75eb5fd4aa1518477b0e3ce4edff13aeb57

View File

@ -1 +1 @@
c97b87efd9c3f40784510d56c77fc28b32a56875
45aa9f986afd72991e339803769f9182c6d4caa9

View File

@ -1 +1 @@
6e6088e387d47441a5e29df7a59cba15b4bdd829
28727667395f42082079eeaf78e36c190e751534

View File

@ -1 +1 @@
0d7de73d30827f93ef7f8aea1a648d5bb645aee3
a189cc4109fd07a86386331c219a885dd499bb40

View File

@ -1 +1 @@
20cd0034c753bc3805eca90015efebe6f0f21c1f
c1579843329c499ef1c8d59d72b6c8fc97584ad9

View File

@ -1 +1 @@
b7d268b9027f5299ca5ea1b3d2d2d72c13dc83c0
6adf0f67b3d0103bbf05c10040bed12a3432bc5b

View File

@ -1 +1 @@
ed794b76e398827d7f12d03c2f9fab78c29b6f5e
458539943d85c5779812f36f8951cbe038dff6ed

View File

@ -1 +1 @@
0ca055f5bc4bd3afaaa88e4c60ca00387ec5ed00
c8558d1819748e39e84858f323c3d370729d7457

View File

@ -1 +1 @@
c9483802dd8ba49044cb99f1b6b1633489cfb00f
e037f75eb5fd4aa1518477b0e3ce4edff13aeb57

View File

@ -1 +1 @@
c97b87efd9c3f40784510d56c77fc28b32a56875
45aa9f986afd72991e339803769f9182c6d4caa9

View File

@ -1 +1 @@
6e6088e387d47441a5e29df7a59cba15b4bdd829
28727667395f42082079eeaf78e36c190e751534

View File

@ -1 +1 @@
0d7de73d30827f93ef7f8aea1a648d5bb645aee3
a189cc4109fd07a86386331c219a885dd499bb40

View File

@ -1 +1 @@
20cd0034c753bc3805eca90015efebe6f0f21c1f
c1579843329c499ef1c8d59d72b6c8fc97584ad9

View File

@ -1 +1 @@
b7d268b9027f5299ca5ea1b3d2d2d72c13dc83c0
6adf0f67b3d0103bbf05c10040bed12a3432bc5b

View File

@ -1 +1 @@
ed794b76e398827d7f12d03c2f9fab78c29b6f5e
458539943d85c5779812f36f8951cbe038dff6ed

View File

@ -1 +1 @@
0ca055f5bc4bd3afaaa88e4c60ca00387ec5ed00
c8558d1819748e39e84858f323c3d370729d7457

View File

@ -1 +1 @@
b512ad4cd3c921868845fe369c89a563b41b16ea
d3166b7e26518094416fb789942df01cc9f094a1

View File

@ -1 +1 @@
c97b87efd9c3f40784510d56c77fc28b32a56875
45aa9f986afd72991e339803769f9182c6d4caa9

View File

@ -1 +1 @@
6e6088e387d47441a5e29df7a59cba15b4bdd829
28727667395f42082079eeaf78e36c190e751534

View File

@ -1 +1 @@
0d7de73d30827f93ef7f8aea1a648d5bb645aee3
a189cc4109fd07a86386331c219a885dd499bb40

View File

@ -1 +1 @@
20cd0034c753bc3805eca90015efebe6f0f21c1f
c1579843329c499ef1c8d59d72b6c8fc97584ad9

View File

@ -1 +1 @@
a4d2e3ae42736212fdb15abc1435230ee55d5567
68e6a2a5d186c29050ed3276359d5527fe1c80a2

View File

@ -74,6 +74,8 @@
#define WSAESHUTDOWN 10058
#define WSAETIMEDOUT 10060
#define WSAECONNREFUSED 10061
#define WSAELOOP 10062
#define WSAENAMETOOLONG 10063
#define WSAEHOSTDOWN 10064
#define WSAEHOSTUNREACH 10065
#define WSASYSCALLFAILURE 10107

View File

@ -1476,12 +1476,12 @@ mono_w32socket_convert_error (gint error)
#ifdef EISCONN
case EISCONN: return WSAEISCONN;
#endif
/* FIXME: case ELOOP: return WSA????; */
case ELOOP: return WSAELOOP;
case EMFILE: return WSAEMFILE;
#ifdef EMSGSIZE
case EMSGSIZE: return WSAEMSGSIZE;
#endif
/* FIXME: case ENAMETOOLONG: return WSAEACCES; */
case ENAMETOOLONG: return WSAENAMETOOLONG;
#ifdef ENETUNREACH
case ENETUNREACH: return WSAENETUNREACH;
#endif

View File

@ -436,9 +436,6 @@ mini_emit_method_call_full (MonoCompile *cfg, MonoMethod *method, MonoMethodSign
if (!sig)
sig = mono_method_signature_internal (method);
if (cfg->llvm_only && mono_class_is_interface (method->klass))
g_assert_not_reached ();
if (rgctx_arg) {
rgctx_reg = mono_alloc_preg (cfg);
MONO_EMIT_NEW_UNALU (cfg, OP_MOVE, rgctx_reg, rgctx_arg->dreg);

View File

@ -1892,6 +1892,84 @@ public class Tests
return obj.foo<IFaceTest, int> (ref t);
}
class MyBaseTest<TOutput> {
public void Verify<TInput> (Func<TInput, TOutput> convert, TInput[] testValues, TOutput[] expectedValues) {
MyAssert.Equal (expectedValues.Length, testValues.Length);
for (int i = 0; i < testValues.Length; i++) {
TOutput result = convert (testValues[i]);
MyAssert.Equal (expectedValues[i], result);
}
}
}
class MyAssert {
public static void Equal<T>(T expected, T actual) {
if (!GetEqualityComparer<T> ().Equals (expected, actual))
throw new MyEqualException (expected, actual);
}
static IEqualityComparer<T> GetEqualityComparer<T>() {
return new AssertEqualityComparer<T>();
}
}
class AssertEqualityComparer<T> : IEqualityComparer<T> {
public AssertEqualityComparer() { }
public bool Equals(T x, T y) {
var equatable = x as IEquatable<T>;
if (equatable != null)
return equatable.Equals (y);
throw new NotImplementedException( );
}
public int GetHashCode(T obj) {
throw new NotImplementedException();
}
}
class MyEqualException : Exception {
public MyEqualException (object expected, object actual) {
Console.WriteLine ("MyEqualException: expected = " + expected + " vs. actual = " + actual);
}
}
class SByteTestClass : MyBaseTest<sbyte> {
public static int execute () {
Int32[] testValues = { 100, -100, 0 };
SByte[] expectedValues = { 100, -100, 0 };
try {
new SByteTestClass ().Verify (Convert.ToSByte, testValues, expectedValues);
return 0;
} catch (MyEqualException) {
return 1;
}
return 2;
}
}
static int test_0_out_sbyte () {
return SByteTestClass.execute ();
}
class Int16TestClass : MyBaseTest<Int16> {
public static int execute () {
Int32[] testValues = { 100, -100, 0 };
Int16[] expectedValues = { 100, -100, 0 };
try {
new Int16TestClass ().Verify (Convert.ToInt16, testValues, expectedValues);
return 0;
} catch (MyEqualException) {
return 1;
}
return 2;
}
}
static int test_0_out_int16 () {
return Int16TestClass.execute ();
}
// Sign extension tests
// 0x55 == 85 == 01010101
// 0xAA == 170 == 10101010

View File

@ -381,16 +381,15 @@ mono_arch_get_gsharedvt_call_info (gpointer addr, MonoMethodSignature *normal_si
if (arg_marshal == GSHAREDVT_ARG_BYREF_TO_BYVAL && dst_info->byte_arg_size) {
/* Have to load less than 4 bytes */
// FIXME: Signed types
switch (dst_info->byte_arg_size) {
case 1:
arg_marshal = GSHAREDVT_ARG_BYREF_TO_BYVAL_U1;
arg_marshal = dst_info->is_signed ? GSHAREDVT_ARG_BYREF_TO_BYVAL_I1 : GSHAREDVT_ARG_BYREF_TO_BYVAL_U1;
break;
case 2:
arg_marshal = GSHAREDVT_ARG_BYREF_TO_BYVAL_U2;
arg_marshal = dst_info->is_signed ? GSHAREDVT_ARG_BYREF_TO_BYVAL_I2 : GSHAREDVT_ARG_BYREF_TO_BYVAL_U2;
break;
default:
arg_marshal = GSHAREDVT_ARG_BYREF_TO_BYVAL_U4;
arg_marshal = dst_info->is_signed ? GSHAREDVT_ARG_BYREF_TO_BYVAL_I4 : GSHAREDVT_ARG_BYREF_TO_BYVAL_U4;
break;
}
}

View File

@ -18,8 +18,11 @@ typedef enum {
GSHAREDVT_ARG_NONE = 0,
GSHAREDVT_ARG_BYVAL_TO_BYREF,
GSHAREDVT_ARG_BYREF_TO_BYVAL,
GSHAREDVT_ARG_BYREF_TO_BYVAL_I1,
GSHAREDVT_ARG_BYREF_TO_BYVAL_U1,
GSHAREDVT_ARG_BYREF_TO_BYVAL_I2,
GSHAREDVT_ARG_BYREF_TO_BYVAL_U2,
GSHAREDVT_ARG_BYREF_TO_BYVAL_I4,
GSHAREDVT_ARG_BYREF_TO_BYVAL_U4
} GSharedVtArgMarshal;

View File

@ -1 +1 @@
b5111cc863dc705954e6bd450b390ee3a3f71311
f2bf4522ab9471ca3175392b6dc2339c2c2dffe0

View File

@ -323,6 +323,7 @@ typedef struct {
// Size in bytes for small arguments
int byte_arg_size;
guint8 pass_empty_struct : 1; // Set in scenarios when empty structs needs to be represented as argument.
guint8 is_signed : 1;
} ArgInfo;
struct CallInfo {

View File

@ -221,13 +221,12 @@ mono_arch_get_gsharedvt_call_info (gpointer addr, MonoMethodSignature *normal_si
if (ainfo2->storage == RegTypeGeneral && ainfo2->size != 0 && ainfo2->size != sizeof (target_mgreg_t)) {
/* Have to load less than 4 bytes */
// FIXME: Signed types
switch (ainfo2->size) {
case 1:
arg_marshal = GSHAREDVT_ARG_BYREF_TO_BYVAL_U1;
arg_marshal = ainfo2->is_signed ? GSHAREDVT_ARG_BYREF_TO_BYVAL_I1 : GSHAREDVT_ARG_BYREF_TO_BYVAL_U1;
break;
case 2:
arg_marshal = GSHAREDVT_ARG_BYREF_TO_BYVAL_U2;
arg_marshal = ainfo2->is_signed ? GSHAREDVT_ARG_BYREF_TO_BYVAL_I2 : GSHAREDVT_ARG_BYREF_TO_BYVAL_U2;
break;
default:
g_assert_not_reached ();

View File

@ -1 +1 @@
f3158f910f60c882089a191f830393eda059b9e2
2fc54b2ee9a7c9c5bf2d06287bcbb9b0609d3a13

View File

@ -211,6 +211,7 @@ typedef struct {
/* RegTypeStructByVal */
gint32 struct_size, align;
guint8 size : 4; /* 1, 2, 4, 8, or regs used by RegTypeStructByVal */
guint8 is_signed : 1;
} ArgInfo;
struct CallInfo {

View File

@ -88,6 +88,13 @@ mono_amd64_start_gsharedvt_call (GSharedVtCallInfo *info, gpointer *caller, gpoi
DEBUG_AMD64_GSHAREDVT_PRINT ("[%d] <- [%d] (%d words) (%p) <- (%p)\n", dest_reg, source_reg, slot_count, &callee [dest_reg], &caller [source_reg]);
break;
}
case GSHAREDVT_ARG_BYREF_TO_BYVAL_I1: {
gint8 *addr = (gint8*)caller [source_reg];
callee [dest_reg] = (gpointer)(host_mgreg_t)*addr;
DEBUG_AMD64_GSHAREDVT_PRINT ("[%d] <- (i1) [%d] (%p) <- (%p)\n", dest_reg, source_reg, &callee [dest_reg], &caller [source_reg]);
break;
}
case GSHAREDVT_ARG_BYREF_TO_BYVAL_U1: {
guint8 *addr = (guint8*)caller [source_reg];
@ -95,6 +102,13 @@ mono_amd64_start_gsharedvt_call (GSharedVtCallInfo *info, gpointer *caller, gpoi
DEBUG_AMD64_GSHAREDVT_PRINT ("[%d] <- (u1) [%d] (%p) <- (%p)\n", dest_reg, source_reg, &callee [dest_reg], &caller [source_reg]);
break;
}
case GSHAREDVT_ARG_BYREF_TO_BYVAL_I2: {
gint16 *addr = (gint16*)caller [source_reg];
callee [dest_reg] = (gpointer)(host_mgreg_t)*addr;
DEBUG_AMD64_GSHAREDVT_PRINT ("[%d] <- (i2) [%d] (%p) <- (%p)\n", dest_reg, source_reg, &callee [dest_reg], &caller [source_reg]);
break;
}
case GSHAREDVT_ARG_BYREF_TO_BYVAL_U2: {
guint16 *addr = (guint16*)caller [source_reg];
@ -102,6 +116,13 @@ mono_amd64_start_gsharedvt_call (GSharedVtCallInfo *info, gpointer *caller, gpoi
DEBUG_AMD64_GSHAREDVT_PRINT ("[%d] <- (u2) [%d] (%p) <- (%p)\n", dest_reg, source_reg, &callee [dest_reg], &caller [source_reg]);
break;
}
case GSHAREDVT_ARG_BYREF_TO_BYVAL_I4: {
gint32 *addr = (gint32*)caller [source_reg];
callee [dest_reg] = (gpointer)(host_mgreg_t)*addr;
DEBUG_AMD64_GSHAREDVT_PRINT ("[%d] <- (i4) [%d] (%p) <- (%p)\n", dest_reg, source_reg, &callee [dest_reg], &caller [source_reg]);
break;
}
case GSHAREDVT_ARG_BYREF_TO_BYVAL_U4: {
guint32 *addr = (guint32*)caller [source_reg];

View File

@ -1 +1 @@
#define FULL_VERSION "explicit/7581fff"
#define FULL_VERSION "explicit/8c035c2"

View File

@ -1491,10 +1491,10 @@ distclean-generic:
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
@CROSS_COMPILE_TRUE@test-local:
@HOST_WIN32_TRUE@test-local:
@CROSS_COMPILE_TRUE@clean-local:
@HOST_WIN32_TRUE@clean-local:
@CROSS_COMPILE_TRUE@test-local:
@HOST_WIN32_TRUE@test-local:
clean: clean-am
clean-am: clean-checkPROGRAMS clean-generic clean-libtool clean-local \

Binary file not shown.

View File

@ -1 +1 @@
e97248f0d2da00ee0e4e76f5c13c444bf5146f0b
4356cd34db4c9beec08729bb6dabb76d66b30b7c

Binary file not shown.

View File

@ -1 +1 @@
f5935483d25cc9efe988e26419f48272f8f8700e
aba36ce92f298630cc6680fb889864fbdae31e4c

Binary file not shown.

View File

@ -1 +1 @@
60713e14e0a055bba8193c2ee270b74eaa1136b2
9b903c125453e1e5688f19c12a2fde40d83f26d2

View File

@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: mono 6.4.0.154\n"
"Project-Id-Version: mono 6.4.0.159\n"
"Report-Msgid-Bugs-To: http://www.mono-project.com/Bugs\n"
"POT-Creation-Date: 2019-08-07 08:04+0000\n"
"POT-Creation-Date: 2019-08-08 08:09+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

Binary file not shown.

View File

@ -1 +1 @@
748462af01fc94c30307d52471ceaa1c244915fe
759be2ac8f3ee13aaff8aa56075019dd9b6d91fd