From ab73b8c41cf3e5d4a6e93fd4e4d4141a9d1011cc Mon Sep 17 00:00:00 2001
From: "Xamarin Public Jenkins (auto-signing)" <releng@xamarin.com>
Date: Sat, 11 May 2019 08:35:26 +0000
Subject: [PATCH] Imported Upstream version 6.0.0.234

Former-commit-id: c12f532a867f9065b54d6dd3e294564004c9eda5
---
 configure.REMOVED.git-id                      |   2 +-
 configure.ac.REMOVED.git-id                   |   2 +-
 mcs/build/common/Consts.cs                    |   2 +-
 .../Mono.Security.dll.REMOVED.git-id          |   2 +-
 .../System.Configuration.dll.REMOVED.git-id   |   2 +-
 .../System.Core.dll.REMOVED.git-id            |   2 +-
 .../System.IO.Compression.dll                 | Bin 99328 -> 99328 bytes
 .../System.Numerics.dll.REMOVED.git-id        |   2 +-
 .../System.Xml.dll.REMOVED.git-id             |   2 +-
 .../mcs.exe.REMOVED.git-id                    |   2 +-
 .../mscorlib.dll.REMOVED.git-id               |   2 +-
 .../Mono.Security.dll.REMOVED.git-id          |   2 +-
 .../System.Configuration.dll.REMOVED.git-id   |   2 +-
 .../System.Core.dll.REMOVED.git-id            |   2 +-
 .../System.IO.Compression.dll                 | Bin 99328 -> 99328 bytes
 .../System.Numerics.dll.REMOVED.git-id        |   2 +-
 .../System.Xml.dll.REMOVED.git-id             |   2 +-
 .../mcs.exe.REMOVED.git-id                    |   2 +-
 .../mscorlib.dll.REMOVED.git-id               |   2 +-
 .../Mono.Security.dll.REMOVED.git-id          |   2 +-
 .../System.Configuration.dll.REMOVED.git-id   |   2 +-
 .../System.Core.dll.REMOVED.git-id            |   2 +-
 .../System.IO.Compression.dll                 | Bin 99328 -> 99328 bytes
 .../System.Numerics.dll.REMOVED.git-id        |   2 +-
 .../System.Xml.dll.REMOVED.git-id             |   2 +-
 .../mcs.exe.REMOVED.git-id                    |   2 +-
 .../mscorlib.dll.REMOVED.git-id               |   2 +-
 .../Mono.Security.dll.REMOVED.git-id          |   2 +-
 .../System.Configuration.dll.REMOVED.git-id   |   2 +-
 .../System.Core.dll.REMOVED.git-id            |   2 +-
 .../System.IO.Compression.dll                 | Bin 99328 -> 99328 bytes
 .../System.Numerics.dll.REMOVED.git-id        |   2 +-
 .../System.Xml.dll.REMOVED.git-id             |   2 +-
 .../mcs.exe.REMOVED.git-id                    |   2 +-
 .../mscorlib.dll.REMOVED.git-id               |   2 +-
 mono/metadata/appdomain.c                     |   2 +-
 mono/metadata/custom-attrs.c                  |   4 +-
 mono/metadata/exception.c                     |   6 +-
 mono/metadata/marshal.c.REMOVED.git-id        |   2 +-
 mono/metadata/object.c.REMOVED.git-id         |   2 +-
 mono/metadata/reflection.c                    |   2 +-
 mono/metadata/threads-types.h                 |   3 -
 mono/metadata/threads.c.REMOVED.git-id        |   2 +-
 mono/metadata/w32mutex-unix.c                 |  65 ++++++++----------
 mono/mini/mini-arm64.h                        |   2 +-
 mono/mini/version.h                           |   2 +-
 mono/sgen/sgen-gray.c                         |   2 +
 mono/unit-tests/Makefile.in                   |   4 +-
 msvc/Makefile.in                              |   2 +-
 po/mcs/de.gmo                                 | Bin 5406 -> 5406 bytes
 po/mcs/de.po.REMOVED.git-id                   |   2 +-
 po/mcs/es.gmo                                 | Bin 16329 -> 16329 bytes
 po/mcs/es.po.REMOVED.git-id                   |   2 +-
 po/mcs/ja.gmo                                 | Bin 20863 -> 20863 bytes
 po/mcs/ja.po.REMOVED.git-id                   |   2 +-
 po/mcs/mcs.pot                                |   4 +-
 po/mcs/pt_BR.gmo                              | Bin 72806 -> 72806 bytes
 po/mcs/pt_BR.po.REMOVED.git-id                |   2 +-
 58 files changed, 83 insertions(+), 91 deletions(-)

diff --git a/configure.REMOVED.git-id b/configure.REMOVED.git-id
index 5adf6301bc..0c7012e879 100644
--- a/configure.REMOVED.git-id
+++ b/configure.REMOVED.git-id
@@ -1 +1 @@
-5c2286d69e2b1592a3bb7109af675eda2ab00fec
\ No newline at end of file
+cf0f469886c22efa3da036a015eba959d680b028
\ No newline at end of file
diff --git a/configure.ac.REMOVED.git-id b/configure.ac.REMOVED.git-id
index 8fadeb04e6..2d302840b9 100644
--- a/configure.ac.REMOVED.git-id
+++ b/configure.ac.REMOVED.git-id
@@ -1 +1 @@
-c1d028a3fafdc23199df14719085e90004fa9dbb
\ No newline at end of file
+57ba5a1f47a79158b3fe41de28448392f5a62802
\ No newline at end of file
diff --git a/mcs/build/common/Consts.cs b/mcs/build/common/Consts.cs
index 67f2c19144..0001a9029d 100644
--- a/mcs/build/common/Consts.cs
+++ b/mcs/build/common/Consts.cs
@@ -41,7 +41,7 @@ static partial class Consts
 	// Use these assembly version constants to make code more maintainable.
 	//
 
-	public const string MonoVersion = "6.0.0.230";
+	public const string MonoVersion = "6.0.0.234";
 	public const string MonoCompany = "Mono development team";
 	public const string MonoProduct = "Mono Common Language Infrastructure";
 	public const string MonoCopyright = "(c) Various Mono authors";
diff --git a/mcs/class/lib/monolite-linux/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/Mono.Security.dll.REMOVED.git-id b/mcs/class/lib/monolite-linux/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/Mono.Security.dll.REMOVED.git-id
index 0415a3a517..44b8eb5fd7 100644
--- a/mcs/class/lib/monolite-linux/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/Mono.Security.dll.REMOVED.git-id
+++ b/mcs/class/lib/monolite-linux/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/Mono.Security.dll.REMOVED.git-id
@@ -1 +1 @@
-8960a37d653039a939985a12347c4314a5a51024
\ No newline at end of file
+c3ddffea573c68a5367904f75be49e7c850dbfe9
\ No newline at end of file
diff --git a/mcs/class/lib/monolite-linux/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Configuration.dll.REMOVED.git-id b/mcs/class/lib/monolite-linux/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Configuration.dll.REMOVED.git-id
index a11fbb3fa9..96139883c7 100644
--- a/mcs/class/lib/monolite-linux/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Configuration.dll.REMOVED.git-id
+++ b/mcs/class/lib/monolite-linux/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Configuration.dll.REMOVED.git-id
@@ -1 +1 @@
-1bebbd31ba08fbb639edab2308d54067ca5a76e1
\ No newline at end of file
+a965f8ea3e82683e45e5af1d756e2bf855b0c076
\ No newline at end of file
diff --git a/mcs/class/lib/monolite-linux/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Core.dll.REMOVED.git-id b/mcs/class/lib/monolite-linux/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Core.dll.REMOVED.git-id
index 0aba65be92..c33c56724d 100644
--- a/mcs/class/lib/monolite-linux/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Core.dll.REMOVED.git-id
+++ b/mcs/class/lib/monolite-linux/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Core.dll.REMOVED.git-id
@@ -1 +1 @@
-e37edc7ec583cebdbb28a44448621959aac3b6d1
\ No newline at end of file
+b4c7219040842f1efa9d4f3ca07835098e4908e1
\ No newline at end of file
diff --git a/mcs/class/lib/monolite-linux/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.IO.Compression.dll b/mcs/class/lib/monolite-linux/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.IO.Compression.dll
index 2eb932446ec464099e8d90e60fa4484c4ec81609..229bfa629fbfae8a74eba2b38d1f2fcb87d3f335 100644
GIT binary patch
delta 58
zcmV-A0LA}+hz5X&29SsZ<ol|DfsD0`0W=H{%Epjso<!S0rF&s%it$nXx6lj$u?7P)
Q04kTDeE}-Bt`h-La1F*7;s5{u

delta 58
zcmV-A0LA}+hz5X&29SsZ=&A9zfsD0`0W=H{H_1?d<2&O+igAK3Y2FKex6lj$u?7P$
Q04kTDeE}-Bt`h-LaOaa3WdHyG

diff --git a/mcs/class/lib/monolite-linux/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Numerics.dll.REMOVED.git-id b/mcs/class/lib/monolite-linux/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Numerics.dll.REMOVED.git-id
index e4f8f9aa86..042eabcd25 100644
--- a/mcs/class/lib/monolite-linux/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Numerics.dll.REMOVED.git-id
+++ b/mcs/class/lib/monolite-linux/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Numerics.dll.REMOVED.git-id
@@ -1 +1 @@
-f98f7a0854157e74434ed6ca591d3f44cc05dfef
\ No newline at end of file
+5308cb07794e3f18e3c3e7d5f60e51c2212061bf
\ No newline at end of file
diff --git a/mcs/class/lib/monolite-linux/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Xml.dll.REMOVED.git-id b/mcs/class/lib/monolite-linux/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Xml.dll.REMOVED.git-id
index 156a980ef5..c628de3e55 100644
--- a/mcs/class/lib/monolite-linux/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Xml.dll.REMOVED.git-id
+++ b/mcs/class/lib/monolite-linux/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Xml.dll.REMOVED.git-id
@@ -1 +1 @@
-a40550ce059f422b02b777ed7c4231143e9bc979
\ No newline at end of file
+fadca87bcc746555f0d60819dc0a35ddb4a33258
\ No newline at end of file
diff --git a/mcs/class/lib/monolite-linux/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/mcs.exe.REMOVED.git-id b/mcs/class/lib/monolite-linux/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/mcs.exe.REMOVED.git-id
index 8b4801ee9d..2c5ca99a79 100644
--- a/mcs/class/lib/monolite-linux/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/mcs.exe.REMOVED.git-id
+++ b/mcs/class/lib/monolite-linux/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/mcs.exe.REMOVED.git-id
@@ -1 +1 @@
-4d176567891a9d0c459c114f930995c889db0678
\ No newline at end of file
+27e1b8592dc3aa5bf8b80b4f459e067858c104ea
\ No newline at end of file
diff --git a/mcs/class/lib/monolite-linux/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/mscorlib.dll.REMOVED.git-id b/mcs/class/lib/monolite-linux/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/mscorlib.dll.REMOVED.git-id
index 35f5d6ad79..2492eb49ad 100644
--- a/mcs/class/lib/monolite-linux/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/mscorlib.dll.REMOVED.git-id
+++ b/mcs/class/lib/monolite-linux/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/mscorlib.dll.REMOVED.git-id
@@ -1 +1 @@
-bfcd14f430932203f7ef13fb87df53c5d05b439e
\ No newline at end of file
+1e8c70edb002e83750d9ed9c7140e301e8df391e
\ No newline at end of file
diff --git a/mcs/class/lib/monolite-macos/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/Mono.Security.dll.REMOVED.git-id b/mcs/class/lib/monolite-macos/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/Mono.Security.dll.REMOVED.git-id
index 0415a3a517..44b8eb5fd7 100644
--- a/mcs/class/lib/monolite-macos/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/Mono.Security.dll.REMOVED.git-id
+++ b/mcs/class/lib/monolite-macos/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/Mono.Security.dll.REMOVED.git-id
@@ -1 +1 @@
-8960a37d653039a939985a12347c4314a5a51024
\ No newline at end of file
+c3ddffea573c68a5367904f75be49e7c850dbfe9
\ No newline at end of file
diff --git a/mcs/class/lib/monolite-macos/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Configuration.dll.REMOVED.git-id b/mcs/class/lib/monolite-macos/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Configuration.dll.REMOVED.git-id
index a11fbb3fa9..96139883c7 100644
--- a/mcs/class/lib/monolite-macos/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Configuration.dll.REMOVED.git-id
+++ b/mcs/class/lib/monolite-macos/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Configuration.dll.REMOVED.git-id
@@ -1 +1 @@
-1bebbd31ba08fbb639edab2308d54067ca5a76e1
\ No newline at end of file
+a965f8ea3e82683e45e5af1d756e2bf855b0c076
\ No newline at end of file
diff --git a/mcs/class/lib/monolite-macos/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Core.dll.REMOVED.git-id b/mcs/class/lib/monolite-macos/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Core.dll.REMOVED.git-id
index 0aba65be92..c33c56724d 100644
--- a/mcs/class/lib/monolite-macos/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Core.dll.REMOVED.git-id
+++ b/mcs/class/lib/monolite-macos/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Core.dll.REMOVED.git-id
@@ -1 +1 @@
-e37edc7ec583cebdbb28a44448621959aac3b6d1
\ No newline at end of file
+b4c7219040842f1efa9d4f3ca07835098e4908e1
\ No newline at end of file
diff --git a/mcs/class/lib/monolite-macos/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.IO.Compression.dll b/mcs/class/lib/monolite-macos/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.IO.Compression.dll
index 2eb932446ec464099e8d90e60fa4484c4ec81609..229bfa629fbfae8a74eba2b38d1f2fcb87d3f335 100644
GIT binary patch
delta 58
zcmV-A0LA}+hz5X&29SsZ<ol|DfsD0`0W=H{%Epjso<!S0rF&s%it$nXx6lj$u?7P)
Q04kTDeE}-Bt`h-La1F*7;s5{u

delta 58
zcmV-A0LA}+hz5X&29SsZ=&A9zfsD0`0W=H{H_1?d<2&O+igAK3Y2FKex6lj$u?7P$
Q04kTDeE}-Bt`h-LaOaa3WdHyG

diff --git a/mcs/class/lib/monolite-macos/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Numerics.dll.REMOVED.git-id b/mcs/class/lib/monolite-macos/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Numerics.dll.REMOVED.git-id
index e4f8f9aa86..042eabcd25 100644
--- a/mcs/class/lib/monolite-macos/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Numerics.dll.REMOVED.git-id
+++ b/mcs/class/lib/monolite-macos/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Numerics.dll.REMOVED.git-id
@@ -1 +1 @@
-f98f7a0854157e74434ed6ca591d3f44cc05dfef
\ No newline at end of file
+5308cb07794e3f18e3c3e7d5f60e51c2212061bf
\ No newline at end of file
diff --git a/mcs/class/lib/monolite-macos/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Xml.dll.REMOVED.git-id b/mcs/class/lib/monolite-macos/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Xml.dll.REMOVED.git-id
index 156a980ef5..c628de3e55 100644
--- a/mcs/class/lib/monolite-macos/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Xml.dll.REMOVED.git-id
+++ b/mcs/class/lib/monolite-macos/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Xml.dll.REMOVED.git-id
@@ -1 +1 @@
-a40550ce059f422b02b777ed7c4231143e9bc979
\ No newline at end of file
+fadca87bcc746555f0d60819dc0a35ddb4a33258
\ No newline at end of file
diff --git a/mcs/class/lib/monolite-macos/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/mcs.exe.REMOVED.git-id b/mcs/class/lib/monolite-macos/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/mcs.exe.REMOVED.git-id
index 8b4801ee9d..2c5ca99a79 100644
--- a/mcs/class/lib/monolite-macos/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/mcs.exe.REMOVED.git-id
+++ b/mcs/class/lib/monolite-macos/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/mcs.exe.REMOVED.git-id
@@ -1 +1 @@
-4d176567891a9d0c459c114f930995c889db0678
\ No newline at end of file
+27e1b8592dc3aa5bf8b80b4f459e067858c104ea
\ No newline at end of file
diff --git a/mcs/class/lib/monolite-macos/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/mscorlib.dll.REMOVED.git-id b/mcs/class/lib/monolite-macos/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/mscorlib.dll.REMOVED.git-id
index 35f5d6ad79..2492eb49ad 100644
--- a/mcs/class/lib/monolite-macos/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/mscorlib.dll.REMOVED.git-id
+++ b/mcs/class/lib/monolite-macos/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/mscorlib.dll.REMOVED.git-id
@@ -1 +1 @@
-bfcd14f430932203f7ef13fb87df53c5d05b439e
\ No newline at end of file
+1e8c70edb002e83750d9ed9c7140e301e8df391e
\ No newline at end of file
diff --git a/mcs/class/lib/monolite-unix/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/Mono.Security.dll.REMOVED.git-id b/mcs/class/lib/monolite-unix/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/Mono.Security.dll.REMOVED.git-id
index 0415a3a517..44b8eb5fd7 100644
--- a/mcs/class/lib/monolite-unix/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/Mono.Security.dll.REMOVED.git-id
+++ b/mcs/class/lib/monolite-unix/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/Mono.Security.dll.REMOVED.git-id
@@ -1 +1 @@
-8960a37d653039a939985a12347c4314a5a51024
\ No newline at end of file
+c3ddffea573c68a5367904f75be49e7c850dbfe9
\ No newline at end of file
diff --git a/mcs/class/lib/monolite-unix/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Configuration.dll.REMOVED.git-id b/mcs/class/lib/monolite-unix/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Configuration.dll.REMOVED.git-id
index a11fbb3fa9..96139883c7 100644
--- a/mcs/class/lib/monolite-unix/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Configuration.dll.REMOVED.git-id
+++ b/mcs/class/lib/monolite-unix/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Configuration.dll.REMOVED.git-id
@@ -1 +1 @@
-1bebbd31ba08fbb639edab2308d54067ca5a76e1
\ No newline at end of file
+a965f8ea3e82683e45e5af1d756e2bf855b0c076
\ No newline at end of file
diff --git a/mcs/class/lib/monolite-unix/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Core.dll.REMOVED.git-id b/mcs/class/lib/monolite-unix/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Core.dll.REMOVED.git-id
index 0aba65be92..c33c56724d 100644
--- a/mcs/class/lib/monolite-unix/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Core.dll.REMOVED.git-id
+++ b/mcs/class/lib/monolite-unix/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Core.dll.REMOVED.git-id
@@ -1 +1 @@
-e37edc7ec583cebdbb28a44448621959aac3b6d1
\ No newline at end of file
+b4c7219040842f1efa9d4f3ca07835098e4908e1
\ No newline at end of file
diff --git a/mcs/class/lib/monolite-unix/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.IO.Compression.dll b/mcs/class/lib/monolite-unix/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.IO.Compression.dll
index 2eb932446ec464099e8d90e60fa4484c4ec81609..229bfa629fbfae8a74eba2b38d1f2fcb87d3f335 100644
GIT binary patch
delta 58
zcmV-A0LA}+hz5X&29SsZ<ol|DfsD0`0W=H{%Epjso<!S0rF&s%it$nXx6lj$u?7P)
Q04kTDeE}-Bt`h-La1F*7;s5{u

delta 58
zcmV-A0LA}+hz5X&29SsZ=&A9zfsD0`0W=H{H_1?d<2&O+igAK3Y2FKex6lj$u?7P$
Q04kTDeE}-Bt`h-LaOaa3WdHyG

diff --git a/mcs/class/lib/monolite-unix/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Numerics.dll.REMOVED.git-id b/mcs/class/lib/monolite-unix/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Numerics.dll.REMOVED.git-id
index e4f8f9aa86..042eabcd25 100644
--- a/mcs/class/lib/monolite-unix/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Numerics.dll.REMOVED.git-id
+++ b/mcs/class/lib/monolite-unix/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Numerics.dll.REMOVED.git-id
@@ -1 +1 @@
-f98f7a0854157e74434ed6ca591d3f44cc05dfef
\ No newline at end of file
+5308cb07794e3f18e3c3e7d5f60e51c2212061bf
\ No newline at end of file
diff --git a/mcs/class/lib/monolite-unix/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Xml.dll.REMOVED.git-id b/mcs/class/lib/monolite-unix/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Xml.dll.REMOVED.git-id
index 156a980ef5..c628de3e55 100644
--- a/mcs/class/lib/monolite-unix/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Xml.dll.REMOVED.git-id
+++ b/mcs/class/lib/monolite-unix/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Xml.dll.REMOVED.git-id
@@ -1 +1 @@
-a40550ce059f422b02b777ed7c4231143e9bc979
\ No newline at end of file
+fadca87bcc746555f0d60819dc0a35ddb4a33258
\ No newline at end of file
diff --git a/mcs/class/lib/monolite-unix/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/mcs.exe.REMOVED.git-id b/mcs/class/lib/monolite-unix/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/mcs.exe.REMOVED.git-id
index 8b4801ee9d..2c5ca99a79 100644
--- a/mcs/class/lib/monolite-unix/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/mcs.exe.REMOVED.git-id
+++ b/mcs/class/lib/monolite-unix/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/mcs.exe.REMOVED.git-id
@@ -1 +1 @@
-4d176567891a9d0c459c114f930995c889db0678
\ No newline at end of file
+27e1b8592dc3aa5bf8b80b4f459e067858c104ea
\ No newline at end of file
diff --git a/mcs/class/lib/monolite-unix/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/mscorlib.dll.REMOVED.git-id b/mcs/class/lib/monolite-unix/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/mscorlib.dll.REMOVED.git-id
index 35f5d6ad79..2492eb49ad 100644
--- a/mcs/class/lib/monolite-unix/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/mscorlib.dll.REMOVED.git-id
+++ b/mcs/class/lib/monolite-unix/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/mscorlib.dll.REMOVED.git-id
@@ -1 +1 @@
-bfcd14f430932203f7ef13fb87df53c5d05b439e
\ No newline at end of file
+1e8c70edb002e83750d9ed9c7140e301e8df391e
\ No newline at end of file
diff --git a/mcs/class/lib/monolite-win32/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/Mono.Security.dll.REMOVED.git-id b/mcs/class/lib/monolite-win32/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/Mono.Security.dll.REMOVED.git-id
index 0415a3a517..44b8eb5fd7 100644
--- a/mcs/class/lib/monolite-win32/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/Mono.Security.dll.REMOVED.git-id
+++ b/mcs/class/lib/monolite-win32/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/Mono.Security.dll.REMOVED.git-id
@@ -1 +1 @@
-8960a37d653039a939985a12347c4314a5a51024
\ No newline at end of file
+c3ddffea573c68a5367904f75be49e7c850dbfe9
\ No newline at end of file
diff --git a/mcs/class/lib/monolite-win32/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Configuration.dll.REMOVED.git-id b/mcs/class/lib/monolite-win32/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Configuration.dll.REMOVED.git-id
index a11fbb3fa9..96139883c7 100644
--- a/mcs/class/lib/monolite-win32/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Configuration.dll.REMOVED.git-id
+++ b/mcs/class/lib/monolite-win32/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Configuration.dll.REMOVED.git-id
@@ -1 +1 @@
-1bebbd31ba08fbb639edab2308d54067ca5a76e1
\ No newline at end of file
+a965f8ea3e82683e45e5af1d756e2bf855b0c076
\ No newline at end of file
diff --git a/mcs/class/lib/monolite-win32/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Core.dll.REMOVED.git-id b/mcs/class/lib/monolite-win32/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Core.dll.REMOVED.git-id
index cc6c401467..b187c47f99 100644
--- a/mcs/class/lib/monolite-win32/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Core.dll.REMOVED.git-id
+++ b/mcs/class/lib/monolite-win32/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Core.dll.REMOVED.git-id
@@ -1 +1 @@
-48146a199e025221ce7fc4bfd2c0fd678030fbb7
\ No newline at end of file
+7dde979f443fe20879099e9af9fb2af2a46d6a10
\ No newline at end of file
diff --git a/mcs/class/lib/monolite-win32/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.IO.Compression.dll b/mcs/class/lib/monolite-win32/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.IO.Compression.dll
index 2eb932446ec464099e8d90e60fa4484c4ec81609..229bfa629fbfae8a74eba2b38d1f2fcb87d3f335 100644
GIT binary patch
delta 58
zcmV-A0LA}+hz5X&29SsZ<ol|DfsD0`0W=H{%Epjso<!S0rF&s%it$nXx6lj$u?7P)
Q04kTDeE}-Bt`h-La1F*7;s5{u

delta 58
zcmV-A0LA}+hz5X&29SsZ=&A9zfsD0`0W=H{H_1?d<2&O+igAK3Y2FKex6lj$u?7P$
Q04kTDeE}-Bt`h-LaOaa3WdHyG

diff --git a/mcs/class/lib/monolite-win32/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Numerics.dll.REMOVED.git-id b/mcs/class/lib/monolite-win32/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Numerics.dll.REMOVED.git-id
index e4f8f9aa86..042eabcd25 100644
--- a/mcs/class/lib/monolite-win32/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Numerics.dll.REMOVED.git-id
+++ b/mcs/class/lib/monolite-win32/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Numerics.dll.REMOVED.git-id
@@ -1 +1 @@
-f98f7a0854157e74434ed6ca591d3f44cc05dfef
\ No newline at end of file
+5308cb07794e3f18e3c3e7d5f60e51c2212061bf
\ No newline at end of file
diff --git a/mcs/class/lib/monolite-win32/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Xml.dll.REMOVED.git-id b/mcs/class/lib/monolite-win32/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Xml.dll.REMOVED.git-id
index 156a980ef5..c628de3e55 100644
--- a/mcs/class/lib/monolite-win32/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Xml.dll.REMOVED.git-id
+++ b/mcs/class/lib/monolite-win32/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/System.Xml.dll.REMOVED.git-id
@@ -1 +1 @@
-a40550ce059f422b02b777ed7c4231143e9bc979
\ No newline at end of file
+fadca87bcc746555f0d60819dc0a35ddb4a33258
\ No newline at end of file
diff --git a/mcs/class/lib/monolite-win32/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/mcs.exe.REMOVED.git-id b/mcs/class/lib/monolite-win32/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/mcs.exe.REMOVED.git-id
index 8b4801ee9d..2c5ca99a79 100644
--- a/mcs/class/lib/monolite-win32/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/mcs.exe.REMOVED.git-id
+++ b/mcs/class/lib/monolite-win32/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/mcs.exe.REMOVED.git-id
@@ -1 +1 @@
-4d176567891a9d0c459c114f930995c889db0678
\ No newline at end of file
+27e1b8592dc3aa5bf8b80b4f459e067858c104ea
\ No newline at end of file
diff --git a/mcs/class/lib/monolite-win32/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/mscorlib.dll.REMOVED.git-id b/mcs/class/lib/monolite-win32/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/mscorlib.dll.REMOVED.git-id
index 6e319b4fb2..a0e9b97433 100644
--- a/mcs/class/lib/monolite-win32/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/mscorlib.dll.REMOVED.git-id
+++ b/mcs/class/lib/monolite-win32/9032116E-BB4E-4ED5-9C71-9E5E0B0230CA/mscorlib.dll.REMOVED.git-id
@@ -1 +1 @@
-174dfbf25db5e6b10b5fd5f1b49bca573c82c754
\ No newline at end of file
+ad3d9efc7c40a085ab2e3b6e6cc30c83430b99c6
\ No newline at end of file
diff --git a/mono/metadata/appdomain.c b/mono/metadata/appdomain.c
index d3467bef69..305defc20b 100644
--- a/mono/metadata/appdomain.c
+++ b/mono/metadata/appdomain.c
@@ -1458,7 +1458,7 @@ mono_domain_fire_assembly_load (MonoAssembly *assembly, gpointer user_data)
 
 	void *params [1];
 	params [0] = MONO_HANDLE_RAW (reflection_assembly);
-	mono_runtime_invoke_handle (assembly_load_method, appdomain, params, error);
+	mono_runtime_invoke_handle_void (assembly_load_method, appdomain, params, error);
 leave:
 	mono_error_cleanup (error);
 	HANDLE_FUNCTION_RETURN ();
diff --git a/mono/metadata/custom-attrs.c b/mono/metadata/custom-attrs.c
index 87632d602f..35504b3c8e 100644
--- a/mono/metadata/custom-attrs.c
+++ b/mono/metadata/custom-attrs.c
@@ -856,7 +856,7 @@ create_custom_attr (MonoImage *image, MonoMethod *method, const guchar *data, gu
 		attr = mono_object_new_handle (mono_domain_get (), method->klass, error);
 		goto_if_nok (error, fail);
 
-		mono_runtime_invoke_handle (method, attr, NULL, error);
+		mono_runtime_invoke_handle_void (method, attr, NULL, error);
 		goto_if_nok (error, fail);
 
 		goto exit;
@@ -1456,7 +1456,7 @@ create_custom_attr_data (MonoImage *image, MonoCustomAttrEntry *cattr, MonoError
 	params [2] = &cattr->data;
 	params [3] = &cattr->data_size;
 
-	mono_runtime_invoke_handle (ctor, attr, params, error);
+	mono_runtime_invoke_handle_void (ctor, attr, params, error);
 	goto fail;
 result_null:
 	attr = MONO_HANDLE_CAST (MonoObject, mono_new_null ());
diff --git a/mono/metadata/exception.c b/mono/metadata/exception.c
index f1bbda88e7..659314874a 100644
--- a/mono/metadata/exception.c
+++ b/mono/metadata/exception.c
@@ -202,7 +202,7 @@ create_exception_two_strings (MonoClass *klass, MonoStringHandle a1, MonoStringH
 
 	gpointer args [ ] = { MONO_HANDLE_RAW (a1), MONO_HANDLE_RAW (a2) };
 
-	mono_runtime_invoke_handle (method, o, args, error);
+	mono_runtime_invoke_handle_void (method, o, args, error);
 	if (!is_ok (error))
 		o = mono_new_null ();
 
@@ -848,7 +848,7 @@ mono_get_exception_type_initialization_handle (const gchar *type_name, MonoExcep
 	MonoObjectHandle exc = mono_object_new_handle (domain, klass, error);
 	mono_error_assert_ok (error);
 
-	mono_runtime_invoke_handle (method, exc, args, error);
+	mono_runtime_invoke_handle_void (method, exc, args, error);
 	goto_if_nok (error, return_null);
 	goto exit;
 return_null:
@@ -1092,7 +1092,7 @@ mono_get_exception_runtime_wrapped_handle (MonoObjectHandle wrapped_exception, M
 
 	gpointer args [ ] = { MONO_HANDLE_RAW (wrapped_exception) };
 
-	mono_runtime_invoke_handle (method, o, args, error);
+	mono_runtime_invoke_handle_void (method, o, args, error);
 	goto_if_nok (error, return_null);
 	goto exit;
 return_null:
diff --git a/mono/metadata/marshal.c.REMOVED.git-id b/mono/metadata/marshal.c.REMOVED.git-id
index 557573c068..d9e276dfbb 100644
--- a/mono/metadata/marshal.c.REMOVED.git-id
+++ b/mono/metadata/marshal.c.REMOVED.git-id
@@ -1 +1 @@
-0ff1500294c48f387a0997e8d72d981f9548e7ae
\ No newline at end of file
+6076faecf1b410e864d6067f54dd8f697fb3333b
\ No newline at end of file
diff --git a/mono/metadata/object.c.REMOVED.git-id b/mono/metadata/object.c.REMOVED.git-id
index af47c1d21f..5a65ec0aab 100644
--- a/mono/metadata/object.c.REMOVED.git-id
+++ b/mono/metadata/object.c.REMOVED.git-id
@@ -1 +1 @@
-efc581af00f42fb46d61f4d094635bef1f7908de
\ No newline at end of file
+51ee0d424f215161f1eaa1df0b4e899b0d8d269b
\ No newline at end of file
diff --git a/mono/metadata/reflection.c b/mono/metadata/reflection.c
index 22ffd64437..cf0f85edf0 100644
--- a/mono/metadata/reflection.c
+++ b/mono/metadata/reflection.c
@@ -1310,7 +1310,7 @@ method_body_object_construct (MonoDomain *domain, MonoClass *unused_class, MonoM
 	params [3] = &init_locals_param;
 	params [4] = &sig_token_param;
 	params [5] = &max_stack_param;
-	mono_runtime_invoke_handle (ctor, MONO_HANDLE_CAST (MonoObject, ret), params, error);
+	mono_runtime_invoke_handle_void (ctor, MONO_HANDLE_CAST (MonoObject, ret), params, error);
 	mono_error_assert_ok (error);
 
 	return ret;
diff --git a/mono/metadata/threads-types.h b/mono/metadata/threads-types.h
index 576b11956c..f4d65a4ce5 100644
--- a/mono/metadata/threads-types.h
+++ b/mono/metadata/threads-types.h
@@ -433,9 +433,6 @@ mono_thread_internal_describe (MonoInternalThread *internal, GString *str);
 gboolean
 mono_thread_internal_is_current (MonoInternalThread *internal);
 
-gboolean
-mono_thread_internal_is_current_handle (MonoInternalThreadHandle internal);
-
 gboolean
 mono_threads_is_current_thread_in_protected_block (void);
 
diff --git a/mono/metadata/threads.c.REMOVED.git-id b/mono/metadata/threads.c.REMOVED.git-id
index cdcaefd9f9..2391825a12 100644
--- a/mono/metadata/threads.c.REMOVED.git-id
+++ b/mono/metadata/threads.c.REMOVED.git-id
@@ -1 +1 @@
-3f0dd8c6528dfba64860b6d65f9f51d5fd45df22
\ No newline at end of file
+6f5a08f73e135167470b565447164d792b75be19
\ No newline at end of file
diff --git a/mono/metadata/w32mutex-unix.c b/mono/metadata/w32mutex-unix.c
index 29bc860d68..54596415d9 100644
--- a/mono/metadata/w32mutex-unix.c
+++ b/mono/metadata/w32mutex-unix.c
@@ -37,27 +37,32 @@ static gpointer
 mono_w32mutex_open (const char* utf8_name, gint32 rights G_GNUC_UNUSED, gint32 *win32error);
 
 static void
-thread_own_mutex (MonoInternalThreadHandle internal, gpointer handle, MonoW32Handle *handle_data)
+thread_own_mutex (MonoInternalThread *internal, gpointer handle, MonoW32Handle *handle_data)
 {
+	// Thread and InternalThread are pinned/mature.
+	// Take advantage of that and do not use handles here.
+
 	/* if we are not on the current thread, there is a
 	 * race condition when allocating internal->owned_mutexes */
-	g_assert (mono_thread_internal_is_current_handle (internal));
+	g_assert (mono_thread_internal_is_current (internal));
 
-	if (!MONO_HANDLE_GETVAL (internal, owned_mutexes))
-		MONO_HANDLE_SETVAL(internal, owned_mutexes, GPtrArray*, g_ptr_array_new ());
+	if (!internal->owned_mutexes)
+		internal->owned_mutexes = g_ptr_array_new ();
 
-	g_ptr_array_add (MONO_HANDLE_GETVAL (internal, owned_mutexes), mono_w32handle_duplicate (handle_data));
+	g_ptr_array_add (internal->owned_mutexes, mono_w32handle_duplicate (handle_data));
 }
 
 static void
-thread_disown_mutex (MonoInternalThreadHandle internal, gpointer handle)
+thread_disown_mutex (MonoInternalThread *internal, gpointer handle)
 {
+	// Thread and InternalThread are pinned/mature.
+	// Take advantage of that and do not use handles here.
 	gboolean removed;
 
-	g_assert (mono_thread_internal_is_current_handle (internal));
+	g_assert (mono_thread_internal_is_current (internal));
 
-	g_assert (MONO_HANDLE_GETVAL (internal, owned_mutexes));
-	removed = g_ptr_array_remove (MONO_HANDLE_GETVAL (internal, owned_mutexes), handle);
+	g_assert (internal->owned_mutexes);
+	removed = g_ptr_array_remove (internal->owned_mutexes, handle);
 	g_assert (removed);
 
 	mono_w32handle_close (handle);
@@ -66,8 +71,6 @@ thread_disown_mutex (MonoInternalThreadHandle internal, gpointer handle)
 static void
 mutex_handle_signal (MonoW32Handle *handle_data)
 {
-	HANDLE_FUNCTION_ENTER ();
-
 	MonoW32HandleMutex *mutex_handle;
 	pthread_t tid;
 
@@ -89,7 +92,7 @@ mutex_handle_signal (MonoW32Handle *handle_data)
 		mutex_handle->recursion--;
 
 		if (mutex_handle->recursion == 0) {
-			thread_disown_mutex (mono_thread_internal_current_handle (), handle_data);
+			thread_disown_mutex (mono_thread_internal_current (), handle_data);
 
 			mono_trace (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER_MUTEX, "%s: unlocking %s handle %p, tid: %p recusion : %d",
 				__func__, mono_w32handle_get_typename (handle_data->type), handle_data, (gpointer) mutex_handle->tid, mutex_handle->recursion);
@@ -98,15 +101,11 @@ mutex_handle_signal (MonoW32Handle *handle_data)
 			mono_w32handle_set_signal_state (handle_data, TRUE, FALSE);
 		}
 	}
-
-	HANDLE_FUNCTION_RETURN ();
 }
 
 static gboolean
 mutex_handle_own (MonoW32Handle *handle_data, gboolean *abandoned)
 {
-	HANDLE_FUNCTION_ENTER ();
-
 	MonoW32HandleMutex *mutex_handle;
 
 	*abandoned = FALSE;
@@ -123,7 +122,7 @@ mutex_handle_own (MonoW32Handle *handle_data, gboolean *abandoned)
 		mutex_handle->tid = pthread_self ();
 		mutex_handle->recursion = 1;
 
-		thread_own_mutex (mono_thread_internal_current_handle (), handle_data, handle_data);
+		thread_own_mutex (mono_thread_internal_current (), handle_data, handle_data);
 	}
 
 	if (mutex_handle->abandoned) {
@@ -132,8 +131,7 @@ mutex_handle_own (MonoW32Handle *handle_data, gboolean *abandoned)
 	}
 
 	mono_w32handle_set_signal_state (handle_data, FALSE, FALSE);
-
-	HANDLE_FUNCTION_RETURN_VAL (TRUE);
+	return TRUE;
 }
 
 static gboolean
@@ -416,7 +414,7 @@ ves_icall_System_Threading_Mutex_ReleaseMutex_internal (gpointer handle)
 		mutex_handle->recursion--;
 
 		if (mutex_handle->recursion == 0) {
-			thread_disown_mutex (mono_thread_internal_current_handle (), handle);
+			thread_disown_mutex (mono_thread_internal_current (), handle);
 
 			mono_trace (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER_MUTEX, "%s: unlocking %s handle %p, tid: %p recusion : %d",
 				__func__, mono_w32handle_get_typename (handle_data->type), handle, (gpointer) mutex_handle->tid, mutex_handle->recursion);
@@ -475,24 +473,22 @@ mono_w32mutex_open (const char* utf8_name, gint32 rights G_GNUC_UNUSED, gint32 *
 }
 
 void
-mono_w32mutex_abandon (MonoInternalThread *internal_raw)
+mono_w32mutex_abandon (MonoInternalThread *internal)
 {
-	HANDLE_FUNCTION_ENTER ()
+	// Thread and InternalThread are pinned/mature.
+	// Take advantage of that and do not use handles here.
+	g_assert (mono_thread_internal_is_current (internal));
 
-	MONO_HANDLE_DCL (MonoInternalThread, internal);
+	if (!internal->owned_mutexes)
+		return;
 
-	g_assert (mono_thread_internal_is_current_handle (internal));
-
-	if (!MONO_HANDLE_GETVAL (internal, owned_mutexes))
-		goto exit;
-
-	while (MONO_HANDLE_GETVAL (internal, owned_mutexes)->len) {
+	while (internal->owned_mutexes->len) {
 		MonoW32Handle *handle_data;
 		MonoW32HandleMutex *mutex_handle;
 		MonoNativeThreadId tid;
 		gpointer handle;
 
-		handle = g_ptr_array_index (MONO_HANDLE_GETVAL (internal, owned_mutexes), 0);
+		handle = g_ptr_array_index (internal->owned_mutexes, 0);
 
 		if (!mono_w32handle_lookup_and_ref (handle, &handle_data))
 			g_error ("%s: unkown handle %p", __func__, handle);
@@ -505,7 +501,7 @@ mono_w32mutex_abandon (MonoInternalThread *internal_raw)
 		mono_trace (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER_MUTEX, "%s: abandoning %s handle %p",
 			__func__, mono_w32handle_get_typename (handle_data->type), handle);
 
-		tid = MONO_UINT_TO_NATIVE_THREAD_ID (MONO_HANDLE_GETVAL (internal, tid));
+		tid = MONO_UINT_TO_NATIVE_THREAD_ID (internal->tid);
 
 		if (!pthread_equal (mutex_handle->tid, tid))
 			g_error ("%s: trying to release mutex %p acquired by thread %p from thread %p",
@@ -528,11 +524,8 @@ mono_w32mutex_abandon (MonoInternalThread *internal_raw)
 		mono_w32handle_unref (handle_data);
 	}
 
-	g_ptr_array_free (MONO_HANDLE_GETVAL (internal, owned_mutexes), TRUE);
-	MONO_HANDLE_SETVAL(internal, owned_mutexes, GPtrArray*, NULL);
-
-exit:
-	HANDLE_FUNCTION_RETURN ();
+	g_ptr_array_free (internal->owned_mutexes, TRUE);
+	internal->owned_mutexes = NULL;
 }
 
 MonoW32HandleNamespace*
diff --git a/mono/mini/mini-arm64.h b/mono/mini/mini-arm64.h
index f35ef0fc72..38da1e4936 100644
--- a/mono/mini/mini-arm64.h
+++ b/mono/mini/mini-arm64.h
@@ -183,7 +183,7 @@ typedef struct {
 
 #endif
 
-#if defined(TARGET_IOS)
+#if defined(TARGET_IOS) || defined(TARGET_WATCHOS)
 #define MONO_ARCH_HAVE_UNWIND_BACKTRACE 1
 #endif
 
diff --git a/mono/mini/version.h b/mono/mini/version.h
index 266e53d238..3b420cd9c5 100644
--- a/mono/mini/version.h
+++ b/mono/mini/version.h
@@ -1 +1 @@
-#define FULL_VERSION "explicit/7361a4f"
+#define FULL_VERSION "explicit/77ddc3a"
diff --git a/mono/sgen/sgen-gray.c b/mono/sgen/sgen-gray.c
index 8192c19d8b..096f976c75 100644
--- a/mono/sgen/sgen-gray.c
+++ b/mono/sgen/sgen-gray.c
@@ -418,6 +418,8 @@ sgen_gray_object_queue_dispose (SgenGrayQueue *queue)
 	SGEN_ASSERT (0, !last_gray_queue_free_list, "Are we disposing two gray queues after another?");
 	last_gray_queue_free_list = queue->free_list;
 
+	mono_os_mutex_destroy (&queue->steal_mutex);
+
 	/* just to make sure */
 	memset (queue, 0, sizeof (SgenGrayQueue));
 }
diff --git a/mono/unit-tests/Makefile.in b/mono/unit-tests/Makefile.in
index 4dc46b1f38..fa36c48fae 100644
--- a/mono/unit-tests/Makefile.in
+++ b/mono/unit-tests/Makefile.in
@@ -1442,10 +1442,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 \
diff --git a/msvc/Makefile.in b/msvc/Makefile.in
index fdc1930e45..f5ae54dbec 100644
--- a/msvc/Makefile.in
+++ b/msvc/Makefile.in
@@ -515,8 +515,8 @@ 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."
-@ENABLE_MSVC_FALSE@install-exec-local:
 @ENABLE_MSVC_FALSE@clean-local:
+@ENABLE_MSVC_FALSE@install-exec-local:
 clean: clean-am
 
 clean-am: clean-generic clean-libtool clean-local mostlyclean-am
diff --git a/po/mcs/de.gmo b/po/mcs/de.gmo
index 0a8c2a8abb3c501f446c55b7b2a8f3b85fa9b1db..67adcf59612f57a7ff39ac0c0b2639c9e251ba95 100644
GIT binary patch
delta 20
bcmbQIHBW29Q!aKx1p^B!1M|&qxQw^}N^1so

delta 20
bcmbQIHBW29Q!aJ`1p^B!L&ME)xQw^}N<s#3

diff --git a/po/mcs/de.po.REMOVED.git-id b/po/mcs/de.po.REMOVED.git-id
index db8cfa9026..afc6054b48 100644
--- a/po/mcs/de.po.REMOVED.git-id
+++ b/po/mcs/de.po.REMOVED.git-id
@@ -1 +1 @@
-5433f25e97c078584a1666eb0ce05d91661fbd9a
\ No newline at end of file
+52734cb1a7d3cc4acf32d88f1c02eecd01e2a23a
\ No newline at end of file
diff --git a/po/mcs/es.gmo b/po/mcs/es.gmo
index 54f2e86a064fda80c6165c9223de11ca7e912413..c2adaf3d3ea3e1c26adf959e5afc1f4b43bad61f 100644
GIT binary patch
delta 20
bcmX?Ef3kjqo+7)Uf`NsVf%#@r#VK+CQHutw

delta 20
bcmX?Ef3kjqo+7(}f`NsVq2Xpz#VK+CQDO$B

diff --git a/po/mcs/es.po.REMOVED.git-id b/po/mcs/es.po.REMOVED.git-id
index d9e6cfc332..7fa4b2d044 100644
--- a/po/mcs/es.po.REMOVED.git-id
+++ b/po/mcs/es.po.REMOVED.git-id
@@ -1 +1 @@
-6140c7aae46302ae3bc4c2a7628ab4269cf152e6
\ No newline at end of file
+04b9bfe2d74b35bcf407c2990f72dee00de82cbb
\ No newline at end of file
diff --git a/po/mcs/ja.gmo b/po/mcs/ja.gmo
index 35bf0030e3ba0409a182f76baaa8558183a11f76..4f847822fced0bb6dee54c3cd3d77244dfd764f9 100644
GIT binary patch
delta 22
dcmeyri1Gg-#tj_m?1l;k7FGu4oB7oXv;bh;2M7QF

delta 22
dcmeyri1Gg-#tj_m>;?)37FLFaoB7oXv;bhV2Lb>9

diff --git a/po/mcs/ja.po.REMOVED.git-id b/po/mcs/ja.po.REMOVED.git-id
index beeaa786dc..415ad645f3 100644
--- a/po/mcs/ja.po.REMOVED.git-id
+++ b/po/mcs/ja.po.REMOVED.git-id
@@ -1 +1 @@
-2e21cfde8d1bd3330c552b9079d2ae5e550b8b30
\ No newline at end of file
+d33662e0f9f35141e6e0ccf685208a1152007d90
\ No newline at end of file
diff --git a/po/mcs/mcs.pot b/po/mcs/mcs.pot
index 43b60cde14..000578cce8 100644
--- a/po/mcs/mcs.pot
+++ b/po/mcs/mcs.pot
@@ -6,9 +6,9 @@
 #, fuzzy
 msgid ""
 msgstr ""
-"Project-Id-Version: mono 6.0.0.230\n"
+"Project-Id-Version: mono 6.0.0.234\n"
 "Report-Msgid-Bugs-To: http://www.mono-project.com/Bugs\n"
-"POT-Creation-Date: 2019-05-10 08:11+0000\n"
+"POT-Creation-Date: 2019-05-11 08:07+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"
diff --git a/po/mcs/pt_BR.gmo b/po/mcs/pt_BR.gmo
index f9ad2f1798b7f9408c82b36205016ea44287b2cd..ede47948c6c0615459e55bab065052b4525cd3c9 100644
GIT binary patch
delta 22
ecmaF1gXP%{mJM-J*$ov8EUXO7H>XZzYzF{s)Chh6

delta 22
ecmaF1gXP%{mJM-J*$os7EUXL-H>XZzYzF{ss|a`i

diff --git a/po/mcs/pt_BR.po.REMOVED.git-id b/po/mcs/pt_BR.po.REMOVED.git-id
index 4266aae518..f77c7da258 100644
--- a/po/mcs/pt_BR.po.REMOVED.git-id
+++ b/po/mcs/pt_BR.po.REMOVED.git-id
@@ -1 +1 @@
-1ff2bc910eb050e8b693283c718b164bf3ca86b9
\ No newline at end of file
+4cf25d472f3fec0ebdc4ec7fc35d14091202bb2b
\ No newline at end of file