summaryrefslogtreecommitdiff
path: root/tests/src
diff options
context:
space:
mode:
authorLubomir Litchev <LLITCHEV@users.noreply.github.com>2015-11-18 07:26:59 -0800
committerLubomir Litchev <LLITCHEV@users.noreply.github.com>2015-11-18 07:26:59 -0800
commitf4d9d184dfd9732fb131e9092e768ded162d816e (patch)
treeabc4c454f88b2e54938513a41862098a87b8c57f /tests/src
parent76942bb17c28084b0fdad8b6836fb433d9302789 (diff)
parent5ad2194ec9dc90f81d8e290d1e642bd0d3a2149e (diff)
downloadcoreclr-f4d9d184dfd9732fb131e9092e768ded162d816e.tar.gz
coreclr-f4d9d184dfd9732fb131e9092e768ded162d816e.tar.bz2
coreclr-f4d9d184dfd9732fb131e9092e768ded162d816e.zip
Merge pull request #2055 from LLITCHEV/SysVTests
Add the tests used to bring the System V struct passing/returning fun…
Diffstat (limited to 'tests/src')
-rw-r--r--tests/src/JIT/Methodical/structs/systemvbringup/CMakeLists.txt13
-rw-r--r--tests/src/JIT/Methodical/structs/systemvbringup/project.json10
-rw-r--r--tests/src/JIT/Methodical/structs/systemvbringup/project.lock.json2615
-rw-r--r--tests/src/JIT/Methodical/structs/systemvbringup/structinregs.cpp475
-rw-r--r--tests/src/JIT/Methodical/structs/systemvbringup/structinregs.csproj28
-rw-r--r--tests/src/JIT/Methodical/structs/systemvbringup/structinregs.def46
-rw-r--r--tests/src/JIT/Methodical/structs/systemvbringup/structpasstest.cs230
-rw-r--r--tests/src/JIT/Methodical/structs/systemvbringup/structpasstest1.cs372
-rw-r--r--tests/src/JIT/Methodical/structs/systemvbringup/structpinvoketests.cs1021
-rw-r--r--tests/src/JIT/Methodical/structs/systemvbringup/structrettest.cs155
10 files changed, 4965 insertions, 0 deletions
diff --git a/tests/src/JIT/Methodical/structs/systemvbringup/CMakeLists.txt b/tests/src/JIT/Methodical/structs/systemvbringup/CMakeLists.txt
new file mode 100644
index 0000000000..f4a3253b12
--- /dev/null
+++ b/tests/src/JIT/Methodical/structs/systemvbringup/CMakeLists.txt
@@ -0,0 +1,13 @@
+cmake_minimum_required(VERSION 2.6)
+project(jitstructtests)
+
+set(CMAKE_SHARED_LIBRARY_PREFIX "")
+
+set(SOURCES structinregs.cpp structinregs.def)
+add_library(jitstructtests_lib SHARED ${SOURCES})
+
+# add the install targets (this "installs" the native file on Windows systems)
+install(TARGETS jitstructtests_lib DESTINATION bin)
+
+# This "installs" the native file on System V systems
+set_target_properties(jitstructtests_lib PROPERTIES LIBRARY_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/structinregs)
diff --git a/tests/src/JIT/Methodical/structs/systemvbringup/project.json b/tests/src/JIT/Methodical/structs/systemvbringup/project.json
new file mode 100644
index 0000000000..f8f05683ef
--- /dev/null
+++ b/tests/src/JIT/Methodical/structs/systemvbringup/project.json
@@ -0,0 +1,10 @@
+{
+ "dependencies": {
+ "System.Runtime": "4.0.20-beta-23302",
+ "System.Runtime.InteropServices": "4.0.20-beta-23302",
+ "System.Console": "4.0.0-beta-23302",
+ },
+ "frameworks": {
+ "dnxcore50": {}
+ }
+}
diff --git a/tests/src/JIT/Methodical/structs/systemvbringup/project.lock.json b/tests/src/JIT/Methodical/structs/systemvbringup/project.lock.json
new file mode 100644
index 0000000000..24beeb67c4
--- /dev/null
+++ b/tests/src/JIT/Methodical/structs/systemvbringup/project.lock.json
@@ -0,0 +1,2615 @@
+{
+ "locked": true,
+ "version": -9996,
+ "targets": {
+ "DNXCore,Version=v5.0": {
+ "System.Console/4.0.0-beta-23302": {
+ "dependencies": {
+ "System.Runtime": "4.0.20",
+ "System.Runtime.InteropServices": "4.0.20",
+ "System.Resources.ResourceManager": "4.0.0",
+ "System.IO.FileSystem.Primitives": "4.0.0",
+ "System.IO": "4.0.10",
+ "System.Threading.Tasks": "4.0.10",
+ "System.Text.Encoding": "4.0.10",
+ "System.Threading": "4.0.10",
+ "System.Text.Encoding.Extensions": "4.0.10"
+ },
+ "compile": {
+ "ref/dotnet/System.Console.dll": {}
+ },
+ "runtime": {
+ "lib/DNXCore50/System.Console.dll": {}
+ }
+ },
+ "System.Globalization/4.0.0": {
+ "dependencies": {
+ "System.Runtime": "4.0.0"
+ },
+ "compile": {
+ "ref/dotnet/System.Globalization.dll": {}
+ }
+ },
+ "System.IO/4.0.10": {
+ "dependencies": {
+ "System.Runtime": "4.0.20",
+ "System.Text.Encoding": "4.0.0",
+ "System.Threading.Tasks": "4.0.0"
+ },
+ "compile": {
+ "ref/dotnet/System.IO.dll": {}
+ },
+ "runtime": {
+ "lib/DNXCore50/System.IO.dll": {}
+ }
+ },
+ "System.IO.FileSystem.Primitives/4.0.0": {
+ "dependencies": {
+ "System.Runtime": "4.0.20"
+ },
+ "compile": {
+ "ref/dotnet/System.IO.FileSystem.Primitives.dll": {}
+ },
+ "runtime": {
+ "lib/dotnet/System.IO.FileSystem.Primitives.dll": {}
+ }
+ },
+ "System.Private.Uri/4.0.0": {
+ "runtime": {
+ "lib/DNXCore50/System.Private.Uri.dll": {}
+ }
+ },
+ "System.Reflection/4.0.0": {
+ "dependencies": {
+ "System.IO": "4.0.0",
+ "System.Reflection.Primitives": "4.0.0",
+ "System.Runtime": "4.0.0"
+ },
+ "compile": {
+ "ref/dotnet/System.Reflection.dll": {}
+ }
+ },
+ "System.Reflection.Primitives/4.0.0": {
+ "dependencies": {
+ "System.Runtime": "4.0.0"
+ },
+ "compile": {
+ "ref/dotnet/System.Reflection.Primitives.dll": {}
+ },
+ "runtime": {
+ "lib/DNXCore50/System.Reflection.Primitives.dll": {}
+ }
+ },
+ "System.Resources.ResourceManager/4.0.0": {
+ "dependencies": {
+ "System.Runtime": "4.0.0",
+ "System.Reflection": "4.0.0",
+ "System.Globalization": "4.0.0"
+ },
+ "compile": {
+ "ref/dotnet/System.Resources.ResourceManager.dll": {}
+ },
+ "runtime": {
+ "lib/DNXCore50/System.Resources.ResourceManager.dll": {}
+ }
+ },
+ "System.Runtime/4.0.20": {
+ "dependencies": {
+ "System.Private.Uri": "4.0.0"
+ },
+ "compile": {
+ "ref/dotnet/System.Runtime.dll": {}
+ },
+ "runtime": {
+ "lib/DNXCore50/System.Runtime.dll": {}
+ }
+ },
+ "System.Runtime.Handles/4.0.0": {
+ "dependencies": {
+ "System.Runtime": "4.0.0"
+ },
+ "compile": {
+ "ref/dotnet/System.Runtime.Handles.dll": {}
+ },
+ "runtime": {
+ "lib/DNXCore50/System.Runtime.Handles.dll": {}
+ }
+ },
+ "System.Runtime.InteropServices/4.0.20": {
+ "dependencies": {
+ "System.Runtime": "4.0.0",
+ "System.Reflection": "4.0.0",
+ "System.Reflection.Primitives": "4.0.0",
+ "System.Runtime.Handles": "4.0.0"
+ },
+ "compile": {
+ "ref/dotnet/System.Runtime.InteropServices.dll": {}
+ },
+ "runtime": {
+ "lib/DNXCore50/System.Runtime.InteropServices.dll": {}
+ }
+ },
+ "System.Text.Encoding/4.0.10": {
+ "dependencies": {
+ "System.Runtime": "4.0.0"
+ },
+ "compile": {
+ "ref/dotnet/System.Text.Encoding.dll": {}
+ },
+ "runtime": {
+ "lib/DNXCore50/System.Text.Encoding.dll": {}
+ }
+ },
+ "System.Text.Encoding.Extensions/4.0.10": {
+ "dependencies": {
+ "System.Runtime": "4.0.0",
+ "System.Text.Encoding": "4.0.10"
+ },
+ "compile": {
+ "ref/dotnet/System.Text.Encoding.Extensions.dll": {}
+ },
+ "runtime": {
+ "lib/DNXCore50/System.Text.Encoding.Extensions.dll": {}
+ }
+ },
+ "System.Threading/4.0.10": {
+ "dependencies": {
+ "System.Runtime": "4.0.0",
+ "System.Threading.Tasks": "4.0.0"
+ },
+ "compile": {
+ "ref/dotnet/System.Threading.dll": {}
+ },
+ "runtime": {
+ "lib/DNXCore50/System.Threading.dll": {}
+ }
+ },
+ "System.Threading.Tasks/4.0.10": {
+ "dependencies": {
+ "System.Runtime": "4.0.0"
+ },
+ "compile": {
+ "ref/dotnet/System.Threading.Tasks.dll": {}
+ },
+ "runtime": {
+ "lib/DNXCore50/System.Threading.Tasks.dll": {}
+ }
+ }
+ }
+ },
+ "libraries": {
+ "System.Console/4.0.0-beta-23302": {
+ "serviceable": true,
+ "sha512": "rpWEkJWW29TjVZdDz5zr8VnBv4IN9BQHmP4Ky9tEbvkdhkJRb0ZO59acXMpVD1tSM2VhGlLnq0kpdjOLNmejNA==",
+ "files": [
+ "System.Console.4.0.0-beta-23302.nupkg",
+ "System.Console.4.0.0-beta-23302.nupkg.sha512",
+ "System.Console.nuspec",
+ "lib/DNXCore50/System.Console.dll",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/System.Console.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "ref/dotnet/System.Console.dll",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/System.Console.dll",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._"
+ ]
+ },
+ "System.Globalization/4.0.0": {
+ "sha512": "IBJyTo1y7ZtzzoJUA60T1XPvNTyw/wfFmjFoBFtlYfkekIOtD/AzDDIg0YdUa7eNtFEfliED2R7HdppTdU4t5A==",
+ "files": [
+ "License.rtf",
+ "System.Globalization.4.0.0.nupkg",
+ "System.Globalization.4.0.0.nupkg.sha512",
+ "System.Globalization.nuspec",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net45/_._",
+ "lib/win8/_._",
+ "lib/wp80/_._",
+ "lib/wpa81/_._",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "ref/dotnet/System.Globalization.dll",
+ "ref/dotnet/System.Globalization.xml",
+ "ref/dotnet/de/System.Globalization.xml",
+ "ref/dotnet/es/System.Globalization.xml",
+ "ref/dotnet/fr/System.Globalization.xml",
+ "ref/dotnet/it/System.Globalization.xml",
+ "ref/dotnet/ja/System.Globalization.xml",
+ "ref/dotnet/ko/System.Globalization.xml",
+ "ref/dotnet/ru/System.Globalization.xml",
+ "ref/dotnet/zh-hans/System.Globalization.xml",
+ "ref/dotnet/zh-hant/System.Globalization.xml",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net45/_._",
+ "ref/netcore50/System.Globalization.dll",
+ "ref/netcore50/System.Globalization.xml",
+ "ref/netcore50/de/System.Globalization.xml",
+ "ref/netcore50/es/System.Globalization.xml",
+ "ref/netcore50/fr/System.Globalization.xml",
+ "ref/netcore50/it/System.Globalization.xml",
+ "ref/netcore50/ja/System.Globalization.xml",
+ "ref/netcore50/ko/System.Globalization.xml",
+ "ref/netcore50/ru/System.Globalization.xml",
+ "ref/netcore50/zh-hans/System.Globalization.xml",
+ "ref/netcore50/zh-hant/System.Globalization.xml",
+ "ref/win8/_._",
+ "ref/wp80/_._",
+ "ref/wpa81/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._"
+ ]
+ },
+ "System.IO/4.0.10": {
+ "serviceable": true,
+ "sha512": "kghf1CeYT+W2lw8a50/GxFz5HR9t6RkL4BvjxtTp1NxtEFWywnMA9W8FH/KYXiDNThcw9u/GOViDON4iJFGXIQ==",
+ "files": [
+ "System.IO.4.0.10.nupkg",
+ "System.IO.4.0.10.nupkg.sha512",
+ "System.IO.nuspec",
+ "lib/DNXCore50/System.IO.dll",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/_._",
+ "lib/netcore50/System.IO.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "ref/dotnet/System.IO.dll",
+ "ref/dotnet/System.IO.xml",
+ "ref/dotnet/de/System.IO.xml",
+ "ref/dotnet/es/System.IO.xml",
+ "ref/dotnet/fr/System.IO.xml",
+ "ref/dotnet/it/System.IO.xml",
+ "ref/dotnet/ja/System.IO.xml",
+ "ref/dotnet/ko/System.IO.xml",
+ "ref/dotnet/ru/System.IO.xml",
+ "ref/dotnet/zh-hans/System.IO.xml",
+ "ref/dotnet/zh-hant/System.IO.xml",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "runtimes/win8-aot/lib/netcore50/System.IO.dll"
+ ]
+ },
+ "System.IO.FileSystem.Primitives/4.0.0": {
+ "serviceable": true,
+ "sha512": "7pJUvYi/Yq3A5nagqCCiOw3+aJp3xXc/Cjr8dnJDnER3/6kX3LEencfqmXUcPl9+7OvRNyPMNhqsLAcMK6K/KA==",
+ "files": [
+ "System.IO.FileSystem.Primitives.4.0.0.nupkg",
+ "System.IO.FileSystem.Primitives.4.0.0.nupkg.sha512",
+ "System.IO.FileSystem.Primitives.nuspec",
+ "lib/dotnet/System.IO.FileSystem.Primitives.dll",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/System.IO.FileSystem.Primitives.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "ref/dotnet/System.IO.FileSystem.Primitives.dll",
+ "ref/dotnet/System.IO.FileSystem.Primitives.xml",
+ "ref/dotnet/de/System.IO.FileSystem.Primitives.xml",
+ "ref/dotnet/es/System.IO.FileSystem.Primitives.xml",
+ "ref/dotnet/fr/System.IO.FileSystem.Primitives.xml",
+ "ref/dotnet/it/System.IO.FileSystem.Primitives.xml",
+ "ref/dotnet/ja/System.IO.FileSystem.Primitives.xml",
+ "ref/dotnet/ko/System.IO.FileSystem.Primitives.xml",
+ "ref/dotnet/ru/System.IO.FileSystem.Primitives.xml",
+ "ref/dotnet/zh-hans/System.IO.FileSystem.Primitives.xml",
+ "ref/dotnet/zh-hant/System.IO.FileSystem.Primitives.xml",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/System.IO.FileSystem.Primitives.dll",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._"
+ ]
+ },
+ "System.Private.Uri/4.0.0": {
+ "serviceable": true,
+ "sha512": "CtuxaCKcRIvPcsqquVl3mPp79EDZPMr2UogfiFCxCs+t2z1VjbpQsKNs1GHZ8VQetqbk1mr0V1yAfMe6y8CHDA==",
+ "files": [
+ "System.Private.Uri.4.0.0.nupkg",
+ "System.Private.Uri.4.0.0.nupkg.sha512",
+ "System.Private.Uri.nuspec",
+ "lib/DNXCore50/System.Private.Uri.dll",
+ "lib/netcore50/System.Private.Uri.dll",
+ "ref/dnxcore50/_._",
+ "ref/netcore50/_._",
+ "runtimes/win8-aot/lib/netcore50/System.Private.Uri.dll"
+ ]
+ },
+ "System.Reflection/4.0.0": {
+ "sha512": "g96Rn8XuG7y4VfxPj/jnXroRJdQ8L3iN3k3zqsuzk4k3Nq4KMXARYiIO4BLW4GwX06uQpuYwRMcAC/aF117knQ==",
+ "files": [
+ "License.rtf",
+ "System.Reflection.4.0.0.nupkg",
+ "System.Reflection.4.0.0.nupkg.sha512",
+ "System.Reflection.nuspec",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net45/_._",
+ "lib/win8/_._",
+ "lib/wp80/_._",
+ "lib/wpa81/_._",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "ref/dotnet/System.Reflection.dll",
+ "ref/dotnet/System.Reflection.xml",
+ "ref/dotnet/de/System.Reflection.xml",
+ "ref/dotnet/es/System.Reflection.xml",
+ "ref/dotnet/fr/System.Reflection.xml",
+ "ref/dotnet/it/System.Reflection.xml",
+ "ref/dotnet/ja/System.Reflection.xml",
+ "ref/dotnet/ko/System.Reflection.xml",
+ "ref/dotnet/ru/System.Reflection.xml",
+ "ref/dotnet/zh-hans/System.Reflection.xml",
+ "ref/dotnet/zh-hant/System.Reflection.xml",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net45/_._",
+ "ref/netcore50/System.Reflection.dll",
+ "ref/netcore50/System.Reflection.xml",
+ "ref/netcore50/de/System.Reflection.xml",
+ "ref/netcore50/es/System.Reflection.xml",
+ "ref/netcore50/fr/System.Reflection.xml",
+ "ref/netcore50/it/System.Reflection.xml",
+ "ref/netcore50/ja/System.Reflection.xml",
+ "ref/netcore50/ko/System.Reflection.xml",
+ "ref/netcore50/ru/System.Reflection.xml",
+ "ref/netcore50/zh-hans/System.Reflection.xml",
+ "ref/netcore50/zh-hant/System.Reflection.xml",
+ "ref/win8/_._",
+ "ref/wp80/_._",
+ "ref/wpa81/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._"
+ ]
+ },
+ "System.Reflection.Primitives/4.0.0": {
+ "serviceable": true,
+ "sha512": "n9S0XpKv2ruc17FSnaiX6nV47VfHTZ1wLjKZlAirUZCvDQCH71mVp+Ohabn0xXLh5pK2PKp45HCxkqu5Fxn/lA==",
+ "files": [
+ "System.Reflection.Primitives.4.0.0.nupkg",
+ "System.Reflection.Primitives.4.0.0.nupkg.sha512",
+ "System.Reflection.Primitives.nuspec",
+ "lib/DNXCore50/System.Reflection.Primitives.dll",
+ "lib/net45/_._",
+ "lib/netcore50/System.Reflection.Primitives.dll",
+ "lib/win8/_._",
+ "lib/wp80/_._",
+ "lib/wpa81/_._",
+ "ref/dotnet/System.Reflection.Primitives.dll",
+ "ref/dotnet/System.Reflection.Primitives.xml",
+ "ref/dotnet/de/System.Reflection.Primitives.xml",
+ "ref/dotnet/es/System.Reflection.Primitives.xml",
+ "ref/dotnet/fr/System.Reflection.Primitives.xml",
+ "ref/dotnet/it/System.Reflection.Primitives.xml",
+ "ref/dotnet/ja/System.Reflection.Primitives.xml",
+ "ref/dotnet/ko/System.Reflection.Primitives.xml",
+ "ref/dotnet/ru/System.Reflection.Primitives.xml",
+ "ref/dotnet/zh-hans/System.Reflection.Primitives.xml",
+ "ref/dotnet/zh-hant/System.Reflection.Primitives.xml",
+ "ref/net45/_._",
+ "ref/netcore50/System.Reflection.Primitives.dll",
+ "ref/netcore50/System.Reflection.Primitives.xml",
+ "ref/win8/_._",
+ "ref/wp80/_._",
+ "ref/wpa81/_._",
+ "runtimes/win8-aot/lib/netcore50/System.Reflection.Primitives.dll"
+ ]
+ },
+ "System.Resources.ResourceManager/4.0.0": {
+ "serviceable": true,
+ "sha512": "qmqeZ4BJgjfU+G2JbrZt4Dk1LsMxO4t+f/9HarNY6w8pBgweO6jT+cknUH7c3qIrGvyUqraBhU45Eo6UtA0fAw==",
+ "files": [
+ "System.Resources.ResourceManager.4.0.0.nupkg",
+ "System.Resources.ResourceManager.4.0.0.nupkg.sha512",
+ "System.Resources.ResourceManager.nuspec",
+ "lib/DNXCore50/System.Resources.ResourceManager.dll",
+ "lib/net45/_._",
+ "lib/netcore50/System.Resources.ResourceManager.dll",
+ "lib/win8/_._",
+ "lib/wp80/_._",
+ "lib/wpa81/_._",
+ "ref/dotnet/System.Resources.ResourceManager.dll",
+ "ref/dotnet/System.Resources.ResourceManager.xml",
+ "ref/dotnet/de/System.Resources.ResourceManager.xml",
+ "ref/dotnet/es/System.Resources.ResourceManager.xml",
+ "ref/dotnet/fr/System.Resources.ResourceManager.xml",
+ "ref/dotnet/it/System.Resources.ResourceManager.xml",
+ "ref/dotnet/ja/System.Resources.ResourceManager.xml",
+ "ref/dotnet/ko/System.Resources.ResourceManager.xml",
+ "ref/dotnet/ru/System.Resources.ResourceManager.xml",
+ "ref/dotnet/zh-hans/System.Resources.ResourceManager.xml",
+ "ref/dotnet/zh-hant/System.Resources.ResourceManager.xml",
+ "ref/net45/_._",
+ "ref/netcore50/System.Resources.ResourceManager.dll",
+ "ref/netcore50/System.Resources.ResourceManager.xml",
+ "ref/win8/_._",
+ "ref/wp80/_._",
+ "ref/wpa81/_._",
+ "runtimes/win8-aot/lib/netcore50/System.Resources.ResourceManager.dll"
+ ]
+ },
+ "System.Runtime/4.0.20": {
+ "serviceable": true,
+ "sha512": "X7N/9Bz7jVPorqdVFO86ns1sX6MlQM+WTxELtx+Z4VG45x9+LKmWH0GRqjgKprUnVuwmfB9EJ9DQng14Z7/zwg==",
+ "files": [
+ "System.Runtime.4.0.20.nupkg",
+ "System.Runtime.4.0.20.nupkg.sha512",
+ "System.Runtime.nuspec",
+ "lib/DNXCore50/System.Runtime.dll",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/_._",
+ "lib/netcore50/System.Runtime.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "ref/dotnet/System.Runtime.dll",
+ "ref/dotnet/System.Runtime.xml",
+ "ref/dotnet/de/System.Runtime.xml",
+ "ref/dotnet/es/System.Runtime.xml",
+ "ref/dotnet/fr/System.Runtime.xml",
+ "ref/dotnet/it/System.Runtime.xml",
+ "ref/dotnet/ja/System.Runtime.xml",
+ "ref/dotnet/ko/System.Runtime.xml",
+ "ref/dotnet/ru/System.Runtime.xml",
+ "ref/dotnet/zh-hans/System.Runtime.xml",
+ "ref/dotnet/zh-hant/System.Runtime.xml",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "runtimes/win8-aot/lib/netcore50/System.Runtime.dll"
+ ]
+ },
+ "System.Runtime.Handles/4.0.0": {
+ "serviceable": true,
+ "sha512": "638VhpRq63tVcQ6HDb3um3R/J2BtR1Sa96toHo6PcJGPXEPEsleCuqhBgX2gFCz0y0qkutANwW6VPPY5wQu1XQ==",
+ "files": [
+ "System.Runtime.Handles.4.0.0.nupkg",
+ "System.Runtime.Handles.4.0.0.nupkg.sha512",
+ "System.Runtime.Handles.nuspec",
+ "lib/DNXCore50/System.Runtime.Handles.dll",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/_._",
+ "lib/netcore50/System.Runtime.Handles.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "ref/dotnet/System.Runtime.Handles.dll",
+ "ref/dotnet/System.Runtime.Handles.xml",
+ "ref/dotnet/de/System.Runtime.Handles.xml",
+ "ref/dotnet/es/System.Runtime.Handles.xml",
+ "ref/dotnet/fr/System.Runtime.Handles.xml",
+ "ref/dotnet/it/System.Runtime.Handles.xml",
+ "ref/dotnet/ja/System.Runtime.Handles.xml",
+ "ref/dotnet/ko/System.Runtime.Handles.xml",
+ "ref/dotnet/ru/System.Runtime.Handles.xml",
+ "ref/dotnet/zh-hans/System.Runtime.Handles.xml",
+ "ref/dotnet/zh-hant/System.Runtime.Handles.xml",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "runtimes/win8-aot/lib/netcore50/System.Runtime.Handles.dll"
+ ]
+ },
+ "System.Runtime.InteropServices/4.0.20": {
+ "serviceable": true,
+ "sha512": "ZgDyBYfEnjWoz/viS6VOswA6XOkDSH2DzgbpczbW50RywhnCgTl+w3JEvtAiOGyIh8cyx1NJq80jsNBSUr8Pig==",
+ "files": [
+ "System.Runtime.InteropServices.4.0.20.nupkg",
+ "System.Runtime.InteropServices.4.0.20.nupkg.sha512",
+ "System.Runtime.InteropServices.nuspec",
+ "lib/DNXCore50/System.Runtime.InteropServices.dll",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/_._",
+ "lib/netcore50/System.Runtime.InteropServices.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "ref/dotnet/System.Runtime.InteropServices.dll",
+ "ref/dotnet/System.Runtime.InteropServices.xml",
+ "ref/dotnet/de/System.Runtime.InteropServices.xml",
+ "ref/dotnet/es/System.Runtime.InteropServices.xml",
+ "ref/dotnet/fr/System.Runtime.InteropServices.xml",
+ "ref/dotnet/it/System.Runtime.InteropServices.xml",
+ "ref/dotnet/ja/System.Runtime.InteropServices.xml",
+ "ref/dotnet/ko/System.Runtime.InteropServices.xml",
+ "ref/dotnet/ru/System.Runtime.InteropServices.xml",
+ "ref/dotnet/zh-hans/System.Runtime.InteropServices.xml",
+ "ref/dotnet/zh-hant/System.Runtime.InteropServices.xml",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "runtimes/win8-aot/lib/netcore50/System.Runtime.InteropServices.dll"
+ ]
+ },
+ "System.Text.Encoding/4.0.10": {
+ "sha512": "fNlSFgy4OuDlJrP9SFFxMlaLazq6ipv15sU5TiEgg9UCVnA/OgoVUfymFp4AOk1jOkW5SVxWbeeIUptcM+m/Vw==",
+ "files": [
+ "System.Text.Encoding.4.0.10.nupkg",
+ "System.Text.Encoding.4.0.10.nupkg.sha512",
+ "System.Text.Encoding.nuspec",
+ "lib/DNXCore50/System.Text.Encoding.dll",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/_._",
+ "lib/netcore50/System.Text.Encoding.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "ref/dotnet/System.Text.Encoding.dll",
+ "ref/dotnet/System.Text.Encoding.xml",
+ "ref/dotnet/de/System.Text.Encoding.xml",
+ "ref/dotnet/es/System.Text.Encoding.xml",
+ "ref/dotnet/fr/System.Text.Encoding.xml",
+ "ref/dotnet/it/System.Text.Encoding.xml",
+ "ref/dotnet/ja/System.Text.Encoding.xml",
+ "ref/dotnet/ko/System.Text.Encoding.xml",
+ "ref/dotnet/ru/System.Text.Encoding.xml",
+ "ref/dotnet/zh-hans/System.Text.Encoding.xml",
+ "ref/dotnet/zh-hant/System.Text.Encoding.xml",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "runtimes/win8-aot/lib/netcore50/System.Text.Encoding.dll"
+ ]
+ },
+ "System.Text.Encoding.Extensions/4.0.10": {
+ "sha512": "TZvlwXMxKo3bSRIcsWZLCIzIhLbvlz+mGeKYRZv/zUiSoQzGOwkYeBu6hOw2XPQgKqT0F4Rv8zqKdvmp2fWKYg==",
+ "files": [
+ "System.Text.Encoding.Extensions.4.0.10.nupkg",
+ "System.Text.Encoding.Extensions.4.0.10.nupkg.sha512",
+ "System.Text.Encoding.Extensions.nuspec",
+ "lib/DNXCore50/System.Text.Encoding.Extensions.dll",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/_._",
+ "lib/netcore50/System.Text.Encoding.Extensions.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "ref/dotnet/System.Text.Encoding.Extensions.dll",
+ "ref/dotnet/System.Text.Encoding.Extensions.xml",
+ "ref/dotnet/de/System.Text.Encoding.Extensions.xml",
+ "ref/dotnet/es/System.Text.Encoding.Extensions.xml",
+ "ref/dotnet/fr/System.Text.Encoding.Extensions.xml",
+ "ref/dotnet/it/System.Text.Encoding.Extensions.xml",
+ "ref/dotnet/ja/System.Text.Encoding.Extensions.xml",
+ "ref/dotnet/ko/System.Text.Encoding.Extensions.xml",
+ "ref/dotnet/ru/System.Text.Encoding.Extensions.xml",
+ "ref/dotnet/zh-hans/System.Text.Encoding.Extensions.xml",
+ "ref/dotnet/zh-hant/System.Text.Encoding.Extensions.xml",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "runtimes/win8-aot/lib/netcore50/System.Text.Encoding.Extensions.dll"
+ ]
+ },
+ "System.Threading/4.0.10": {
+ "serviceable": true,
+ "sha512": "0w6pRxIEE7wuiOJeKabkDgeIKmqf4ER1VNrs6qFwHnooEE78yHwi/bKkg5Jo8/pzGLm0xQJw0nEmPXt1QBAIUA==",
+ "files": [
+ "System.Threading.4.0.10.nupkg",
+ "System.Threading.4.0.10.nupkg.sha512",
+ "System.Threading.nuspec",
+ "lib/DNXCore50/System.Threading.dll",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/_._",
+ "lib/netcore50/System.Threading.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "ref/dotnet/System.Threading.dll",
+ "ref/dotnet/System.Threading.xml",
+ "ref/dotnet/de/System.Threading.xml",
+ "ref/dotnet/es/System.Threading.xml",
+ "ref/dotnet/fr/System.Threading.xml",
+ "ref/dotnet/it/System.Threading.xml",
+ "ref/dotnet/ja/System.Threading.xml",
+ "ref/dotnet/ko/System.Threading.xml",
+ "ref/dotnet/ru/System.Threading.xml",
+ "ref/dotnet/zh-hans/System.Threading.xml",
+ "ref/dotnet/zh-hant/System.Threading.xml",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "runtimes/win8-aot/lib/netcore50/System.Threading.dll"
+ ]
+ },
+ "System.Threading.Tasks/4.0.10": {
+ "serviceable": true,
+ "sha512": "NOwJGDfk79jR0bnzosbXLVD/PdI8KzBeESoa3CofEM5v9R5EBfcI0Jyf18stx+0IYV9okmDIDxVtxq9TbnR9bQ==",
+ "files": [
+ "System.Threading.Tasks.4.0.10.nupkg",
+ "System.Threading.Tasks.4.0.10.nupkg.sha512",
+ "System.Threading.Tasks.nuspec",
+ "lib/DNXCore50/System.Threading.Tasks.dll",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/_._",
+ "lib/netcore50/System.Threading.Tasks.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "ref/dotnet/System.Threading.Tasks.dll",
+ "ref/dotnet/System.Threading.Tasks.xml",
+ "ref/dotnet/de/System.Threading.Tasks.xml",
+ "ref/dotnet/es/System.Threading.Tasks.xml",
+ "ref/dotnet/fr/System.Threading.Tasks.xml",
+ "ref/dotnet/it/System.Threading.Tasks.xml",
+ "ref/dotnet/ja/System.Threading.Tasks.xml",
+ "ref/dotnet/ko/System.Threading.Tasks.xml",
+ "ref/dotnet/ru/System.Threading.Tasks.xml",
+ "ref/dotnet/zh-hans/System.Threading.Tasks.xml",
+ "ref/dotnet/zh-hant/System.Threading.Tasks.xml",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "runtimes/win8-aot/lib/netcore50/System.Threading.Tasks.dll"
+ ]
+ }
+ },
+ "projectFileDependencyGroups": {
+ "": [
+ "System.Runtime >= 4.0.20-beta-23302",
+ "System.Runtime.InteropServices >= 4.0.20-beta-23302",
+ "System.Console >= 4.0.0-beta-23302"
+ ],
+ "DNXCore,Version=v5.0": []
+ }
+}
+{
+ "locked": true,
+ "version": -9996,
+ "targets": {
+ "DNXCore,Version=v5.0": {
+ "Microsoft.Win32.Primitives/4.0.0": {
+ "dependencies": {
+ "System.Runtime": "4.0.20",
+ "System.Runtime.InteropServices": "4.0.20"
+ },
+ "compile": {
+ "ref/dotnet/Microsoft.Win32.Primitives.dll": {}
+ },
+ "runtime": {
+ "lib/dotnet/Microsoft.Win32.Primitives.dll": {}
+ }
+ },
+ "Microsoft.Win32.Registry/4.0.0-beta-23302": {
+ "dependencies": {
+ "System.Runtime": "4.0.20",
+ "System.Runtime.InteropServices": "4.0.20",
+ "System.Resources.ResourceManager": "4.0.0",
+ "System.Runtime.Handles": "4.0.0",
+ "System.Collections": "4.0.10",
+ "System.Runtime.Extensions": "4.0.10",
+ "System.Globalization": "4.0.10"
+ },
+ "compile": {
+ "ref/dotnet/Microsoft.Win32.Registry.dll": {}
+ },
+ "runtime": {
+ "lib/DNXCore50/Microsoft.Win32.Registry.dll": {}
+ }
+ },
+ "System.Collections/4.0.10": {
+ "dependencies": {
+ "System.Runtime": "4.0.20"
+ },
+ "compile": {
+ "ref/dotnet/System.Collections.dll": {}
+ },
+ "runtime": {
+ "lib/DNXCore50/System.Collections.dll": {}
+ }
+ },
+ "System.Collections.NonGeneric/4.0.1-beta-23302": {
+ "dependencies": {
+ "System.Runtime": "4.0.20",
+ "System.Globalization": "4.0.10",
+ "System.Resources.ResourceManager": "4.0.0",
+ "System.Diagnostics.Debug": "4.0.10",
+ "System.Threading": "4.0.10",
+ "System.Runtime.Extensions": "4.0.10"
+ },
+ "compile": {
+ "ref/dotnet/System.Collections.NonGeneric.dll": {}
+ },
+ "runtime": {
+ "lib/dotnet/System.Collections.NonGeneric.dll": {}
+ }
+ },
+ "System.Collections.Specialized/4.0.1-beta-23302": {
+ "dependencies": {
+ "System.Runtime": "4.0.20",
+ "System.Resources.ResourceManager": "4.0.0",
+ "System.Collections.NonGeneric": "4.0.0",
+ "System.Globalization.Extensions": "4.0.0",
+ "System.Runtime.Extensions": "4.0.10",
+ "System.Threading": "4.0.10",
+ "System.Globalization": "4.0.10"
+ },
+ "compile": {
+ "ref/dotnet/System.Collections.Specialized.dll": {}
+ },
+ "runtime": {
+ "lib/dotnet/System.Collections.Specialized.dll": {}
+ }
+ },
+ "System.ComponentModel/4.0.1-beta-23302": {
+ "dependencies": {
+ "System.Runtime": "4.0.20"
+ },
+ "compile": {
+ "ref/dotnet/System.ComponentModel.dll": {}
+ },
+ "runtime": {
+ "lib/dotnet/System.ComponentModel.dll": {}
+ }
+ },
+ "System.Console/4.0.0-beta-23302": {
+ "dependencies": {
+ "System.Runtime": "4.0.20",
+ "System.Runtime.InteropServices": "4.0.20",
+ "System.Resources.ResourceManager": "4.0.0",
+ "System.IO.FileSystem.Primitives": "4.0.0",
+ "System.IO": "4.0.10",
+ "System.Threading.Tasks": "4.0.10",
+ "System.Text.Encoding": "4.0.10",
+ "System.Threading": "4.0.10",
+ "System.Text.Encoding.Extensions": "4.0.10"
+ },
+ "compile": {
+ "ref/dotnet/System.Console.dll": {}
+ },
+ "runtime": {
+ "lib/DNXCore50/System.Console.dll": {}
+ }
+ },
+ "System.Diagnostics.Debug/4.0.10": {
+ "dependencies": {
+ "System.Runtime": "4.0.0"
+ },
+ "compile": {
+ "ref/dotnet/System.Diagnostics.Debug.dll": {}
+ },
+ "runtime": {
+ "lib/DNXCore50/System.Diagnostics.Debug.dll": {}
+ }
+ },
+ "System.Diagnostics.Process/4.0.0-beta-23302": {
+ "dependencies": {
+ "System.Runtime": "4.0.20",
+ "System.Runtime.InteropServices": "4.0.20",
+ "System.Resources.ResourceManager": "4.0.0",
+ "System.Runtime.Handles": "4.0.0",
+ "System.IO.FileSystem": "4.0.0",
+ "Microsoft.Win32.Registry": "4.0.0-beta-23302",
+ "Microsoft.Win32.Primitives": "4.0.0",
+ "System.IO.FileSystem.Primitives": "4.0.0",
+ "System.Threading.Thread": "4.0.0-beta-23302",
+ "System.Text.Encoding": "4.0.10",
+ "System.IO": "4.0.10",
+ "System.Threading.Tasks": "4.0.10",
+ "System.Collections": "4.0.10",
+ "System.Diagnostics.Debug": "4.0.10",
+ "System.Threading.ThreadPool": "4.0.10-beta-23302",
+ "System.Globalization": "4.0.10",
+ "System.Text.Encoding.Extensions": "4.0.10",
+ "System.Threading": "4.0.10",
+ "System.Runtime.Extensions": "4.0.10"
+ },
+ "compile": {
+ "ref/dotnet/System.Diagnostics.Process.dll": {}
+ },
+ "runtime": {
+ "lib/DNXCore50/System.Diagnostics.Process.dll": {}
+ }
+ },
+ "System.Diagnostics.Tools/4.0.0": {
+ "dependencies": {
+ "System.Runtime": "4.0.0"
+ },
+ "compile": {
+ "ref/dotnet/System.Diagnostics.Tools.dll": {}
+ },
+ "runtime": {
+ "lib/DNXCore50/System.Diagnostics.Tools.dll": {}
+ }
+ },
+ "System.Globalization/4.0.10": {
+ "dependencies": {
+ "System.Runtime": "4.0.0"
+ },
+ "compile": {
+ "ref/dotnet/System.Globalization.dll": {}
+ },
+ "runtime": {
+ "lib/DNXCore50/System.Globalization.dll": {}
+ }
+ },
+ "System.Globalization.Calendars/4.0.0": {
+ "dependencies": {
+ "System.Runtime": "4.0.0",
+ "System.Globalization": "4.0.0"
+ },
+ "compile": {
+ "ref/dotnet/System.Globalization.Calendars.dll": {}
+ },
+ "runtime": {
+ "lib/DNXCore50/System.Globalization.Calendars.dll": {}
+ }
+ },
+ "System.Globalization.Extensions/4.0.0": {
+ "dependencies": {
+ "System.Runtime": "4.0.20",
+ "System.Runtime.Extensions": "4.0.10",
+ "System.Globalization": "4.0.10",
+ "System.Runtime.InteropServices": "4.0.20",
+ "System.Resources.ResourceManager": "4.0.0"
+ },
+ "compile": {
+ "ref/dotnet/System.Globalization.Extensions.dll": {}
+ },
+ "runtime": {
+ "lib/dotnet/System.Globalization.Extensions.dll": {}
+ }
+ },
+ "System.IO/4.0.10": {
+ "dependencies": {
+ "System.Runtime": "4.0.20",
+ "System.Text.Encoding": "4.0.0",
+ "System.Threading.Tasks": "4.0.0"
+ },
+ "compile": {
+ "ref/dotnet/System.IO.dll": {}
+ },
+ "runtime": {
+ "lib/DNXCore50/System.IO.dll": {}
+ }
+ },
+ "System.IO.FileSystem/4.0.0": {
+ "dependencies": {
+ "System.Runtime": "4.0.20",
+ "System.Runtime.InteropServices": "4.0.20",
+ "System.Resources.ResourceManager": "4.0.0",
+ "System.IO.FileSystem.Primitives": "4.0.0",
+ "System.Runtime.Handles": "4.0.0",
+ "System.Threading.Overlapped": "4.0.0",
+ "System.Text.Encoding": "4.0.10",
+ "System.IO": "4.0.10",
+ "System.Collections": "4.0.10",
+ "System.Threading.Tasks": "4.0.10",
+ "System.Runtime.Extensions": "4.0.10",
+ "System.Text.Encoding.Extensions": "4.0.10",
+ "System.Threading": "4.0.10"
+ },
+ "compile": {
+ "ref/dotnet/System.IO.FileSystem.dll": {}
+ },
+ "runtime": {
+ "lib/DNXCore50/System.IO.FileSystem.dll": {}
+ }
+ },
+ "System.IO.FileSystem.Primitives/4.0.0": {
+ "dependencies": {
+ "System.Runtime": "4.0.20"
+ },
+ "compile": {
+ "ref/dotnet/System.IO.FileSystem.Primitives.dll": {}
+ },
+ "runtime": {
+ "lib/dotnet/System.IO.FileSystem.Primitives.dll": {}
+ }
+ },
+ "System.Linq/4.0.1-beta-23302": {
+ "dependencies": {
+ "System.Runtime": "4.0.20",
+ "System.Collections": "4.0.10",
+ "System.Resources.ResourceManager": "4.0.0",
+ "System.Diagnostics.Debug": "4.0.10",
+ "System.Runtime.Extensions": "4.0.10"
+ },
+ "compile": {
+ "ref/dotnet/System.Linq.dll": {}
+ },
+ "runtime": {
+ "lib/dotnet/System.Linq.dll": {}
+ }
+ },
+ "System.Linq.Expressions/4.0.10": {
+ "dependencies": {
+ "System.Runtime": "4.0.20",
+ "System.Resources.ResourceManager": "4.0.0",
+ "System.Collections": "4.0.0",
+ "System.Diagnostics.Debug": "4.0.0",
+ "System.Reflection": "4.0.0",
+ "System.IO": "4.0.0",
+ "System.Reflection.TypeExtensions": "4.0.0",
+ "System.Reflection.Primitives": "4.0.0",
+ "System.Reflection.Emit": "4.0.0",
+ "System.ObjectModel": "4.0.0",
+ "System.Threading": "4.0.0",
+ "System.Runtime.Extensions": "4.0.0",
+ "System.Linq": "4.0.0",
+ "System.Globalization": "4.0.0",
+ "System.Reflection.Extensions": "4.0.0"
+ },
+ "compile": {
+ "ref/dotnet/System.Linq.Expressions.dll": {}
+ },
+ "runtime": {
+ "lib/DNXCore50/System.Linq.Expressions.dll": {}
+ }
+ },
+ "System.Linq.Queryable/4.0.1-beta-23302": {
+ "dependencies": {
+ "System.Runtime": "4.0.20",
+ "System.Linq.Expressions": "4.0.10",
+ "System.Linq": "4.0.0",
+ "System.Resources.ResourceManager": "4.0.0",
+ "System.Reflection.Extensions": "4.0.0",
+ "System.Reflection": "4.0.10",
+ "System.Collections": "4.0.10"
+ },
+ "compile": {
+ "ref/dotnet/System.Linq.Queryable.dll": {}
+ },
+ "runtime": {
+ "lib/dotnet/System.Linq.Queryable.dll": {}
+ }
+ },
+ "System.ObjectModel/4.0.0": {
+ "dependencies": {
+ "System.Runtime": "4.0.0"
+ },
+ "compile": {
+ "ref/dotnet/System.ObjectModel.dll": {}
+ }
+ },
+ "System.Private.Uri/4.0.0": {
+ "runtime": {
+ "lib/DNXCore50/System.Private.Uri.dll": {}
+ }
+ },
+ "System.Reflection/4.0.10": {
+ "dependencies": {
+ "System.Runtime": "4.0.20",
+ "System.IO": "4.0.0",
+ "System.Reflection.Primitives": "4.0.0"
+ },
+ "compile": {
+ "ref/dotnet/System.Reflection.dll": {}
+ },
+ "runtime": {
+ "lib/DNXCore50/System.Reflection.dll": {}
+ }
+ },
+ "System.Reflection.Emit/4.0.0": {
+ "dependencies": {
+ "System.Runtime": "4.0.0",
+ "System.Reflection": "4.0.0",
+ "System.Reflection.Emit.ILGeneration": "4.0.0",
+ "System.IO": "4.0.0",
+ "System.Reflection.Primitives": "4.0.0"
+ },
+ "compile": {
+ "ref/dotnet/System.Reflection.Emit.dll": {}
+ },
+ "runtime": {
+ "lib/DNXCore50/System.Reflection.Emit.dll": {}
+ }
+ },
+ "System.Reflection.Emit.ILGeneration/4.0.0": {
+ "dependencies": {
+ "System.Runtime": "4.0.0",
+ "System.Reflection": "4.0.0",
+ "System.Reflection.Primitives": "4.0.0"
+ },
+ "compile": {
+ "ref/dotnet/System.Reflection.Emit.ILGeneration.dll": {}
+ },
+ "runtime": {
+ "lib/DNXCore50/System.Reflection.Emit.ILGeneration.dll": {}
+ }
+ },
+ "System.Reflection.Extensions/4.0.0": {
+ "dependencies": {
+ "System.Runtime": "4.0.0",
+ "System.Reflection": "4.0.0"
+ },
+ "compile": {
+ "ref/dotnet/System.Reflection.Extensions.dll": {}
+ },
+ "runtime": {
+ "lib/DNXCore50/System.Reflection.Extensions.dll": {}
+ }
+ },
+ "System.Reflection.Primitives/4.0.0": {
+ "dependencies": {
+ "System.Runtime": "4.0.0"
+ },
+ "compile": {
+ "ref/dotnet/System.Reflection.Primitives.dll": {}
+ },
+ "runtime": {
+ "lib/DNXCore50/System.Reflection.Primitives.dll": {}
+ }
+ },
+ "System.Reflection.TypeExtensions/4.0.0": {
+ "dependencies": {
+ "System.Runtime": "4.0.0",
+ "System.Reflection": "4.0.0"
+ },
+ "compile": {
+ "ref/dotnet/System.Reflection.TypeExtensions.dll": {}
+ },
+ "runtime": {
+ "lib/DNXCore50/System.Reflection.TypeExtensions.dll": {}
+ }
+ },
+ "System.Resources.ResourceManager/4.0.0": {
+ "dependencies": {
+ "System.Runtime": "4.0.0",
+ "System.Reflection": "4.0.0",
+ "System.Globalization": "4.0.0"
+ },
+ "compile": {
+ "ref/dotnet/System.Resources.ResourceManager.dll": {}
+ },
+ "runtime": {
+ "lib/DNXCore50/System.Resources.ResourceManager.dll": {}
+ }
+ },
+ "System.Runtime/4.0.20": {
+ "dependencies": {
+ "System.Private.Uri": "4.0.0"
+ },
+ "compile": {
+ "ref/dotnet/System.Runtime.dll": {}
+ },
+ "runtime": {
+ "lib/DNXCore50/System.Runtime.dll": {}
+ }
+ },
+ "System.Runtime.Extensions/4.0.10": {
+ "dependencies": {
+ "System.Runtime": "4.0.20"
+ },
+ "compile": {
+ "ref/dotnet/System.Runtime.Extensions.dll": {}
+ },
+ "runtime": {
+ "lib/DNXCore50/System.Runtime.Extensions.dll": {}
+ }
+ },
+ "System.Runtime.Handles/4.0.0": {
+ "dependencies": {
+ "System.Runtime": "4.0.0"
+ },
+ "compile": {
+ "ref/dotnet/System.Runtime.Handles.dll": {}
+ },
+ "runtime": {
+ "lib/DNXCore50/System.Runtime.Handles.dll": {}
+ }
+ },
+ "System.Runtime.InteropServices/4.0.20": {
+ "dependencies": {
+ "System.Runtime": "4.0.0",
+ "System.Reflection": "4.0.0",
+ "System.Reflection.Primitives": "4.0.0",
+ "System.Runtime.Handles": "4.0.0"
+ },
+ "compile": {
+ "ref/dotnet/System.Runtime.InteropServices.dll": {}
+ },
+ "runtime": {
+ "lib/DNXCore50/System.Runtime.InteropServices.dll": {}
+ }
+ },
+ "System.Runtime.Loader/4.0.0-beta-23302": {
+ "dependencies": {
+ "System.Runtime": "4.0.0",
+ "System.Reflection": "4.0.0",
+ "System.IO": "4.0.0"
+ },
+ "compile": {
+ "ref/dotnet/System.Runtime.Loader.dll": {}
+ },
+ "runtime": {
+ "lib/DNXCore50/System.Runtime.Loader.dll": {}
+ }
+ },
+ "System.Text.Encoding/4.0.10": {
+ "dependencies": {
+ "System.Runtime": "4.0.0"
+ },
+ "compile": {
+ "ref/dotnet/System.Text.Encoding.dll": {}
+ },
+ "runtime": {
+ "lib/DNXCore50/System.Text.Encoding.dll": {}
+ }
+ },
+ "System.Text.Encoding.Extensions/4.0.10": {
+ "dependencies": {
+ "System.Runtime": "4.0.0",
+ "System.Text.Encoding": "4.0.10"
+ },
+ "compile": {
+ "ref/dotnet/System.Text.Encoding.Extensions.dll": {}
+ },
+ "runtime": {
+ "lib/DNXCore50/System.Text.Encoding.Extensions.dll": {}
+ }
+ },
+ "System.Text.RegularExpressions/4.0.10": {
+ "dependencies": {
+ "System.Runtime": "4.0.20",
+ "System.Resources.ResourceManager": "4.0.0",
+ "System.Collections": "4.0.10",
+ "System.Globalization": "4.0.10",
+ "System.Runtime.Extensions": "4.0.10",
+ "System.Threading": "4.0.10"
+ },
+ "compile": {
+ "ref/dotnet/System.Text.RegularExpressions.dll": {}
+ },
+ "runtime": {
+ "lib/dotnet/System.Text.RegularExpressions.dll": {}
+ }
+ },
+ "System.Threading/4.0.10": {
+ "dependencies": {
+ "System.Runtime": "4.0.0",
+ "System.Threading.Tasks": "4.0.0"
+ },
+ "compile": {
+ "ref/dotnet/System.Threading.dll": {}
+ },
+ "runtime": {
+ "lib/DNXCore50/System.Threading.dll": {}
+ }
+ },
+ "System.Threading.Overlapped/4.0.0": {
+ "dependencies": {
+ "System.Runtime": "4.0.0",
+ "System.Runtime.Handles": "4.0.0"
+ },
+ "compile": {
+ "ref/dotnet/System.Threading.Overlapped.dll": {}
+ },
+ "runtime": {
+ "lib/DNXCore50/System.Threading.Overlapped.dll": {}
+ }
+ },
+ "System.Threading.Tasks/4.0.10": {
+ "dependencies": {
+ "System.Runtime": "4.0.0"
+ },
+ "compile": {
+ "ref/dotnet/System.Threading.Tasks.dll": {}
+ },
+ "runtime": {
+ "lib/DNXCore50/System.Threading.Tasks.dll": {}
+ }
+ },
+ "System.Threading.Thread/4.0.0-beta-23302": {
+ "dependencies": {
+ "System.Runtime": "4.0.0"
+ },
+ "compile": {
+ "ref/dotnet/System.Threading.Thread.dll": {}
+ },
+ "runtime": {
+ "lib/DNXCore50/System.Threading.Thread.dll": {}
+ }
+ },
+ "System.Threading.ThreadPool/4.0.10-beta-23302": {
+ "dependencies": {
+ "System.Runtime": "4.0.0",
+ "System.Runtime.InteropServices": "4.0.0"
+ },
+ "compile": {
+ "ref/dotnet/System.Threading.ThreadPool.dll": {}
+ },
+ "runtime": {
+ "lib/DNXCore50/System.Threading.ThreadPool.dll": {}
+ }
+ },
+ "System.Xml.ReaderWriter/4.0.11-beta-23302": {
+ "dependencies": {
+ "System.Runtime": "4.0.20",
+ "System.Text.Encoding": "4.0.10",
+ "System.IO": "4.0.10",
+ "System.Threading.Tasks": "4.0.10",
+ "System.Runtime.InteropServices": "4.0.20",
+ "System.Resources.ResourceManager": "4.0.0",
+ "System.IO.FileSystem": "4.0.0",
+ "System.IO.FileSystem.Primitives": "4.0.0",
+ "System.Diagnostics.Debug": "4.0.10",
+ "System.Text.RegularExpressions": "4.0.10",
+ "System.Collections": "4.0.10",
+ "System.Runtime.Extensions": "4.0.10",
+ "System.Globalization": "4.0.10",
+ "System.Text.Encoding.Extensions": "4.0.10"
+ },
+ "compile": {
+ "ref/dotnet/System.Xml.ReaderWriter.dll": {}
+ },
+ "runtime": {
+ "lib/dotnet/System.Xml.ReaderWriter.dll": {}
+ }
+ },
+ "System.Xml.XDocument/4.0.11-beta-23302": {
+ "dependencies": {
+ "System.Runtime": "4.0.20",
+ "System.IO": "4.0.10",
+ "System.Xml.ReaderWriter": "4.0.10",
+ "System.Resources.ResourceManager": "4.0.0",
+ "System.Diagnostics.Tools": "4.0.0",
+ "System.Collections": "4.0.10",
+ "System.Diagnostics.Debug": "4.0.10",
+ "System.Globalization": "4.0.10",
+ "System.Threading": "4.0.10",
+ "System.Text.Encoding": "4.0.10",
+ "System.Reflection": "4.0.10",
+ "System.Runtime.Extensions": "4.0.10"
+ },
+ "compile": {
+ "ref/dotnet/System.Xml.XDocument.dll": {}
+ },
+ "runtime": {
+ "lib/dotnet/System.Xml.XDocument.dll": {}
+ }
+ },
+ "System.Xml.XmlDocument/4.0.1-beta-23302": {
+ "dependencies": {
+ "System.Runtime": "4.0.20",
+ "System.Xml.ReaderWriter": "4.0.10",
+ "System.IO": "4.0.10",
+ "System.Resources.ResourceManager": "4.0.0",
+ "System.Text.Encoding": "4.0.10",
+ "System.Collections": "4.0.10",
+ "System.Diagnostics.Debug": "4.0.10",
+ "System.Runtime.Extensions": "4.0.10",
+ "System.Globalization": "4.0.10",
+ "System.Threading": "4.0.10"
+ },
+ "compile": {
+ "ref/dotnet/System.Xml.XmlDocument.dll": {}
+ },
+ "runtime": {
+ "lib/dotnet/System.Xml.XmlDocument.dll": {}
+ }
+ },
+ "System.Xml.XmlSerializer/4.0.11-beta-23302": {
+ "dependencies": {
+ "System.Runtime": "4.0.20",
+ "System.Resources.ResourceManager": "4.0.0",
+ "System.Xml.XmlDocument": "4.0.0",
+ "System.Reflection.TypeExtensions": "4.0.0",
+ "System.Reflection.Primitives": "4.0.0",
+ "System.Reflection.Extensions": "4.0.0",
+ "System.Linq": "4.0.0",
+ "System.Collections": "4.0.10",
+ "System.Diagnostics.Debug": "4.0.10",
+ "System.Globalization": "4.0.10",
+ "System.Reflection": "4.0.10",
+ "System.Xml.ReaderWriter": "4.0.10",
+ "System.IO": "4.0.10",
+ "System.Text.RegularExpressions": "4.0.10",
+ "System.Threading": "4.0.10",
+ "System.Runtime.Extensions": "4.0.10"
+ },
+ "compile": {
+ "ref/dotnet/System.Xml.XmlSerializer.dll": {}
+ },
+ "runtime": {
+ "lib/DNXCore50/System.Xml.XmlSerializer.dll": {}
+ }
+ }
+ }
+ },
+ "libraries": {
+ "Microsoft.Win32.Primitives/4.0.0": {
+ "serviceable": true,
+ "sha512": "CypEz9/lLOup8CEhiAmvr7aLs1zKPYyEU1sxQeEr6G0Ci8/F0Y6pYR1zzkROjM8j8Mq0typmbu676oYyvErQvg==",
+ "files": [
+ "Microsoft.Win32.Primitives.4.0.0.nupkg",
+ "Microsoft.Win32.Primitives.4.0.0.nupkg.sha512",
+ "Microsoft.Win32.Primitives.nuspec",
+ "lib/dotnet/Microsoft.Win32.Primitives.dll",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/Microsoft.Win32.Primitives.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "ref/dotnet/Microsoft.Win32.Primitives.dll",
+ "ref/dotnet/Microsoft.Win32.Primitives.xml",
+ "ref/dotnet/de/Microsoft.Win32.Primitives.xml",
+ "ref/dotnet/es/Microsoft.Win32.Primitives.xml",
+ "ref/dotnet/fr/Microsoft.Win32.Primitives.xml",
+ "ref/dotnet/it/Microsoft.Win32.Primitives.xml",
+ "ref/dotnet/ja/Microsoft.Win32.Primitives.xml",
+ "ref/dotnet/ko/Microsoft.Win32.Primitives.xml",
+ "ref/dotnet/ru/Microsoft.Win32.Primitives.xml",
+ "ref/dotnet/zh-hans/Microsoft.Win32.Primitives.xml",
+ "ref/dotnet/zh-hant/Microsoft.Win32.Primitives.xml",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/Microsoft.Win32.Primitives.dll",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._"
+ ]
+ },
+ "Microsoft.Win32.Registry/4.0.0-beta-23302": {
+ "serviceable": true,
+ "sha512": "63Vc0lDW+pMCSd6ygScz/XTiJE3Ou5Sr7yrZ0HE/Ym/Bi/mN0LMAJqUtAUSJxVBuqbozW/q39RpNLIZ+QlJvig==",
+ "files": [
+ "Microsoft.Win32.Registry.4.0.0-beta-23302.nupkg",
+ "Microsoft.Win32.Registry.4.0.0-beta-23302.nupkg.sha512",
+ "Microsoft.Win32.Registry.nuspec",
+ "lib/DNXCore50/Microsoft.Win32.Registry.dll",
+ "lib/net46/Microsoft.Win32.Registry.dll",
+ "ref/dotnet/Microsoft.Win32.Registry.dll",
+ "ref/net46/Microsoft.Win32.Registry.dll"
+ ]
+ },
+ "System.Collections/4.0.10": {
+ "serviceable": true,
+ "sha512": "ux6ilcZZjV/Gp7JEZpe+2V1eTueq6NuoGRM3eZCFuPM25hLVVgCRuea6STW8hvqreIOE59irJk5/ovpA5xQipw==",
+ "files": [
+ "System.Collections.4.0.10.nupkg",
+ "System.Collections.4.0.10.nupkg.sha512",
+ "System.Collections.nuspec",
+ "lib/DNXCore50/System.Collections.dll",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/_._",
+ "lib/netcore50/System.Collections.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "ref/dotnet/System.Collections.dll",
+ "ref/dotnet/System.Collections.xml",
+ "ref/dotnet/de/System.Collections.xml",
+ "ref/dotnet/es/System.Collections.xml",
+ "ref/dotnet/fr/System.Collections.xml",
+ "ref/dotnet/it/System.Collections.xml",
+ "ref/dotnet/ja/System.Collections.xml",
+ "ref/dotnet/ko/System.Collections.xml",
+ "ref/dotnet/ru/System.Collections.xml",
+ "ref/dotnet/zh-hans/System.Collections.xml",
+ "ref/dotnet/zh-hant/System.Collections.xml",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "runtimes/win8-aot/lib/netcore50/System.Collections.dll"
+ ]
+ },
+ "System.Collections.NonGeneric/4.0.1-beta-23302": {
+ "serviceable": true,
+ "sha512": "pSTpxEZ8/VRqmMnAP4Nfs7pdC8JpggNdnfGD225uIeEdNnc4m6xu3guu4BrFD3qrrBY1qSZCuNyY4DNJgq877A==",
+ "files": [
+ "System.Collections.NonGeneric.4.0.1-beta-23302.nupkg",
+ "System.Collections.NonGeneric.4.0.1-beta-23302.nupkg.sha512",
+ "System.Collections.NonGeneric.nuspec",
+ "lib/dotnet/System.Collections.NonGeneric.dll",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/System.Collections.NonGeneric.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "ref/dotnet/System.Collections.NonGeneric.dll",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/System.Collections.NonGeneric.dll",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._"
+ ]
+ },
+ "System.Collections.Specialized/4.0.1-beta-23302": {
+ "serviceable": true,
+ "sha512": "v1eYdfSH6ttx2QYSbvArTqlumBamCij2R8iNtdA2tBq0QmWseW5Nc+H3Ut1JHa9T1q3jWuk0NR95zMBwty3Q+Q==",
+ "files": [
+ "System.Collections.Specialized.4.0.1-beta-23302.nupkg",
+ "System.Collections.Specialized.4.0.1-beta-23302.nupkg.sha512",
+ "System.Collections.Specialized.nuspec",
+ "lib/dotnet/System.Collections.Specialized.dll",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/System.Collections.Specialized.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "ref/dotnet/System.Collections.Specialized.dll",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/System.Collections.Specialized.dll",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._"
+ ]
+ },
+ "System.ComponentModel/4.0.1-beta-23302": {
+ "serviceable": true,
+ "sha512": "Ju+nhdZ8gMwZAXRIr/ACoME9I9SpxeS+Xw4Bouok4xTvbbwkjlT55Mr9gybqcGMp4F/hzS55RnQDIiRN70fEdg==",
+ "files": [
+ "System.ComponentModel.4.0.1-beta-23302.nupkg",
+ "System.ComponentModel.4.0.1-beta-23302.nupkg.sha512",
+ "System.ComponentModel.nuspec",
+ "lib/dotnet/System.ComponentModel.dll",
+ "lib/net45/_._",
+ "lib/netcore50/System.ComponentModel.dll",
+ "lib/win8/_._",
+ "lib/wp80/_._",
+ "lib/wpa81/_._",
+ "ref/dotnet/System.ComponentModel.dll",
+ "ref/net45/_._",
+ "ref/netcore50/System.ComponentModel.dll",
+ "ref/win8/_._",
+ "ref/wp80/_._",
+ "ref/wpa81/_._"
+ ]
+ },
+ "System.Console/4.0.0-beta-23302": {
+ "serviceable": true,
+ "sha512": "rpWEkJWW29TjVZdDz5zr8VnBv4IN9BQHmP4Ky9tEbvkdhkJRb0ZO59acXMpVD1tSM2VhGlLnq0kpdjOLNmejNA==",
+ "files": [
+ "System.Console.4.0.0-beta-23302.nupkg",
+ "System.Console.4.0.0-beta-23302.nupkg.sha512",
+ "System.Console.nuspec",
+ "lib/DNXCore50/System.Console.dll",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/System.Console.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "ref/dotnet/System.Console.dll",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/System.Console.dll",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._"
+ ]
+ },
+ "System.Diagnostics.Debug/4.0.10": {
+ "serviceable": true,
+ "sha512": "pi2KthuvI2LWV2c2V+fwReDsDiKpNl040h6DcwFOb59SafsPT/V1fCy0z66OKwysurJkBMmp5j5CBe3Um+ub0g==",
+ "files": [
+ "System.Diagnostics.Debug.4.0.10.nupkg",
+ "System.Diagnostics.Debug.4.0.10.nupkg.sha512",
+ "System.Diagnostics.Debug.nuspec",
+ "lib/DNXCore50/System.Diagnostics.Debug.dll",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/_._",
+ "lib/netcore50/System.Diagnostics.Debug.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "ref/dotnet/System.Diagnostics.Debug.dll",
+ "ref/dotnet/System.Diagnostics.Debug.xml",
+ "ref/dotnet/de/System.Diagnostics.Debug.xml",
+ "ref/dotnet/es/System.Diagnostics.Debug.xml",
+ "ref/dotnet/fr/System.Diagnostics.Debug.xml",
+ "ref/dotnet/it/System.Diagnostics.Debug.xml",
+ "ref/dotnet/ja/System.Diagnostics.Debug.xml",
+ "ref/dotnet/ko/System.Diagnostics.Debug.xml",
+ "ref/dotnet/ru/System.Diagnostics.Debug.xml",
+ "ref/dotnet/zh-hans/System.Diagnostics.Debug.xml",
+ "ref/dotnet/zh-hant/System.Diagnostics.Debug.xml",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "runtimes/win8-aot/lib/netcore50/System.Diagnostics.Debug.dll"
+ ]
+ },
+ "System.Diagnostics.Process/4.0.0-beta-23302": {
+ "serviceable": true,
+ "sha512": "FtflxzCJUdgw+4suLaWz82EOLxVa7X6DWbY4eSRIomDlMwYrsof8Ewz81XhKMWY0EOY/5Nx+r/oPTbFUECAiUg==",
+ "files": [
+ "System.Diagnostics.Process.4.0.0-beta-23302.nupkg",
+ "System.Diagnostics.Process.4.0.0-beta-23302.nupkg.sha512",
+ "System.Diagnostics.Process.nuspec",
+ "lib/DNXCore50/System.Diagnostics.Process.dll",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/System.Diagnostics.Process.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "ref/dotnet/System.Diagnostics.Process.dll",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/System.Diagnostics.Process.dll",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._"
+ ]
+ },
+ "System.Diagnostics.Tools/4.0.0": {
+ "serviceable": true,
+ "sha512": "uw5Qi2u5Cgtv4xv3+8DeB63iaprPcaEHfpeJqlJiLjIVy6v0La4ahJ6VW9oPbJNIjcavd24LKq0ctT9ssuQXsw==",
+ "files": [
+ "System.Diagnostics.Tools.4.0.0.nupkg",
+ "System.Diagnostics.Tools.4.0.0.nupkg.sha512",
+ "System.Diagnostics.Tools.nuspec",
+ "lib/DNXCore50/System.Diagnostics.Tools.dll",
+ "lib/net45/_._",
+ "lib/netcore50/System.Diagnostics.Tools.dll",
+ "lib/win8/_._",
+ "lib/wp80/_._",
+ "lib/wpa81/_._",
+ "ref/dotnet/System.Diagnostics.Tools.dll",
+ "ref/dotnet/System.Diagnostics.Tools.xml",
+ "ref/dotnet/de/System.Diagnostics.Tools.xml",
+ "ref/dotnet/es/System.Diagnostics.Tools.xml",
+ "ref/dotnet/fr/System.Diagnostics.Tools.xml",
+ "ref/dotnet/it/System.Diagnostics.Tools.xml",
+ "ref/dotnet/ja/System.Diagnostics.Tools.xml",
+ "ref/dotnet/ko/System.Diagnostics.Tools.xml",
+ "ref/dotnet/ru/System.Diagnostics.Tools.xml",
+ "ref/dotnet/zh-hans/System.Diagnostics.Tools.xml",
+ "ref/dotnet/zh-hant/System.Diagnostics.Tools.xml",
+ "ref/net45/_._",
+ "ref/netcore50/System.Diagnostics.Tools.dll",
+ "ref/netcore50/System.Diagnostics.Tools.xml",
+ "ref/win8/_._",
+ "ref/wp80/_._",
+ "ref/wpa81/_._",
+ "runtimes/win8-aot/lib/netcore50/System.Diagnostics.Tools.dll"
+ ]
+ },
+ "System.Globalization/4.0.10": {
+ "sha512": "kzRtbbCNAxdafFBDogcM36ehA3th8c1PGiz8QRkZn8O5yMBorDHSK8/TGJPYOaCS5zdsGk0u9qXHnW91nqy7fw==",
+ "files": [
+ "System.Globalization.4.0.10.nupkg",
+ "System.Globalization.4.0.10.nupkg.sha512",
+ "System.Globalization.nuspec",
+ "lib/DNXCore50/System.Globalization.dll",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/_._",
+ "lib/netcore50/System.Globalization.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "ref/dotnet/System.Globalization.dll",
+ "ref/dotnet/System.Globalization.xml",
+ "ref/dotnet/de/System.Globalization.xml",
+ "ref/dotnet/es/System.Globalization.xml",
+ "ref/dotnet/fr/System.Globalization.xml",
+ "ref/dotnet/it/System.Globalization.xml",
+ "ref/dotnet/ja/System.Globalization.xml",
+ "ref/dotnet/ko/System.Globalization.xml",
+ "ref/dotnet/ru/System.Globalization.xml",
+ "ref/dotnet/zh-hans/System.Globalization.xml",
+ "ref/dotnet/zh-hant/System.Globalization.xml",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "runtimes/win8-aot/lib/netcore50/System.Globalization.dll"
+ ]
+ },
+ "System.Globalization.Calendars/4.0.0": {
+ "sha512": "cL6WrdGKnNBx9W/iTr+jbffsEO4RLjEtOYcpVSzPNDoli6X5Q6bAfWtJYbJNOPi8Q0fXgBEvKK1ncFL/3FTqlA==",
+ "files": [
+ "System.Globalization.Calendars.4.0.0.nupkg",
+ "System.Globalization.Calendars.4.0.0.nupkg.sha512",
+ "System.Globalization.Calendars.nuspec",
+ "lib/DNXCore50/System.Globalization.Calendars.dll",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/System.Globalization.Calendars.dll",
+ "lib/netcore50/System.Globalization.Calendars.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "ref/dotnet/System.Globalization.Calendars.dll",
+ "ref/dotnet/System.Globalization.Calendars.xml",
+ "ref/dotnet/de/System.Globalization.Calendars.xml",
+ "ref/dotnet/es/System.Globalization.Calendars.xml",
+ "ref/dotnet/fr/System.Globalization.Calendars.xml",
+ "ref/dotnet/it/System.Globalization.Calendars.xml",
+ "ref/dotnet/ja/System.Globalization.Calendars.xml",
+ "ref/dotnet/ko/System.Globalization.Calendars.xml",
+ "ref/dotnet/ru/System.Globalization.Calendars.xml",
+ "ref/dotnet/zh-hans/System.Globalization.Calendars.xml",
+ "ref/dotnet/zh-hant/System.Globalization.Calendars.xml",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/System.Globalization.Calendars.dll",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "runtimes/win8-aot/lib/netcore50/System.Globalization.Calendars.dll"
+ ]
+ },
+ "System.Globalization.Extensions/4.0.0": {
+ "serviceable": true,
+ "sha512": "rqbUXiwpBCvJ18ySCsjh20zleazO+6fr3s5GihC2sVwhyS0MUl6+oc5Rzk0z6CKkS4kmxbZQSeZLsK7cFSO0ng==",
+ "files": [
+ "System.Globalization.Extensions.4.0.0.nupkg",
+ "System.Globalization.Extensions.4.0.0.nupkg.sha512",
+ "System.Globalization.Extensions.nuspec",
+ "lib/dotnet/System.Globalization.Extensions.dll",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/System.Globalization.Extensions.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "ref/dotnet/System.Globalization.Extensions.dll",
+ "ref/dotnet/System.Globalization.Extensions.xml",
+ "ref/dotnet/de/System.Globalization.Extensions.xml",
+ "ref/dotnet/es/System.Globalization.Extensions.xml",
+ "ref/dotnet/fr/System.Globalization.Extensions.xml",
+ "ref/dotnet/it/System.Globalization.Extensions.xml",
+ "ref/dotnet/ja/System.Globalization.Extensions.xml",
+ "ref/dotnet/ko/System.Globalization.Extensions.xml",
+ "ref/dotnet/ru/System.Globalization.Extensions.xml",
+ "ref/dotnet/zh-hans/System.Globalization.Extensions.xml",
+ "ref/dotnet/zh-hant/System.Globalization.Extensions.xml",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/System.Globalization.Extensions.dll",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._"
+ ]
+ },
+ "System.IO/4.0.10": {
+ "serviceable": true,
+ "sha512": "kghf1CeYT+W2lw8a50/GxFz5HR9t6RkL4BvjxtTp1NxtEFWywnMA9W8FH/KYXiDNThcw9u/GOViDON4iJFGXIQ==",
+ "files": [
+ "System.IO.4.0.10.nupkg",
+ "System.IO.4.0.10.nupkg.sha512",
+ "System.IO.nuspec",
+ "lib/DNXCore50/System.IO.dll",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/_._",
+ "lib/netcore50/System.IO.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "ref/dotnet/System.IO.dll",
+ "ref/dotnet/System.IO.xml",
+ "ref/dotnet/de/System.IO.xml",
+ "ref/dotnet/es/System.IO.xml",
+ "ref/dotnet/fr/System.IO.xml",
+ "ref/dotnet/it/System.IO.xml",
+ "ref/dotnet/ja/System.IO.xml",
+ "ref/dotnet/ko/System.IO.xml",
+ "ref/dotnet/ru/System.IO.xml",
+ "ref/dotnet/zh-hans/System.IO.xml",
+ "ref/dotnet/zh-hant/System.IO.xml",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "runtimes/win8-aot/lib/netcore50/System.IO.dll"
+ ]
+ },
+ "System.IO.FileSystem/4.0.0": {
+ "serviceable": true,
+ "sha512": "eo05SPWfG+54UA0wxgRIYOuOslq+2QrJLXZaJDDsfLXG15OLguaItW39NYZTqUb4DeGOkU4R0wpOLOW4ynMUDQ==",
+ "files": [
+ "System.IO.FileSystem.4.0.0.nupkg",
+ "System.IO.FileSystem.4.0.0.nupkg.sha512",
+ "System.IO.FileSystem.nuspec",
+ "lib/DNXCore50/System.IO.FileSystem.dll",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/System.IO.FileSystem.dll",
+ "lib/netcore50/System.IO.FileSystem.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "ref/dotnet/System.IO.FileSystem.dll",
+ "ref/dotnet/System.IO.FileSystem.xml",
+ "ref/dotnet/de/System.IO.FileSystem.xml",
+ "ref/dotnet/es/System.IO.FileSystem.xml",
+ "ref/dotnet/fr/System.IO.FileSystem.xml",
+ "ref/dotnet/it/System.IO.FileSystem.xml",
+ "ref/dotnet/ja/System.IO.FileSystem.xml",
+ "ref/dotnet/ko/System.IO.FileSystem.xml",
+ "ref/dotnet/ru/System.IO.FileSystem.xml",
+ "ref/dotnet/zh-hans/System.IO.FileSystem.xml",
+ "ref/dotnet/zh-hant/System.IO.FileSystem.xml",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/System.IO.FileSystem.dll",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._"
+ ]
+ },
+ "System.IO.FileSystem.Primitives/4.0.0": {
+ "serviceable": true,
+ "sha512": "7pJUvYi/Yq3A5nagqCCiOw3+aJp3xXc/Cjr8dnJDnER3/6kX3LEencfqmXUcPl9+7OvRNyPMNhqsLAcMK6K/KA==",
+ "files": [
+ "System.IO.FileSystem.Primitives.4.0.0.nupkg",
+ "System.IO.FileSystem.Primitives.4.0.0.nupkg.sha512",
+ "System.IO.FileSystem.Primitives.nuspec",
+ "lib/dotnet/System.IO.FileSystem.Primitives.dll",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/System.IO.FileSystem.Primitives.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "ref/dotnet/System.IO.FileSystem.Primitives.dll",
+ "ref/dotnet/System.IO.FileSystem.Primitives.xml",
+ "ref/dotnet/de/System.IO.FileSystem.Primitives.xml",
+ "ref/dotnet/es/System.IO.FileSystem.Primitives.xml",
+ "ref/dotnet/fr/System.IO.FileSystem.Primitives.xml",
+ "ref/dotnet/it/System.IO.FileSystem.Primitives.xml",
+ "ref/dotnet/ja/System.IO.FileSystem.Primitives.xml",
+ "ref/dotnet/ko/System.IO.FileSystem.Primitives.xml",
+ "ref/dotnet/ru/System.IO.FileSystem.Primitives.xml",
+ "ref/dotnet/zh-hans/System.IO.FileSystem.Primitives.xml",
+ "ref/dotnet/zh-hant/System.IO.FileSystem.Primitives.xml",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/System.IO.FileSystem.Primitives.dll",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._"
+ ]
+ },
+ "System.Linq/4.0.1-beta-23302": {
+ "serviceable": true,
+ "sha512": "s6DNPrcinU2thnbDGyYfvK/2B6RXPvIjNyNFCyFDEPpKKb0dlURf/VSX0HQRbaxi0sXuSSrTCHPXhh75jpx3Pw==",
+ "files": [
+ "System.Linq.4.0.1-beta-23302.nupkg",
+ "System.Linq.4.0.1-beta-23302.nupkg.sha512",
+ "System.Linq.nuspec",
+ "lib/dotnet/System.Linq.dll",
+ "lib/net45/_._",
+ "lib/netcore50/System.Linq.dll",
+ "lib/win8/_._",
+ "lib/wp80/_._",
+ "lib/wpa81/_._",
+ "ref/dotnet/System.Linq.dll",
+ "ref/net45/_._",
+ "ref/netcore50/System.Linq.dll",
+ "ref/win8/_._",
+ "ref/wp80/_._",
+ "ref/wpa81/_._"
+ ]
+ },
+ "System.Linq.Expressions/4.0.10": {
+ "serviceable": true,
+ "sha512": "qhFkPqRsTfXBaacjQhxwwwUoU7TEtwlBIULj7nG7i4qAkvivil31VvOvDKppCSui5yGw0/325ZeNaMYRvTotXw==",
+ "files": [
+ "runtime.json",
+ "System.Linq.Expressions.4.0.10.nupkg",
+ "System.Linq.Expressions.4.0.10.nupkg.sha512",
+ "System.Linq.Expressions.nuspec",
+ "lib/DNXCore50/System.Linq.Expressions.dll",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/_._",
+ "lib/netcore50/System.Linq.Expressions.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "ref/dotnet/System.Linq.Expressions.dll",
+ "ref/dotnet/System.Linq.Expressions.xml",
+ "ref/dotnet/de/System.Linq.Expressions.xml",
+ "ref/dotnet/es/System.Linq.Expressions.xml",
+ "ref/dotnet/fr/System.Linq.Expressions.xml",
+ "ref/dotnet/it/System.Linq.Expressions.xml",
+ "ref/dotnet/ja/System.Linq.Expressions.xml",
+ "ref/dotnet/ko/System.Linq.Expressions.xml",
+ "ref/dotnet/ru/System.Linq.Expressions.xml",
+ "ref/dotnet/zh-hans/System.Linq.Expressions.xml",
+ "ref/dotnet/zh-hant/System.Linq.Expressions.xml",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "runtimes/win8-aot/lib/netcore50/System.Linq.Expressions.dll"
+ ]
+ },
+ "System.Linq.Queryable/4.0.1-beta-23302": {
+ "serviceable": true,
+ "sha512": "DtZNIidKpY95mLklcL4yfLYJCw3cAvfcoLxk8a+BqCAlMWXDmLDz2zizgyPWv2FwIUs7l+Jf9Znvz0yY/ip79Q==",
+ "files": [
+ "System.Linq.Queryable.4.0.1-beta-23302.nupkg",
+ "System.Linq.Queryable.4.0.1-beta-23302.nupkg.sha512",
+ "System.Linq.Queryable.nuspec",
+ "lib/dotnet/System.Linq.Queryable.dll",
+ "lib/net45/_._",
+ "lib/netcore50/System.Linq.Queryable.dll",
+ "lib/win8/_._",
+ "lib/wp80/_._",
+ "lib/wpa81/_._",
+ "ref/dotnet/System.Linq.Queryable.dll",
+ "ref/net45/_._",
+ "ref/netcore50/System.Linq.Queryable.dll",
+ "ref/win8/_._",
+ "ref/wp80/_._",
+ "ref/wpa81/_._"
+ ]
+ },
+ "System.ObjectModel/4.0.0": {
+ "sha512": "+3j/n+5SlF7PKb0/s5kdord+5RyW3uUscB+0WPuYvfAvEgyx6yPdPXU9tXdDZImRohMuWnQTAG2rFojFPfoGbA==",
+ "files": [
+ "License.rtf",
+ "System.ObjectModel.4.0.0.nupkg",
+ "System.ObjectModel.4.0.0.nupkg.sha512",
+ "System.ObjectModel.nuspec",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net45/_._",
+ "lib/win8/_._",
+ "lib/wp80/_._",
+ "lib/wpa81/_._",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "ref/dotnet/System.ObjectModel.dll",
+ "ref/dotnet/System.ObjectModel.xml",
+ "ref/dotnet/de/System.ObjectModel.xml",
+ "ref/dotnet/es/System.ObjectModel.xml",
+ "ref/dotnet/fr/System.ObjectModel.xml",
+ "ref/dotnet/it/System.ObjectModel.xml",
+ "ref/dotnet/ja/System.ObjectModel.xml",
+ "ref/dotnet/ko/System.ObjectModel.xml",
+ "ref/dotnet/ru/System.ObjectModel.xml",
+ "ref/dotnet/zh-hans/System.ObjectModel.xml",
+ "ref/dotnet/zh-hant/System.ObjectModel.xml",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net45/_._",
+ "ref/netcore50/System.ObjectModel.dll",
+ "ref/netcore50/System.ObjectModel.xml",
+ "ref/netcore50/de/System.ObjectModel.xml",
+ "ref/netcore50/es/System.ObjectModel.xml",
+ "ref/netcore50/fr/System.ObjectModel.xml",
+ "ref/netcore50/it/System.ObjectModel.xml",
+ "ref/netcore50/ja/System.ObjectModel.xml",
+ "ref/netcore50/ko/System.ObjectModel.xml",
+ "ref/netcore50/ru/System.ObjectModel.xml",
+ "ref/netcore50/zh-hans/System.ObjectModel.xml",
+ "ref/netcore50/zh-hant/System.ObjectModel.xml",
+ "ref/win8/_._",
+ "ref/wp80/_._",
+ "ref/wpa81/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._"
+ ]
+ },
+ "System.Private.Uri/4.0.0": {
+ "serviceable": true,
+ "sha512": "CtuxaCKcRIvPcsqquVl3mPp79EDZPMr2UogfiFCxCs+t2z1VjbpQsKNs1GHZ8VQetqbk1mr0V1yAfMe6y8CHDA==",
+ "files": [
+ "System.Private.Uri.4.0.0.nupkg",
+ "System.Private.Uri.4.0.0.nupkg.sha512",
+ "System.Private.Uri.nuspec",
+ "lib/DNXCore50/System.Private.Uri.dll",
+ "lib/netcore50/System.Private.Uri.dll",
+ "ref/dnxcore50/_._",
+ "ref/netcore50/_._",
+ "runtimes/win8-aot/lib/netcore50/System.Private.Uri.dll"
+ ]
+ },
+ "System.Reflection/4.0.10": {
+ "sha512": "WZ+4lEE4gqGx6mrqLhSiW4oi6QLPWwdNjzhhTONmhELOrW8Cw9phlO9tltgvRUuQUqYtBiliFwhO5S5fCJElVw==",
+ "files": [
+ "System.Reflection.4.0.10.nupkg",
+ "System.Reflection.4.0.10.nupkg.sha512",
+ "System.Reflection.nuspec",
+ "lib/DNXCore50/System.Reflection.dll",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/_._",
+ "lib/netcore50/System.Reflection.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "ref/dotnet/System.Reflection.dll",
+ "ref/dotnet/System.Reflection.xml",
+ "ref/dotnet/de/System.Reflection.xml",
+ "ref/dotnet/es/System.Reflection.xml",
+ "ref/dotnet/fr/System.Reflection.xml",
+ "ref/dotnet/it/System.Reflection.xml",
+ "ref/dotnet/ja/System.Reflection.xml",
+ "ref/dotnet/ko/System.Reflection.xml",
+ "ref/dotnet/ru/System.Reflection.xml",
+ "ref/dotnet/zh-hans/System.Reflection.xml",
+ "ref/dotnet/zh-hant/System.Reflection.xml",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "runtimes/win8-aot/lib/netcore50/System.Reflection.dll"
+ ]
+ },
+ "System.Reflection.Emit/4.0.0": {
+ "sha512": "CqnQz5LbNbiSxN10cv3Ehnw3j1UZOBCxnE0OO0q/keGQ5ENjyFM6rIG4gm/i0dX6EjdpYkAgKcI/mhZZCaBq4A==",
+ "files": [
+ "System.Reflection.Emit.4.0.0.nupkg",
+ "System.Reflection.Emit.4.0.0.nupkg.sha512",
+ "System.Reflection.Emit.nuspec",
+ "lib/DNXCore50/System.Reflection.Emit.dll",
+ "lib/MonoAndroid10/_._",
+ "lib/net45/_._",
+ "lib/netcore50/System.Reflection.Emit.dll",
+ "lib/xamarinmac20/_._",
+ "ref/dotnet/System.Reflection.Emit.dll",
+ "ref/dotnet/System.Reflection.Emit.xml",
+ "ref/dotnet/de/System.Reflection.Emit.xml",
+ "ref/dotnet/es/System.Reflection.Emit.xml",
+ "ref/dotnet/fr/System.Reflection.Emit.xml",
+ "ref/dotnet/it/System.Reflection.Emit.xml",
+ "ref/dotnet/ja/System.Reflection.Emit.xml",
+ "ref/dotnet/ko/System.Reflection.Emit.xml",
+ "ref/dotnet/ru/System.Reflection.Emit.xml",
+ "ref/dotnet/zh-hans/System.Reflection.Emit.xml",
+ "ref/dotnet/zh-hant/System.Reflection.Emit.xml",
+ "ref/MonoAndroid10/_._",
+ "ref/net45/_._",
+ "ref/xamarinmac20/_._"
+ ]
+ },
+ "System.Reflection.Emit.ILGeneration/4.0.0": {
+ "sha512": "02okuusJ0GZiHZSD2IOLIN41GIn6qOr7i5+86C98BPuhlwWqVABwebiGNvhDiXP1f9a6CxEigC7foQD42klcDg==",
+ "files": [
+ "System.Reflection.Emit.ILGeneration.4.0.0.nupkg",
+ "System.Reflection.Emit.ILGeneration.4.0.0.nupkg.sha512",
+ "System.Reflection.Emit.ILGeneration.nuspec",
+ "lib/DNXCore50/System.Reflection.Emit.ILGeneration.dll",
+ "lib/net45/_._",
+ "lib/netcore50/System.Reflection.Emit.ILGeneration.dll",
+ "lib/wp80/_._",
+ "ref/dotnet/System.Reflection.Emit.ILGeneration.dll",
+ "ref/dotnet/System.Reflection.Emit.ILGeneration.xml",
+ "ref/dotnet/de/System.Reflection.Emit.ILGeneration.xml",
+ "ref/dotnet/es/System.Reflection.Emit.ILGeneration.xml",
+ "ref/dotnet/fr/System.Reflection.Emit.ILGeneration.xml",
+ "ref/dotnet/it/System.Reflection.Emit.ILGeneration.xml",
+ "ref/dotnet/ja/System.Reflection.Emit.ILGeneration.xml",
+ "ref/dotnet/ko/System.Reflection.Emit.ILGeneration.xml",
+ "ref/dotnet/ru/System.Reflection.Emit.ILGeneration.xml",
+ "ref/dotnet/zh-hans/System.Reflection.Emit.ILGeneration.xml",
+ "ref/dotnet/zh-hant/System.Reflection.Emit.ILGeneration.xml",
+ "ref/net45/_._",
+ "ref/wp80/_._"
+ ]
+ },
+ "System.Reflection.Extensions/4.0.0": {
+ "serviceable": true,
+ "sha512": "dbYaZWCyFAu1TGYUqR2n+Q+1casSHPR2vVW0WVNkXpZbrd2BXcZ7cpvpu9C98CTHtNmyfMWCLpCclDqly23t6A==",
+ "files": [
+ "System.Reflection.Extensions.4.0.0.nupkg",
+ "System.Reflection.Extensions.4.0.0.nupkg.sha512",
+ "System.Reflection.Extensions.nuspec",
+ "lib/DNXCore50/System.Reflection.Extensions.dll",
+ "lib/net45/_._",
+ "lib/netcore50/System.Reflection.Extensions.dll",
+ "lib/win8/_._",
+ "lib/wp80/_._",
+ "lib/wpa81/_._",
+ "ref/dotnet/System.Reflection.Extensions.dll",
+ "ref/dotnet/System.Reflection.Extensions.xml",
+ "ref/dotnet/de/System.Reflection.Extensions.xml",
+ "ref/dotnet/es/System.Reflection.Extensions.xml",
+ "ref/dotnet/fr/System.Reflection.Extensions.xml",
+ "ref/dotnet/it/System.Reflection.Extensions.xml",
+ "ref/dotnet/ja/System.Reflection.Extensions.xml",
+ "ref/dotnet/ko/System.Reflection.Extensions.xml",
+ "ref/dotnet/ru/System.Reflection.Extensions.xml",
+ "ref/dotnet/zh-hans/System.Reflection.Extensions.xml",
+ "ref/dotnet/zh-hant/System.Reflection.Extensions.xml",
+ "ref/net45/_._",
+ "ref/netcore50/System.Reflection.Extensions.dll",
+ "ref/netcore50/System.Reflection.Extensions.xml",
+ "ref/win8/_._",
+ "ref/wp80/_._",
+ "ref/wpa81/_._",
+ "runtimes/win8-aot/lib/netcore50/System.Reflection.Extensions.dll"
+ ]
+ },
+ "System.Reflection.Primitives/4.0.0": {
+ "serviceable": true,
+ "sha512": "n9S0XpKv2ruc17FSnaiX6nV47VfHTZ1wLjKZlAirUZCvDQCH71mVp+Ohabn0xXLh5pK2PKp45HCxkqu5Fxn/lA==",
+ "files": [
+ "System.Reflection.Primitives.4.0.0.nupkg",
+ "System.Reflection.Primitives.4.0.0.nupkg.sha512",
+ "System.Reflection.Primitives.nuspec",
+ "lib/DNXCore50/System.Reflection.Primitives.dll",
+ "lib/net45/_._",
+ "lib/netcore50/System.Reflection.Primitives.dll",
+ "lib/win8/_._",
+ "lib/wp80/_._",
+ "lib/wpa81/_._",
+ "ref/dotnet/System.Reflection.Primitives.dll",
+ "ref/dotnet/System.Reflection.Primitives.xml",
+ "ref/dotnet/de/System.Reflection.Primitives.xml",
+ "ref/dotnet/es/System.Reflection.Primitives.xml",
+ "ref/dotnet/fr/System.Reflection.Primitives.xml",
+ "ref/dotnet/it/System.Reflection.Primitives.xml",
+ "ref/dotnet/ja/System.Reflection.Primitives.xml",
+ "ref/dotnet/ko/System.Reflection.Primitives.xml",
+ "ref/dotnet/ru/System.Reflection.Primitives.xml",
+ "ref/dotnet/zh-hans/System.Reflection.Primitives.xml",
+ "ref/dotnet/zh-hant/System.Reflection.Primitives.xml",
+ "ref/net45/_._",
+ "ref/netcore50/System.Reflection.Primitives.dll",
+ "ref/netcore50/System.Reflection.Primitives.xml",
+ "ref/win8/_._",
+ "ref/wp80/_._",
+ "ref/wpa81/_._",
+ "runtimes/win8-aot/lib/netcore50/System.Reflection.Primitives.dll"
+ ]
+ },
+ "System.Reflection.TypeExtensions/4.0.0": {
+ "serviceable": true,
+ "sha512": "YRM/msNAM86hdxPyXcuZSzmTO0RQFh7YMEPBLTY8cqXvFPYIx2x99bOyPkuU81wRYQem1c1HTkImQ2DjbOBfew==",
+ "files": [
+ "System.Reflection.TypeExtensions.4.0.0.nupkg",
+ "System.Reflection.TypeExtensions.4.0.0.nupkg.sha512",
+ "System.Reflection.TypeExtensions.nuspec",
+ "lib/DNXCore50/System.Reflection.TypeExtensions.dll",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/System.Reflection.TypeExtensions.dll",
+ "lib/netcore50/System.Reflection.TypeExtensions.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "ref/dotnet/System.Reflection.TypeExtensions.dll",
+ "ref/dotnet/System.Reflection.TypeExtensions.xml",
+ "ref/dotnet/de/System.Reflection.TypeExtensions.xml",
+ "ref/dotnet/es/System.Reflection.TypeExtensions.xml",
+ "ref/dotnet/fr/System.Reflection.TypeExtensions.xml",
+ "ref/dotnet/it/System.Reflection.TypeExtensions.xml",
+ "ref/dotnet/ja/System.Reflection.TypeExtensions.xml",
+ "ref/dotnet/ko/System.Reflection.TypeExtensions.xml",
+ "ref/dotnet/ru/System.Reflection.TypeExtensions.xml",
+ "ref/dotnet/zh-hans/System.Reflection.TypeExtensions.xml",
+ "ref/dotnet/zh-hant/System.Reflection.TypeExtensions.xml",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/System.Reflection.TypeExtensions.dll",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "runtimes/win8-aot/lib/netcore50/System.Reflection.TypeExtensions.dll"
+ ]
+ },
+ "System.Resources.ResourceManager/4.0.0": {
+ "serviceable": true,
+ "sha512": "qmqeZ4BJgjfU+G2JbrZt4Dk1LsMxO4t+f/9HarNY6w8pBgweO6jT+cknUH7c3qIrGvyUqraBhU45Eo6UtA0fAw==",
+ "files": [
+ "System.Resources.ResourceManager.4.0.0.nupkg",
+ "System.Resources.ResourceManager.4.0.0.nupkg.sha512",
+ "System.Resources.ResourceManager.nuspec",
+ "lib/DNXCore50/System.Resources.ResourceManager.dll",
+ "lib/net45/_._",
+ "lib/netcore50/System.Resources.ResourceManager.dll",
+ "lib/win8/_._",
+ "lib/wp80/_._",
+ "lib/wpa81/_._",
+ "ref/dotnet/System.Resources.ResourceManager.dll",
+ "ref/dotnet/System.Resources.ResourceManager.xml",
+ "ref/dotnet/de/System.Resources.ResourceManager.xml",
+ "ref/dotnet/es/System.Resources.ResourceManager.xml",
+ "ref/dotnet/fr/System.Resources.ResourceManager.xml",
+ "ref/dotnet/it/System.Resources.ResourceManager.xml",
+ "ref/dotnet/ja/System.Resources.ResourceManager.xml",
+ "ref/dotnet/ko/System.Resources.ResourceManager.xml",
+ "ref/dotnet/ru/System.Resources.ResourceManager.xml",
+ "ref/dotnet/zh-hans/System.Resources.ResourceManager.xml",
+ "ref/dotnet/zh-hant/System.Resources.ResourceManager.xml",
+ "ref/net45/_._",
+ "ref/netcore50/System.Resources.ResourceManager.dll",
+ "ref/netcore50/System.Resources.ResourceManager.xml",
+ "ref/win8/_._",
+ "ref/wp80/_._",
+ "ref/wpa81/_._",
+ "runtimes/win8-aot/lib/netcore50/System.Resources.ResourceManager.dll"
+ ]
+ },
+ "System.Runtime/4.0.20": {
+ "serviceable": true,
+ "sha512": "X7N/9Bz7jVPorqdVFO86ns1sX6MlQM+WTxELtx+Z4VG45x9+LKmWH0GRqjgKprUnVuwmfB9EJ9DQng14Z7/zwg==",
+ "files": [
+ "System.Runtime.4.0.20.nupkg",
+ "System.Runtime.4.0.20.nupkg.sha512",
+ "System.Runtime.nuspec",
+ "lib/DNXCore50/System.Runtime.dll",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/_._",
+ "lib/netcore50/System.Runtime.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "ref/dotnet/System.Runtime.dll",
+ "ref/dotnet/System.Runtime.xml",
+ "ref/dotnet/de/System.Runtime.xml",
+ "ref/dotnet/es/System.Runtime.xml",
+ "ref/dotnet/fr/System.Runtime.xml",
+ "ref/dotnet/it/System.Runtime.xml",
+ "ref/dotnet/ja/System.Runtime.xml",
+ "ref/dotnet/ko/System.Runtime.xml",
+ "ref/dotnet/ru/System.Runtime.xml",
+ "ref/dotnet/zh-hans/System.Runtime.xml",
+ "ref/dotnet/zh-hant/System.Runtime.xml",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "runtimes/win8-aot/lib/netcore50/System.Runtime.dll"
+ ]
+ },
+ "System.Runtime.Extensions/4.0.10": {
+ "serviceable": true,
+ "sha512": "5dsEwf3Iml7d5OZeT20iyOjT+r+okWpN7xI2v+R4cgd3WSj4DeRPTvPFjDpacbVW4skCAZ8B9hxXJYgkCFKJ1A==",
+ "files": [
+ "System.Runtime.Extensions.4.0.10.nupkg",
+ "System.Runtime.Extensions.4.0.10.nupkg.sha512",
+ "System.Runtime.Extensions.nuspec",
+ "lib/DNXCore50/System.Runtime.Extensions.dll",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/_._",
+ "lib/netcore50/System.Runtime.Extensions.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "ref/dotnet/System.Runtime.Extensions.dll",
+ "ref/dotnet/System.Runtime.Extensions.xml",
+ "ref/dotnet/de/System.Runtime.Extensions.xml",
+ "ref/dotnet/es/System.Runtime.Extensions.xml",
+ "ref/dotnet/fr/System.Runtime.Extensions.xml",
+ "ref/dotnet/it/System.Runtime.Extensions.xml",
+ "ref/dotnet/ja/System.Runtime.Extensions.xml",
+ "ref/dotnet/ko/System.Runtime.Extensions.xml",
+ "ref/dotnet/ru/System.Runtime.Extensions.xml",
+ "ref/dotnet/zh-hans/System.Runtime.Extensions.xml",
+ "ref/dotnet/zh-hant/System.Runtime.Extensions.xml",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "runtimes/win8-aot/lib/netcore50/System.Runtime.Extensions.dll"
+ ]
+ },
+ "System.Runtime.Handles/4.0.0": {
+ "serviceable": true,
+ "sha512": "638VhpRq63tVcQ6HDb3um3R/J2BtR1Sa96toHo6PcJGPXEPEsleCuqhBgX2gFCz0y0qkutANwW6VPPY5wQu1XQ==",
+ "files": [
+ "System.Runtime.Handles.4.0.0.nupkg",
+ "System.Runtime.Handles.4.0.0.nupkg.sha512",
+ "System.Runtime.Handles.nuspec",
+ "lib/DNXCore50/System.Runtime.Handles.dll",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/_._",
+ "lib/netcore50/System.Runtime.Handles.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "ref/dotnet/System.Runtime.Handles.dll",
+ "ref/dotnet/System.Runtime.Handles.xml",
+ "ref/dotnet/de/System.Runtime.Handles.xml",
+ "ref/dotnet/es/System.Runtime.Handles.xml",
+ "ref/dotnet/fr/System.Runtime.Handles.xml",
+ "ref/dotnet/it/System.Runtime.Handles.xml",
+ "ref/dotnet/ja/System.Runtime.Handles.xml",
+ "ref/dotnet/ko/System.Runtime.Handles.xml",
+ "ref/dotnet/ru/System.Runtime.Handles.xml",
+ "ref/dotnet/zh-hans/System.Runtime.Handles.xml",
+ "ref/dotnet/zh-hant/System.Runtime.Handles.xml",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "runtimes/win8-aot/lib/netcore50/System.Runtime.Handles.dll"
+ ]
+ },
+ "System.Runtime.InteropServices/4.0.20": {
+ "serviceable": true,
+ "sha512": "ZgDyBYfEnjWoz/viS6VOswA6XOkDSH2DzgbpczbW50RywhnCgTl+w3JEvtAiOGyIh8cyx1NJq80jsNBSUr8Pig==",
+ "files": [
+ "System.Runtime.InteropServices.4.0.20.nupkg",
+ "System.Runtime.InteropServices.4.0.20.nupkg.sha512",
+ "System.Runtime.InteropServices.nuspec",
+ "lib/DNXCore50/System.Runtime.InteropServices.dll",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/_._",
+ "lib/netcore50/System.Runtime.InteropServices.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "ref/dotnet/System.Runtime.InteropServices.dll",
+ "ref/dotnet/System.Runtime.InteropServices.xml",
+ "ref/dotnet/de/System.Runtime.InteropServices.xml",
+ "ref/dotnet/es/System.Runtime.InteropServices.xml",
+ "ref/dotnet/fr/System.Runtime.InteropServices.xml",
+ "ref/dotnet/it/System.Runtime.InteropServices.xml",
+ "ref/dotnet/ja/System.Runtime.InteropServices.xml",
+ "ref/dotnet/ko/System.Runtime.InteropServices.xml",
+ "ref/dotnet/ru/System.Runtime.InteropServices.xml",
+ "ref/dotnet/zh-hans/System.Runtime.InteropServices.xml",
+ "ref/dotnet/zh-hant/System.Runtime.InteropServices.xml",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "runtimes/win8-aot/lib/netcore50/System.Runtime.InteropServices.dll"
+ ]
+ },
+ "System.Runtime.Loader/4.0.0-beta-23302": {
+ "serviceable": true,
+ "sha512": "b4NcLjIIX8W3TY3MR8nNp2c+JgZFWcf1Nr5W3FfrM6Takr1BjBsDKv40cqK1yP2UsEnaIjGkAzXOph4fF4I40A==",
+ "files": [
+ "System.Runtime.Loader.4.0.0-beta-23302.nupkg",
+ "System.Runtime.Loader.4.0.0-beta-23302.nupkg.sha512",
+ "System.Runtime.Loader.nuspec",
+ "lib/DNXCore50/System.Runtime.Loader.dll",
+ "ref/dotnet/System.Runtime.Loader.dll"
+ ]
+ },
+ "System.Text.Encoding/4.0.10": {
+ "sha512": "fNlSFgy4OuDlJrP9SFFxMlaLazq6ipv15sU5TiEgg9UCVnA/OgoVUfymFp4AOk1jOkW5SVxWbeeIUptcM+m/Vw==",
+ "files": [
+ "System.Text.Encoding.4.0.10.nupkg",
+ "System.Text.Encoding.4.0.10.nupkg.sha512",
+ "System.Text.Encoding.nuspec",
+ "lib/DNXCore50/System.Text.Encoding.dll",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/_._",
+ "lib/netcore50/System.Text.Encoding.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "ref/dotnet/System.Text.Encoding.dll",
+ "ref/dotnet/System.Text.Encoding.xml",
+ "ref/dotnet/de/System.Text.Encoding.xml",
+ "ref/dotnet/es/System.Text.Encoding.xml",
+ "ref/dotnet/fr/System.Text.Encoding.xml",
+ "ref/dotnet/it/System.Text.Encoding.xml",
+ "ref/dotnet/ja/System.Text.Encoding.xml",
+ "ref/dotnet/ko/System.Text.Encoding.xml",
+ "ref/dotnet/ru/System.Text.Encoding.xml",
+ "ref/dotnet/zh-hans/System.Text.Encoding.xml",
+ "ref/dotnet/zh-hant/System.Text.Encoding.xml",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "runtimes/win8-aot/lib/netcore50/System.Text.Encoding.dll"
+ ]
+ },
+ "System.Text.Encoding.Extensions/4.0.10": {
+ "sha512": "TZvlwXMxKo3bSRIcsWZLCIzIhLbvlz+mGeKYRZv/zUiSoQzGOwkYeBu6hOw2XPQgKqT0F4Rv8zqKdvmp2fWKYg==",
+ "files": [
+ "System.Text.Encoding.Extensions.4.0.10.nupkg",
+ "System.Text.Encoding.Extensions.4.0.10.nupkg.sha512",
+ "System.Text.Encoding.Extensions.nuspec",
+ "lib/DNXCore50/System.Text.Encoding.Extensions.dll",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/_._",
+ "lib/netcore50/System.Text.Encoding.Extensions.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "ref/dotnet/System.Text.Encoding.Extensions.dll",
+ "ref/dotnet/System.Text.Encoding.Extensions.xml",
+ "ref/dotnet/de/System.Text.Encoding.Extensions.xml",
+ "ref/dotnet/es/System.Text.Encoding.Extensions.xml",
+ "ref/dotnet/fr/System.Text.Encoding.Extensions.xml",
+ "ref/dotnet/it/System.Text.Encoding.Extensions.xml",
+ "ref/dotnet/ja/System.Text.Encoding.Extensions.xml",
+ "ref/dotnet/ko/System.Text.Encoding.Extensions.xml",
+ "ref/dotnet/ru/System.Text.Encoding.Extensions.xml",
+ "ref/dotnet/zh-hans/System.Text.Encoding.Extensions.xml",
+ "ref/dotnet/zh-hant/System.Text.Encoding.Extensions.xml",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "runtimes/win8-aot/lib/netcore50/System.Text.Encoding.Extensions.dll"
+ ]
+ },
+ "System.Text.RegularExpressions/4.0.10": {
+ "serviceable": true,
+ "sha512": "0vDuHXJePpfMCecWBNOabOKCvzfTbFMNcGgklt3l5+RqHV5SzmF7RUVpuet8V0rJX30ROlL66xdehw2Rdsn2DA==",
+ "files": [
+ "System.Text.RegularExpressions.4.0.10.nupkg",
+ "System.Text.RegularExpressions.4.0.10.nupkg.sha512",
+ "System.Text.RegularExpressions.nuspec",
+ "lib/dotnet/System.Text.RegularExpressions.dll",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/_._",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "ref/dotnet/System.Text.RegularExpressions.dll",
+ "ref/dotnet/System.Text.RegularExpressions.xml",
+ "ref/dotnet/de/System.Text.RegularExpressions.xml",
+ "ref/dotnet/es/System.Text.RegularExpressions.xml",
+ "ref/dotnet/fr/System.Text.RegularExpressions.xml",
+ "ref/dotnet/it/System.Text.RegularExpressions.xml",
+ "ref/dotnet/ja/System.Text.RegularExpressions.xml",
+ "ref/dotnet/ko/System.Text.RegularExpressions.xml",
+ "ref/dotnet/ru/System.Text.RegularExpressions.xml",
+ "ref/dotnet/zh-hans/System.Text.RegularExpressions.xml",
+ "ref/dotnet/zh-hant/System.Text.RegularExpressions.xml",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._"
+ ]
+ },
+ "System.Threading/4.0.10": {
+ "serviceable": true,
+ "sha512": "0w6pRxIEE7wuiOJeKabkDgeIKmqf4ER1VNrs6qFwHnooEE78yHwi/bKkg5Jo8/pzGLm0xQJw0nEmPXt1QBAIUA==",
+ "files": [
+ "System.Threading.4.0.10.nupkg",
+ "System.Threading.4.0.10.nupkg.sha512",
+ "System.Threading.nuspec",
+ "lib/DNXCore50/System.Threading.dll",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/_._",
+ "lib/netcore50/System.Threading.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "ref/dotnet/System.Threading.dll",
+ "ref/dotnet/System.Threading.xml",
+ "ref/dotnet/de/System.Threading.xml",
+ "ref/dotnet/es/System.Threading.xml",
+ "ref/dotnet/fr/System.Threading.xml",
+ "ref/dotnet/it/System.Threading.xml",
+ "ref/dotnet/ja/System.Threading.xml",
+ "ref/dotnet/ko/System.Threading.xml",
+ "ref/dotnet/ru/System.Threading.xml",
+ "ref/dotnet/zh-hans/System.Threading.xml",
+ "ref/dotnet/zh-hant/System.Threading.xml",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "runtimes/win8-aot/lib/netcore50/System.Threading.dll"
+ ]
+ },
+ "System.Threading.Overlapped/4.0.0": {
+ "serviceable": true,
+ "sha512": "X5LuQFhM5FTqaez3eXKJ9CbfSGZ7wj6j4hSVtxct3zmwQXLqG95qoWdvILcgN7xtrDOBIFtpiyDg0vmoI0jE2A==",
+ "files": [
+ "System.Threading.Overlapped.4.0.0.nupkg",
+ "System.Threading.Overlapped.4.0.0.nupkg.sha512",
+ "System.Threading.Overlapped.nuspec",
+ "lib/DNXCore50/System.Threading.Overlapped.dll",
+ "lib/net46/System.Threading.Overlapped.dll",
+ "lib/netcore50/System.Threading.Overlapped.dll",
+ "ref/dotnet/System.Threading.Overlapped.dll",
+ "ref/dotnet/System.Threading.Overlapped.xml",
+ "ref/dotnet/de/System.Threading.Overlapped.xml",
+ "ref/dotnet/es/System.Threading.Overlapped.xml",
+ "ref/dotnet/fr/System.Threading.Overlapped.xml",
+ "ref/dotnet/it/System.Threading.Overlapped.xml",
+ "ref/dotnet/ja/System.Threading.Overlapped.xml",
+ "ref/dotnet/ko/System.Threading.Overlapped.xml",
+ "ref/dotnet/ru/System.Threading.Overlapped.xml",
+ "ref/dotnet/zh-hans/System.Threading.Overlapped.xml",
+ "ref/dotnet/zh-hant/System.Threading.Overlapped.xml",
+ "ref/net46/System.Threading.Overlapped.dll"
+ ]
+ },
+ "System.Threading.Tasks/4.0.10": {
+ "serviceable": true,
+ "sha512": "NOwJGDfk79jR0bnzosbXLVD/PdI8KzBeESoa3CofEM5v9R5EBfcI0Jyf18stx+0IYV9okmDIDxVtxq9TbnR9bQ==",
+ "files": [
+ "System.Threading.Tasks.4.0.10.nupkg",
+ "System.Threading.Tasks.4.0.10.nupkg.sha512",
+ "System.Threading.Tasks.nuspec",
+ "lib/DNXCore50/System.Threading.Tasks.dll",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/_._",
+ "lib/netcore50/System.Threading.Tasks.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "ref/dotnet/System.Threading.Tasks.dll",
+ "ref/dotnet/System.Threading.Tasks.xml",
+ "ref/dotnet/de/System.Threading.Tasks.xml",
+ "ref/dotnet/es/System.Threading.Tasks.xml",
+ "ref/dotnet/fr/System.Threading.Tasks.xml",
+ "ref/dotnet/it/System.Threading.Tasks.xml",
+ "ref/dotnet/ja/System.Threading.Tasks.xml",
+ "ref/dotnet/ko/System.Threading.Tasks.xml",
+ "ref/dotnet/ru/System.Threading.Tasks.xml",
+ "ref/dotnet/zh-hans/System.Threading.Tasks.xml",
+ "ref/dotnet/zh-hant/System.Threading.Tasks.xml",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "runtimes/win8-aot/lib/netcore50/System.Threading.Tasks.dll"
+ ]
+ },
+ "System.Threading.Thread/4.0.0-beta-23302": {
+ "serviceable": true,
+ "sha512": "0tn5ET6NNDVjJdpacPXM9lwa3tZeKiIYZHOZPtsbORXop84IN93KenlcqEdPizxPsnOAgauVIgeKftnvwcvlsQ==",
+ "files": [
+ "System.Threading.Thread.4.0.0-beta-23302.nupkg",
+ "System.Threading.Thread.4.0.0-beta-23302.nupkg.sha512",
+ "System.Threading.Thread.nuspec",
+ "lib/DNXCore50/System.Threading.Thread.dll",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/System.Threading.Thread.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "ref/dotnet/System.Threading.Thread.dll",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/System.Threading.Thread.dll",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._"
+ ]
+ },
+ "System.Threading.ThreadPool/4.0.10-beta-23302": {
+ "serviceable": true,
+ "sha512": "dwwA7ce4yVXenjpJU20JyNn3zrXsWWkbw9UMNK49C09D7tmrYLSxzWSzY7/4034okFcOjQmtP5g36ZRZANZL9A==",
+ "files": [
+ "System.Threading.ThreadPool.4.0.10-beta-23302.nupkg",
+ "System.Threading.ThreadPool.4.0.10-beta-23302.nupkg.sha512",
+ "System.Threading.ThreadPool.nuspec",
+ "lib/DNXCore50/System.Threading.ThreadPool.dll",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/System.Threading.ThreadPool.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "ref/dotnet/System.Threading.ThreadPool.dll",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/System.Threading.ThreadPool.dll",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._"
+ ]
+ },
+ "System.Xml.ReaderWriter/4.0.11-beta-23302": {
+ "serviceable": true,
+ "sha512": "z9D4/CQ9FytubW6CuTFkv7nb9jPHEvTlOUCXD83oEh5gYfw6RfRJGVPpqY+eJLQOqnBS0wgCPck3zNKEWGCFEA==",
+ "files": [
+ "System.Xml.ReaderWriter.4.0.11-beta-23302.nupkg",
+ "System.Xml.ReaderWriter.4.0.11-beta-23302.nupkg.sha512",
+ "System.Xml.ReaderWriter.nuspec",
+ "lib/dotnet/System.Xml.ReaderWriter.dll",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/_._",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "ref/dotnet/System.Xml.ReaderWriter.dll",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._"
+ ]
+ },
+ "System.Xml.XDocument/4.0.11-beta-23302": {
+ "serviceable": true,
+ "sha512": "ugSaPpuT0ImDyfbRtUdsBd6PMWaTYGbeRg1jO6/2tW0cBYIUU5h9496L2Pjm4l6UYa4v2G1+IH1CE/a19D+qSQ==",
+ "files": [
+ "System.Xml.XDocument.4.0.11-beta-23302.nupkg",
+ "System.Xml.XDocument.4.0.11-beta-23302.nupkg.sha512",
+ "System.Xml.XDocument.nuspec",
+ "lib/dotnet/System.Xml.XDocument.dll",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/_._",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "ref/dotnet/System.Xml.XDocument.dll",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._"
+ ]
+ },
+ "System.Xml.XmlDocument/4.0.1-beta-23302": {
+ "serviceable": true,
+ "sha512": "cv14snu2E01I+Ar4Kb8bNfPLdh3+OZDnJArvaRWzdpM1XAnY5SwrsbZLEOE6h6wAIFp3aefU8IbcbnXOMRATlQ==",
+ "files": [
+ "System.Xml.XmlDocument.4.0.1-beta-23302.nupkg",
+ "System.Xml.XmlDocument.4.0.1-beta-23302.nupkg.sha512",
+ "System.Xml.XmlDocument.nuspec",
+ "lib/dotnet/System.Xml.XmlDocument.dll",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/System.Xml.XmlDocument.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "ref/dotnet/System.Xml.XmlDocument.dll",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/System.Xml.XmlDocument.dll",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._"
+ ]
+ },
+ "System.Xml.XmlSerializer/4.0.11-beta-23302": {
+ "serviceable": true,
+ "sha512": "aLVJmiBKKGhPYAa3zaojjowvsNuFA5hBmDC6aN8Iv+UAr0WIIPOFy9ASp8oTx6VQ7kEhjxCQXC+pWU21597wXA==",
+ "files": [
+ "runtime.json",
+ "System.Xml.XmlSerializer.4.0.11-beta-23302.nupkg",
+ "System.Xml.XmlSerializer.4.0.11-beta-23302.nupkg.sha512",
+ "System.Xml.XmlSerializer.nuspec",
+ "lib/DNXCore50/System.Xml.XmlSerializer.dll",
+ "lib/MonoAndroid10/_._",
+ "lib/MonoTouch10/_._",
+ "lib/net46/_._",
+ "lib/netcore50/System.Xml.XmlSerializer.dll",
+ "lib/xamarinios10/_._",
+ "lib/xamarinmac20/_._",
+ "ref/dotnet/System.Xml.XmlSerializer.dll",
+ "ref/MonoAndroid10/_._",
+ "ref/MonoTouch10/_._",
+ "ref/net46/_._",
+ "ref/xamarinios10/_._",
+ "ref/xamarinmac20/_._",
+ "runtimes/win8-aot/lib/netcore50/System.Xml.XmlSerializer.dll"
+ ]
+ }
+ },
+ "projectFileDependencyGroups": {
+ "": [
+ "System.Diagnostics.Process >= 4.0.0-beta-23302",
+ "System.IO >= 4.0.10-beta-23302",
+ "System.IO.FileSystem >= 4.0.0-beta-23302",
+ "System.IO.FileSystem.Primitives >= 4.0.0-beta-23302",
+ "System.Runtime >= 4.0.20-beta-23302",
+ "System.Runtime.Extensions >= 4.0.10-beta-23302",
+ "System.Runtime.Handles >= 4.0.0-beta-23302",
+ "System.Runtime.Loader >= 4.0.0-beta-23302",
+ "System.Threading >= 4.0.10-beta-23302",
+ "System.Globalization.Calendars >= 4.0.0-beta-23302",
+ "System.Globalization >= 4.0.10-beta-23302",
+ "System.Text.Encoding >= 4.0.10-beta-23302",
+ "System.Runtime.InteropServices >= 4.0.20-beta-23302",
+ "System.Collections >= 4.0.10-beta-23302",
+ "System.Console >= 4.0.0-beta-23302",
+ "System.Reflection >= 4.0.10-beta-23302",
+ "System.Reflection.Primitives >= 4.0.0-beta-23302",
+ "System.ComponentModel >= 4.0.1-beta-23302",
+ "System.Xml.ReaderWriter >= 4.0.11-beta-23302",
+ "System.Collections.NonGeneric >= 4.0.1-beta-23302",
+ "System.Collections.Specialized >= 4.0.1-beta-23302",
+ "System.Linq >= 4.0.1-beta-23302",
+ "System.Linq.Queryable >= 4.0.1-beta-23302",
+ "System.Xml.XmlSerializer >= 4.0.11-beta-23302",
+ "System.Xml.XmlDocument >= 4.0.1-beta-23302",
+ "System.Xml.XDocument >= 4.0.11-beta-23302"
+ ],
+ "DNXCore,Version=v5.0": []
+ }
+} \ No newline at end of file
diff --git a/tests/src/JIT/Methodical/structs/systemvbringup/structinregs.cpp b/tests/src/JIT/Methodical/structs/systemvbringup/structinregs.cpp
new file mode 100644
index 0000000000..22519f6da2
--- /dev/null
+++ b/tests/src/JIT/Methodical/structs/systemvbringup/structinregs.cpp
@@ -0,0 +1,475 @@
+#include <stdio.h>
+
+#ifdef __clang__
+#define EXPORT(type) __attribute__((visibility("default"))) extern "C" type
+#else
+#define EXPORT(type) type
+#endif
+
+typedef unsigned char byte;
+
+struct S1
+{
+ int x;
+ int y;
+ int z;
+ int w;
+};
+
+struct S2
+{
+ int x;
+ int y;
+ float z;
+};
+
+struct S3
+{
+ int x;
+ int y;
+ double z;
+};
+
+struct S4
+{
+ int x;
+ float y;
+};
+
+struct S5
+{
+ int x;
+ double y;
+};
+
+struct S6
+{
+ short x;
+ short y;
+ int z;
+ int w;
+};
+
+struct S7
+{
+ double x;
+ int y;
+ int z;
+};
+
+struct S8
+{
+ double x;
+ int y;
+};
+
+struct S9
+{
+ int x;
+ int y;
+ float z;
+ float w;
+};
+
+struct S10
+{
+ byte a;
+ byte b;
+ byte c;
+ byte d;
+ byte e;
+ byte f;
+ byte g;
+ byte h;
+};
+
+struct S11
+{
+ byte a;
+ byte b;
+ byte c;
+ byte d;
+ double e;
+};
+
+struct S12
+{
+ byte a;
+ byte b;
+ byte c;
+ byte d;
+ byte e;
+ byte f;
+ byte g;
+ byte h;
+ long long i;
+};
+
+struct S13
+{
+ byte hasValue;
+ int x;
+};
+
+struct S14
+{
+ byte x;
+ long long y;
+};
+
+struct S15
+{
+ byte a;
+ byte b;
+ byte c;
+ byte d;
+ byte e;
+ byte f;
+ byte g;
+ byte h;
+ byte i;
+};
+
+struct S16
+{
+ byte x;
+ short y;
+};
+
+struct S17
+{
+ float x;
+ float y;
+};
+
+struct S18
+{
+ float x;
+ int y;
+ float z;
+};
+
+struct S19
+{
+ int x;
+ float y;
+ int z;
+ float w;
+};
+
+struct S20
+{
+ long long x;
+ long long y;
+ long long z;
+ long long w;
+};
+
+struct S28
+{
+ void* x;
+ int y;
+};
+
+struct S29
+{
+ int x;
+ void* y;
+};
+
+struct S30
+{
+ long long x;
+ long long y;
+};
+
+typedef void* (*PFNACTION1)(S1 s);
+typedef void* (*PFNACTION2)(S2 s);
+typedef void* (*PFNACTION3)(S3 s);
+typedef void* (*PFNACTION4)(S4 s);
+typedef void* (*PFNACTION5)(S5 s);
+typedef void* (*PFNACTION6)(S6 s);
+typedef void* (*PFNACTION7)(S7 s);
+typedef void* (*PFNACTION8)(S8 s);
+typedef void* (*PFNACTION9)(S9 s);
+typedef void* (*PFNACTION10)(S10 s);
+typedef void* (*PFNACTION11)(S11 s);
+typedef void* (*PFNACTION12)(S12 s);
+typedef void* (*PFNACTION13)(S13 s);
+typedef void* (*PFNACTION14)(S14 s);
+typedef void* (*PFNACTION15)(S15 s);
+typedef void* (*PFNACTION16)(S16 s);
+typedef void* (*PFNACTION17)(S17 s);
+typedef void* (*PFNACTION18)(S18 s);
+typedef void* (*PFNACTION19)(S19 s);
+typedef void* (*PFNACTION20)(S20 s);
+
+typedef void* (*PFNACTION28)(S28 s);
+typedef void* (*PFNACTION29)(S29 s);
+typedef void (*PFNACTION30)(S30 s1, S30 s2, S30 s3);
+
+EXPORT(void) InvokeCallback1(PFNACTION1 callback, S1 s)
+{
+ printf("Native S1: %d, %d, %d, %d\n", s.x, s.y, s.z, s.w);
+ callback(s);
+}
+
+EXPORT(void) InvokeCallback2(PFNACTION2 callback, S2 s)
+{
+ printf("Native S2: %d, %d, %f\n", s.x, s.y, s.z);
+ callback(s);
+}
+EXPORT(void) InvokeCallback3(PFNACTION3 callback, S3 s)
+{
+ printf("Native S3: %d, %d, %f\n", s.x, s.y, s.z);
+ callback(s);
+}
+EXPORT(void) InvokeCallback4(PFNACTION4 callback, S4 s)
+{
+ printf("Native S4: %d, %f\n", s.x, s.y);
+ callback(s);
+}
+EXPORT(void) InvokeCallback5(PFNACTION5 callback, S5 s)
+{
+ printf("Native S5: %d, %f\n", s.x, s.y);
+ callback(s);
+}
+EXPORT(void) InvokeCallback6(PFNACTION6 callback, S6 s)
+{
+ printf("Native S6: %hd, %hd, %d, %d\n", s.x, s.y, s.z, s.w);
+ callback(s);
+}
+EXPORT(void) InvokeCallback7(PFNACTION7 callback, S7 s)
+{
+ printf("Native S7: %f, %d, %d\n", s.x, s.y, s.z);
+ callback(s);
+}
+EXPORT(void) InvokeCallback8(PFNACTION8 callback, S8 s)
+{
+ printf("Native S8: %f, %d\n", s.x, s.y);
+ callback(s);
+}
+EXPORT(void) InvokeCallback9(PFNACTION9 callback, S9 s)
+{
+ printf("Native S9: %d, %d, %f, %f\n", s.x, s.y, s.z, s.w);
+ callback(s);
+}
+EXPORT(void) InvokeCallback10(PFNACTION10 callback, S10 s)
+{
+ printf("Native S10: %hhd, %hhd, %hhd, %hhd, %hhd, %hhd, %hhd, %hhd\n", s.a, s.b, s.c, s.d, s.e, s.f, s.g, s.h);
+ callback(s);
+}
+
+EXPORT(void) InvokeCallback11(PFNACTION11 callback, S11 s)
+{
+ printf("Native S11: %hhd, %hhd, %hhd, %hhd, %f\n", s.a, s.b, s.c, s.d, s.e);
+ callback(s);
+}
+EXPORT(void) InvokeCallback12(PFNACTION12 callback, S12 s)
+{
+ printf("Native S12: %hhd, %hhd, %hhd, %hhd, %hhd, %hhd, %hhd, %hhd, %lld\n", s.a, s.b, s.c, s.d, s.e, s.f, s.g, s.h, s.i);
+ callback(s);
+}
+EXPORT(void) InvokeCallback13(PFNACTION13 callback, S13 s)
+{
+ printf("Native S13: %hhd, %d\n", s.hasValue, s.x);
+ callback(s);
+}
+EXPORT(void) InvokeCallback14(PFNACTION14 callback, S14 s)
+{
+ printf("Native S13: %hhd, %lld\n", s.x, s.y);
+ callback(s);
+}
+EXPORT(void) InvokeCallback15(PFNACTION15 callback, S15 s)
+{
+ printf("Native S15: %hhd, %hhd, %hhd, %hhd, %hhd, %hhd, %hhd, %hhd, %hhd\n", s.a, s.b, s.c, s.d, s.e, s.f, s.g, s.h, s.i);
+ callback(s);
+}
+EXPORT(void) InvokeCallback16(PFNACTION16 callback, S16 s)
+{
+ printf("Native S16: %hhd, %hd\n", s.x, s.y);
+ callback(s);
+}
+EXPORT(void) InvokeCallback17(PFNACTION17 callback, S17 s)
+{
+ printf("Native S17: %f, %f\n", s.x, s.y);
+ callback(s);
+}
+EXPORT(void) InvokeCallback18(PFNACTION18 callback, S18 s)
+{
+ printf("Native S18: %f, %d, %f\n", s.x, s.y, s.z);
+ callback(s);
+}
+EXPORT(void) InvokeCallback19(PFNACTION19 callback, S19 s)
+{
+ printf("Native S19: %d, %f, %d, %f\n", s.x, s.y, s.z, s.w);
+ callback(s);
+}
+
+EXPORT(void) InvokeCallback20(PFNACTION20 callback, S20 s)
+{
+#ifdef __clang__
+ printf("Native S20: %lld, %lld, %lld, %lld\n", s.x, s.y, s.z, s.w);
+#else
+ printf("Native S20: %I64d, %I64d, %I64d, %I64d\n", s.x, s.y, s.z, s.w);
+#endif
+
+ callback(s);
+}
+
+EXPORT(void) InvokeCallback28(PFNACTION28 callback, S28 s)
+{
+ printf("Native S28: %X object, %d\n", (unsigned int)s.x, s.y);
+ callback(s);
+}
+EXPORT(void) InvokeCallback29(PFNACTION29 callback, S29 s)
+{
+ printf("Native S29: %d, %X object\n", s.x, (unsigned int)s.y);
+ callback(s);
+}
+
+EXPORT(void) InvokeCallback30(PFNACTION30 callback, S30 s1, S30 s2, S30 s3)
+{
+ printf("Native S30: %lld, %lld, %lld, %lld, %lld, %lld\n", s1.x, s1.y, s2.x, s2.y, s3.x, s3.y);
+ callback(s1, s2, s3);
+}
+
+EXPORT(S1) InvokeCallback1R(PFNACTION1 callback, S1 s)
+{
+ printf("Native S1: %d, %d, %d, %d\n", s.x, s.y, s.z, s.w);
+ callback(s);
+ return s;
+}
+
+EXPORT(S2) InvokeCallback2R(PFNACTION2 callback, S2 s)
+{
+ printf("Native S2: %d, %d, %f\n", s.x, s.y, s.z);
+ callback(s);
+ return s;
+}
+EXPORT(S3) InvokeCallback3R(PFNACTION3 callback, S3 s)
+{
+ printf("Native S3: %d, %d, %f\n", s.x, s.y, s.z);
+ callback(s);
+ return s;
+}
+EXPORT(S4) InvokeCallback4R(PFNACTION4 callback, S4 s)
+{
+ printf("Native S4: %d, %f\n", s.x, s.y);
+ callback(s);
+ return s;
+}
+EXPORT(S5) InvokeCallback5R(PFNACTION5 callback, S5 s)
+{
+ printf("Native S5: %d, %f\n", s.x, s.y);
+ callback(s);
+ return s;
+}
+EXPORT(S6) InvokeCallback6R(PFNACTION6 callback, S6 s)
+{
+ printf("Native S6: %hd, %hd, %d, %d\n", s.x, s.y, s.z, s.w);
+ callback(s);
+ return s;
+}
+EXPORT(S7) InvokeCallback7R(PFNACTION7 callback, S7 s)
+{
+ printf("Native S7: %f, %d, %d\n", s.x, s.y, s.z);
+ callback(s);
+ return s;
+}
+EXPORT(S8) InvokeCallback8R(PFNACTION8 callback, S8 s)
+{
+ printf("Native S8: %f, %d\n", s.x, s.y);
+ callback(s);
+ return s;
+}
+EXPORT(S9) InvokeCallback9R(PFNACTION9 callback, S9 s)
+{
+ printf("Native S9: %d, %d, %f, %f\n", s.x, s.y, s.z, s.w);
+ callback(s);
+ return s;
+}
+EXPORT(S10) InvokeCallback10R(PFNACTION10 callback, S10 s)
+{
+ printf("Native S10: %hhd, %hhd, %hhd, %hhd, %hhd, %hhd, %hhd, %hhd\n", s.a, s.b, s.c, s.d, s.e, s.f, s.g, s.h);
+ callback(s);
+ return s;
+}
+EXPORT(S11) InvokeCallback11R(PFNACTION11 callback, S11 s)
+{
+ printf("Native S11: %hhd, %hhd, %hhd, %hhd, %f\n", s.a, s.b, s.c, s.d, s.e);
+ callback(s);
+ return s;
+}
+EXPORT(S12) InvokeCallback12R(PFNACTION12 callback, S12 s)
+{
+ printf("Native S12: %hhd, %hhd, %hhd, %hhd, %hhd, %hhd, %hhd, %hhd, %lld\n", s.a, s.b, s.c, s.d, s.e, s.f, s.g, s.h, s.i);
+ callback(s);
+ return s;
+}
+EXPORT(S13) InvokeCallback13R(PFNACTION13 callback, S13 s)
+{
+ printf("Native S13: %hhd, %d\n", s.hasValue, s.x);
+ callback(s);
+ return s;
+}
+EXPORT(S14) InvokeCallback14R(PFNACTION14 callback, S14 s)
+{
+ printf("Native S13: %hhd, %lld\n", s.x, s.y);
+ callback(s);
+ return s;
+}
+EXPORT(S15) InvokeCallback15R(PFNACTION15 callback, S15 s)
+{
+ printf("Native S15: %hhd, %hhd, %hhd, %hhd, %hhd, %hhd, %hhd, %hhd, %hhd\n", s.a, s.b, s.c, s.d, s.e, s.f, s.g, s.h, s.i);
+ callback(s);
+ return s;
+}
+EXPORT(S16) InvokeCallback16R(PFNACTION16 callback, S16 s)
+{
+ printf("Native S16: %hhd, %hd\n", s.x, s.y);
+ callback(s);
+ return s;
+}
+EXPORT(S17) InvokeCallback17R(PFNACTION17 callback, S17 s)
+{
+ printf("Native S17: %f, %f\n", s.x, s.y);
+ callback(s);
+ return s;
+}
+EXPORT(S18) InvokeCallback18R(PFNACTION18 callback, S18 s)
+{
+ printf("Native S18: %f, %d, %f\n", s.x, s.y, s.z);
+ callback(s);
+ return s;
+}
+EXPORT(S19) InvokeCallback19R(PFNACTION19 callback, S19 s)
+{
+ printf("Native S19: %d, %f, %d, %f\n", s.x, s.y, s.z, s.w);
+ callback(s);
+ return s;
+}
+
+EXPORT(S20) InvokeCallback20R(PFNACTION20 callback, S20 s)
+{
+#ifdef __clang__
+ printf("Native S20: %lld, %lld, %lld, %lld\n", s.x, s.y, s.z, s.w);
+#else
+ printf("Native S20: %I64d, %I64d, %I64d, %I64d\n", s.x, s.y, s.z, s.w);
+#endif
+ callback(s);
+ return s;
+}
+
+EXPORT(S28) InvokeCallback28R(PFNACTION28 callback, S28 s)
+{
+ printf("Native S28: %X object, %d\n", (unsigned int)s.x, s.y);
+ callback(s);
+ return s;
+}
+EXPORT(S29) InvokeCallback29R(PFNACTION29 callback, S29 s)
+{
+ printf("Native S29: %d, %X object\n", s.x, (unsigned int)s.y);
+ callback(s);
+ return s;
+}
diff --git a/tests/src/JIT/Methodical/structs/systemvbringup/structinregs.csproj b/tests/src/JIT/Methodical/structs/systemvbringup/structinregs.csproj
new file mode 100644
index 0000000000..dc1b9a5dba
--- /dev/null
+++ b/tests/src/JIT/Methodical/structs/systemvbringup/structinregs.csproj
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.props))\dir.props" />
+ <PropertyGroup>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <AssemblyName>$(MSBuildProjectName)</AssemblyName>
+ <ProjectGuid>{649A239B-AB4B-4E20-BDCA-3BA736E8B790}</ProjectGuid>
+ <OutputType>Exe</OutputType>
+ <FileAlignment>512</FileAlignment>
+ </PropertyGroup>
+ <!-- Default configurations to help VS understand the configurations -->
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'">
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'">
+ </PropertyGroup>
+ <ItemGroup>
+ <Compile Include="structpasstest.cs" />
+ <Compile Include="structpasstest1.cs" />
+ <Compile Include="structrettest.cs" />
+ <Compile Include="structpinvoketests.cs" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="project.json" />
+ <ProjectReference Include="CMakeLists.txt" />
+ </ItemGroup>
+ <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
+</Project>
diff --git a/tests/src/JIT/Methodical/structs/systemvbringup/structinregs.def b/tests/src/JIT/Methodical/structs/systemvbringup/structinregs.def
new file mode 100644
index 0000000000..65437af665
--- /dev/null
+++ b/tests/src/JIT/Methodical/structs/systemvbringup/structinregs.def
@@ -0,0 +1,46 @@
+EXPORTS
+ InvokeCallback1
+ InvokeCallback10
+ InvokeCallback10R
+ InvokeCallback11
+ InvokeCallback11R
+ InvokeCallback12
+ InvokeCallback12R
+ InvokeCallback13
+ InvokeCallback13R
+ InvokeCallback14
+ InvokeCallback14R
+ InvokeCallback15
+ InvokeCallback15R
+ InvokeCallback16
+ InvokeCallback16R
+ InvokeCallback17
+ InvokeCallback17R
+ InvokeCallback18
+ InvokeCallback18R
+ InvokeCallback19
+ InvokeCallback19R
+ InvokeCallback1R
+ InvokeCallback2
+ InvokeCallback20
+ InvokeCallback20R
+ InvokeCallback28
+ InvokeCallback28R
+ InvokeCallback29
+ InvokeCallback29R
+ InvokeCallback2R
+ InvokeCallback3
+ InvokeCallback30
+ InvokeCallback3R
+ InvokeCallback4
+ InvokeCallback4R
+ InvokeCallback5
+ InvokeCallback5R
+ InvokeCallback6
+ InvokeCallback6R
+ InvokeCallback7
+ InvokeCallback7R
+ InvokeCallback8
+ InvokeCallback8R
+ InvokeCallback9
+ InvokeCallback9R \ No newline at end of file
diff --git a/tests/src/JIT/Methodical/structs/systemvbringup/structpasstest.cs b/tests/src/JIT/Methodical/structs/systemvbringup/structpasstest.cs
new file mode 100644
index 0000000000..5fcc53ca93
--- /dev/null
+++ b/tests/src/JIT/Methodical/structs/systemvbringup/structpasstest.cs
@@ -0,0 +1,230 @@
+using System;
+using System.Runtime.CompilerServices;
+namespace structinreg
+{
+ public class Program
+ {
+ public static int Main()
+ {
+ try
+ {
+ int ret = Program0.Main1();
+ if (ret != 100)
+ {
+ return ret;
+ }
+
+ ret = Program1.Main1();
+ if (ret != 100)
+ {
+ return ret;
+ }
+
+ ret = Program2.Main1();
+ if (ret != 100)
+ {
+ return ret;
+ }
+
+ ret = Program3.Main1();
+ if (ret != 100)
+ {
+ return ret;
+ }
+ }
+ catch(Exception e)
+ {
+ Console.WriteLine(e.ToString());
+ }
+ return 100;
+ }
+ }
+
+ struct Test20
+ {
+ public int i1;
+ public int i2;
+ public int i3;
+ public int i4;
+ public int i5;
+ public int i6;
+ public int i7;
+ public int i8;
+ }
+
+ struct Test21
+ {
+ public int i1;
+ public double d1;
+ }
+
+ struct Test22
+ {
+ public object o1;
+ public object o2;
+ public object o3;
+ public object o4;
+ }
+ struct Test23
+ {
+ public int i1;
+ public int i2;
+ public int i3;
+ public int i4;
+ public int i5;
+ public int i6;
+ public int i7;
+ public int i8;
+ public int i9;
+ public int i10;
+ public int i11;
+ public int i12;
+ public int i13;
+ public int i14;
+ public int i15;
+ public int i16;
+ public int i17;
+ public int i18;
+ public int i19;
+ public int i20;
+ public int i21;
+ public int i22;
+ public int i23;
+ public int i24;
+ }
+
+ public class Foo1
+ {
+ public int iFoo;
+ }
+
+ public class Program2
+ {
+ [MethodImplAttribute(MethodImplOptions.NoInlining)]
+ static int test20(Test20 t1)
+ {
+ Console.WriteLine("test1Res: {0}", t1.i1 + t1.i2 + t1.i3 + t1.i4 + t1.i5 + t1.i6 + t1.i7 + t1.i8);
+ return t1.i1 + t1.i2 + t1.i3 + t1.i4 + t1.i5 + t1.i6 + t1.i7 + t1.i8;
+ }
+
+ [MethodImplAttribute(MethodImplOptions.NoInlining)]
+ static int test21(Test21 t2)
+ {
+ Console.WriteLine("test2Res: {0}", t2.i1 + t2.d1);
+ return (int)(t2.i1 + t2.d1);
+ }
+
+ [MethodImplAttribute(MethodImplOptions.NoInlining)]
+ static int test22(Test22 t3)
+ {
+ Console.WriteLine("test3Res: {0} {1} {2} {3}", t3.o1, t3.o2, t3.o3, t3.o4);
+ return (int)(t3.o1.GetHashCode() + t3.o2.GetHashCode() + t3.o3.GetHashCode() + t3.o4.GetHashCode());
+ }
+
+ [MethodImplAttribute(MethodImplOptions.NoInlining)]
+ static int test23(Test23 t4)
+ {
+ Console.WriteLine("test4Res: {0}", t4.i1 + t4.i2, +t4.i3 + t4.i4 + t4.i5 + t4.i6 + t4.i7 + t4.i8 +
+ t4.i9 + t4.i10 + t4.i11 + t4.i12 + t4.i13 + t4.i14 +
+ t4.i15 + t4.i16 + t4.i17 + t4.i18 + t4.i19 + t4.i20 + t4.i21 + t4.i22 + t4.i23 + t4.i24);
+ return t4.i1 + t4.i2 + t4.i3 + t4.i4 + t4.i5 + t4.i6 + t4.i7 +
+ t4.i8 + t4.i9 + t4.i10 + t4.i11 + t4.i12 + t4.i13 + t4.i14 +
+ t4.i15 + t4.i16 + t4.i17 + t4.i18 + t4.i19 + t4.i20 + t4.i21 + t4.i22 + t4.i23 + t4.i24;
+ }
+
+ [MethodImplAttribute(MethodImplOptions.NoInlining)]
+ static int test24(int i1, int i2, int i3, int i4, int i5, int i6, int i7, Foo1 foo)
+ {
+ Console.WriteLine("test5Res: {0}", i1 + i2 + i3 + i4 + i5 + i6 + i7 + foo.iFoo);
+ return (i1 + i2 + i3 + i4 + i5 + i6 + i7 + foo.iFoo);
+ }
+
+ [MethodImplAttribute(MethodImplOptions.NoInlining)]
+ public static int Main1()
+ {
+ Test20 t1 = default(Test20);
+ t1.i1 = 1;
+ t1.i2 = 2;
+ t1.i3 = 3;
+ t1.i4 = 4;
+ t1.i5 = 5;
+ t1.i6 = 6;
+ t1.i7 = 7;
+ t1.i8 = 8;
+
+ Test21 t2 = default(Test21);
+ t2.i1 = 9;
+ t2.d1 = 10;
+
+ Test22 t3 = default(Test22);
+ t3.o1 = new object();
+ t3.o2 = new object();
+ t3.o3 = new object();
+ t3.o4 = new object();
+
+ Test23 t4 = default(Test23);
+ t4.i1 = 1;
+ t4.i2 = 2;
+ t4.i3 = 3;
+ t4.i4 = 4;
+ t4.i5 = 5;
+ t4.i6 = 6;
+ t4.i7 = 7;
+ t4.i8 = 8;
+ t4.i9 = 9;
+ t4.i10 = 10;
+ t4.i11 = 11;
+ t4.i12 = 12;
+ t4.i13 = 13;
+ t4.i14 = 14;
+ t4.i15 = 15;
+ t4.i16 = 16;
+ t4.i17 = 17;
+ t4.i18 = 18;
+ t4.i19 = 19;
+ t4.i20 = 20;
+ t4.i21 = 21;
+ t4.i22 = 22;
+ t4.i23 = 23;
+ t4.i24 = 24;
+
+ Foo1 foo = new Foo1();
+ foo.iFoo = 8;
+
+ int t1Res = test20(t1);
+ Console.WriteLine("test1 Result: {0}", t1Res);
+ if (t1Res != 36)
+ {
+ throw new Exception("Failed test1 test!");
+ }
+
+ int t2Res = test21(t2);
+ Console.WriteLine("test2 Result: {0}", t2Res);
+ if (t2Res != 19)
+ {
+ throw new Exception("Failed test2 test!");
+ }
+
+ int t3Res = test22(t3);
+ Console.WriteLine("test3 Result: {0}", t3Res);
+ if (t3Res == 0) // Adding HashCodes should be != 0.
+ {
+ throw new Exception("Failed test3 test!");
+ }
+
+ int t4Res = test23(t4);
+ Console.WriteLine("test4 Result: {0}", t4Res);
+ if (t4Res != 300)
+ {
+ throw new Exception("Failed test4 test!");
+ }
+
+ int t5Res = test24(1, 2, 3, 4, 5, 6, 7, foo);
+ if (t5Res != 36)
+ {
+ throw new Exception("Failed test5 test!");
+ }
+ return 100;
+ }
+ }
+} \ No newline at end of file
diff --git a/tests/src/JIT/Methodical/structs/systemvbringup/structpasstest1.cs b/tests/src/JIT/Methodical/structs/systemvbringup/structpasstest1.cs
new file mode 100644
index 0000000000..11fe9977d7
--- /dev/null
+++ b/tests/src/JIT/Methodical/structs/systemvbringup/structpasstest1.cs
@@ -0,0 +1,372 @@
+using System;
+using System.Runtime.CompilerServices;
+
+namespace structinreg
+{
+ struct Test1
+ {
+ public static int int0;
+ public int i1;
+ public int i2;
+ public int i3;
+ public int i4;
+ public int i5;
+ public int i6;
+ public int i7;
+ public int i8;
+ }
+
+ struct Test2
+ {
+ public int i1;
+ public double d1;
+ }
+
+ struct Test5
+ {
+ public float f1;
+ public Test2 t2;
+ public long l1;
+ }
+ struct Test9
+ {
+ public float f3;
+ }
+
+ struct Test10
+ {
+ public bool b1;
+ public Foo2 obj;
+ }
+
+ struct Test11
+ {
+ public string s1;
+ public Int32 int32;
+ }
+
+ struct Test6
+ {
+ public float f2;
+ public Test9 t9;
+ public int i3;
+ }
+
+ struct Test7
+ {
+ static int staticInt;
+ public Test6 t6;
+ public int i2;
+ }
+
+ struct Test3
+ {
+ public Foo2 o1;
+ public Foo2 o2;
+ public Foo2 o3;
+ public Foo2 o4;
+ }
+ struct Test4
+ {
+ public int i1;
+ public int i2;
+ public int i3;
+ public int i4;
+ public int i5;
+ public int i6;
+ public int i7;
+ public int i8;
+ public int i9;
+ public int i10;
+ public int i11;
+ public int i12;
+ public int i13;
+ public int i14;
+ public int i15;
+ public int i16;
+ public int i17;
+ public int i18;
+ public int i19;
+ public int i20;
+ public int i21;
+ public int i22;
+ public int i23;
+ public int i24;
+ }
+
+ class Foo2
+ {
+ public int iFoo;
+ }
+ struct Test12
+ {
+ public Foo2 foo;
+ public int i;
+ }
+
+ struct Test13
+ {
+ public Foo2 foo1;
+ }
+
+ struct Test14
+ {
+ public Test13 t13;
+ }
+
+ class Program1
+ {
+ [MethodImplAttribute(MethodImplOptions.NoInlining)]
+ static int test1(Test1 t1)
+ {
+ Console.WriteLine("test1: {0}", t1.i1 + t1.i2 + t1.i3 + t1.i4 + t1.i5 + t1.i6 + t1.i7 + t1.i8);
+ return t1.i1 + t1.i2 + t1.i3 + t1.i4 + t1.i5 + t1.i6 + t1.i7 + t1.i8;
+ }
+
+ [MethodImplAttribute(MethodImplOptions.NoInlining)]
+ static double test2(Test2 t2)
+ {
+ Console.WriteLine("test2: {0}", t2.i1 + t2.d1);
+ return t2.i1 + t2.d1;
+ }
+
+ [MethodImplAttribute(MethodImplOptions.NoInlining)]
+ static int test3(Test3 t3)
+ {
+ Console.WriteLine("test3: {0} {1} {2} {3}", t3.o1, t3.o2, t3.o3, t3.o4, t3.o1.iFoo + t3.o2.iFoo + t3.o3.iFoo + t3.o4.iFoo);
+
+ return t3.o1.iFoo + t3.o2.iFoo + t3.o3.iFoo + t3.o4.iFoo;
+ }
+
+ [MethodImplAttribute(MethodImplOptions.NoInlining)]
+ static int test4(Test4 t4)
+ {
+ Console.WriteLine("test4 Res: {0}", t4.i1 + t4.i2 + t4.i3 + t4.i4 + t4.i5 + t4.i6 + t4.i7 +
+ t4.i8 + t4.i9 + t4.i10 + t4.i11 + t4.i12 + t4.i13 + t4.i14 +
+ t4.i15 + t4.i16 + t4.i17 + t4.i18 + t4.i19 + t4.i20 + t4.i21 + t4.i22 + t4.i23 + t4.i24);
+ return t4.i1 + t4.i2 + t4.i3 + t4.i4 + t4.i5 + t4.i6 + t4.i7 +
+ t4.i8 + t4.i9 + t4.i10 + t4.i11 + t4.i12 + t4.i13 + t4.i14 +
+ t4.i15 + t4.i16 + t4.i17 + t4.i18 + t4.i19 + t4.i20 + t4.i21 + t4.i22 + t4.i23 + t4.i24;
+ }
+
+ [MethodImplAttribute(MethodImplOptions.NoInlining)]
+ static double test5(Test5 t5)
+ {
+ Console.WriteLine("test5 Res: {0}", t5.f1 + t5.t2.i1 + t5.t2.d1 + t5.l1);
+ return t5.f1 + t5.t2.i1 + t5.t2.d1 + t5.l1;
+ }
+
+ [MethodImplAttribute(MethodImplOptions.NoInlining)]
+ static float test7(Test7 t7)
+ {
+ Console.WriteLine("t7 Res: {0}", t7.i2 + t7.t6.f2 + t7.t6.i3 + t7.t6.t9.f3);
+ return t7.i2 + t7.t6.f2 + t7.t6.i3 + t7.t6.t9.f3;
+ }
+
+ [MethodImplAttribute(MethodImplOptions.NoInlining)]
+ static int test10(Test10 t10)
+ {
+ Console.WriteLine("t10 Res: {0}, {1}", t10.b1, t10.obj.iFoo);
+ int res = t10.b1 ? 8 : 9;
+ res += t10.obj.iFoo;
+
+ return res;
+ }
+
+ [MethodImplAttribute(MethodImplOptions.NoInlining)]
+ static int test11(Test11 t11)
+ {
+ Console.WriteLine("t11 Res: {0}, {1}", t11.s1, t11.int32);
+ return int.Parse(t11.s1) + t11.int32;
+ }
+
+ static int test12(Test12 t12)
+ {
+ Console.WriteLine("t12Res: {0}", t12.foo.iFoo + t12.i);
+ return t12.foo.iFoo + t12.i;
+ }
+
+ [MethodImplAttribute(MethodImplOptions.NoInlining)]
+ static int test13(Test13 t13)
+ {
+ Console.WriteLine("t13Res: {0}", t13.foo1.iFoo);
+ return t13.foo1.iFoo;
+ }
+
+ [MethodImplAttribute(MethodImplOptions.NoInlining)]
+ static int test14(Test14 t14)
+ {
+ Console.WriteLine("t14 Res: {0}", t14.t13.foo1.iFoo);
+ return t14.t13.foo1.iFoo;
+ }
+
+ [MethodImplAttribute(MethodImplOptions.NoInlining)]
+ public static int Main1()
+ {
+ Console.WriteLine("Foo2:Foo2:Foo2!!!");
+ Test1 t1 = default(Test1);
+ Test1.int0 = 999;
+ t1.i1 = 1;
+ t1.i2 = 2;
+ t1.i3 = 3;
+ t1.i4 = 4;
+ t1.i5 = 5;
+ t1.i6 = 6;
+ t1.i7 = 7;
+ t1.i8 = 8;
+
+ Test2 t2 = default(Test2);
+ t2.i1 = 9;
+ t2.d1 = 10;
+
+ Test3 t3 = default(Test3);
+ t3.o1 = new Foo2();
+ t3.o1.iFoo = 1;
+ t3.o2 = new Foo2();
+ t3.o2.iFoo = 2;
+ t3.o3 = new Foo2();
+ t3.o3.iFoo = 3;
+ t3.o4 = new Foo2();
+ t3.o4.iFoo = 4;
+
+ Test4 t4 = default(Test4);
+ t4.i1 = 1;
+ t4.i2 = 2;
+ t4.i3 = 3;
+ t4.i4 = 4;
+ t4.i5 = 5;
+ t4.i6 = 6;
+ t4.i7 = 7;
+ t4.i8 = 8;
+ t4.i9 = 9;
+ t4.i10 = 10;
+ t4.i11 = 11;
+ t4.i12 = 12;
+ t4.i13 = 13;
+ t4.i14 = 14;
+ t4.i15 = 15;
+ t4.i16 = 16;
+ t4.i17 = 17;
+ t4.i18 = 18;
+ t4.i19 = 19;
+ t4.i20 = 20;
+ t4.i21 = 21;
+ t4.i22 = 22;
+ t4.i23 = 23;
+ t4.i24 = 24;
+
+ Test5 t5 = default(Test5);
+ t5.f1 = 1;
+ t5.t2.i1 = 2;
+ t5.t2.d1 = 3;
+ t5.l1 = 4;
+
+ Test7 t7 = default(Test7);
+ t7.i2 = 31;
+ t7.t6.f2 = 32.0F;
+ t7.t6.i3 = 33;
+ t7.t6.t9.f3 = 34.0F;
+
+ Test10 t10 = default(Test10);
+ t10.b1 = true;
+ t10.obj = new Foo2();
+ t10.obj.iFoo = 7;
+
+ Test11 t11 = default(Test11);
+ t11.s1 = "78";
+ t11.int32 = 87;
+
+ Test12 t12 = default(Test12);
+ t12.foo = new Foo2();
+ t12.foo.iFoo = 45;
+ t12.i = 56;
+
+ Test13 t13 = default(Test13);
+ t13.foo1 = new Foo2();
+ t13.foo1.iFoo = 333;
+
+ Test14 t14 = default(Test14);
+ t14.t13.foo1 = new Foo2();
+ t14.t13.foo1.iFoo = 444;
+
+ int t13Res = test13(t13);
+ Console.WriteLine("test13 Result: {0}", t13Res);
+ if (t13Res != 333)
+ {
+ throw new Exception("Failed test13 test!");
+ }
+
+ int t14Res = test14(t14);
+ Console.WriteLine("test14 Result: {0}", t14Res);
+ if (t14Res != 444)
+ {
+ throw new Exception("Failed test14 test!");
+ }
+
+ int t10Res = test10(t10);
+ Console.WriteLine("test10 Result: {0}", t10Res);
+ if (t10Res != 15)
+ {
+ throw new Exception("Failed test10 test!");
+ }
+
+ int t11Res = test11(t11);
+ Console.WriteLine("test11 Result: {0}", t11Res);
+ if (t11Res != 165)
+ {
+ throw new Exception("Failed test11 test!");
+ }
+
+ int t12Res = test12(t12);
+ Console.WriteLine("test12 Result: {0}", t12Res);
+ if (t12Res != 101)
+ {
+ throw new Exception("Failed test12 test!");
+ }
+
+ int t1Res = test1(t1);
+ Console.WriteLine("test1 Result: {0}", t1Res);
+ if (t1Res != 36)
+ {
+ throw new Exception("Failed test1 test!");
+ }
+
+ double t2Res = test2(t2);
+ Console.WriteLine("test2 Result: {0}", t2Res);
+ if (t2Res != 19.0D)
+ {
+ throw new Exception("Failed test2 test!");
+ }
+
+ int t3Res = test3(t3);
+ Console.WriteLine("test3 Result: {0}", t3Res);
+ if (t3Res != 10)
+ {
+ throw new Exception("Failed test3 test!");
+ }
+
+ int t4Res = test4(t4);
+ Console.WriteLine("test4 Result: {0}", t4Res);
+ if (t4Res != 300)
+ {
+ throw new Exception("Failed test4 test!");
+ }
+
+ double t5Res = test5(t5);
+ Console.WriteLine("test5 Result: {0}", t5Res);
+ if (t5Res != 10.0D)
+ {
+ throw new Exception("Failed test5 test!");
+ }
+
+ float t7Res = test7(t7);
+ Console.WriteLine("test7 Result: {0}", t7Res);
+ if (t7Res != 130.00)
+ {
+ throw new Exception("Failed test7 test!");
+ }
+
+ return 100;
+ }
+ }
+} \ No newline at end of file
diff --git a/tests/src/JIT/Methodical/structs/systemvbringup/structpinvoketests.cs b/tests/src/JIT/Methodical/structs/systemvbringup/structpinvoketests.cs
new file mode 100644
index 0000000000..c28cea056f
--- /dev/null
+++ b/tests/src/JIT/Methodical/structs/systemvbringup/structpinvoketests.cs
@@ -0,0 +1,1021 @@
+using System;
+using System.Runtime.InteropServices;
+
+namespace structinreg
+{
+
+ class Program3
+ {
+ class TestClass
+ {
+ object w;
+ };
+
+ public struct S1
+ {
+ public int x;
+ public int y;
+ public int z;
+ public int w;
+ }
+
+ public struct S2
+ {
+ public int x;
+ public int y;
+ public float z;
+ }
+
+ public struct S3
+ {
+ public int x;
+ public int y;
+ public double z;
+ }
+
+ public struct S4
+ {
+ public int x;
+ public float y;
+ }
+
+ public struct S5
+ {
+ public int x;
+ public double y;
+ }
+
+ public struct S6
+ {
+ public short x;
+ public short y;
+ public int z;
+ public int w;
+ }
+
+ public struct S7
+ {
+ public double x;
+ public int y;
+ public int z;
+ }
+
+ public struct S8
+ {
+ public double x;
+ public int y;
+ }
+
+ public struct S9
+ {
+ public int x;
+ public int y;
+ public float z;
+ public float w;
+ }
+
+ public struct S10
+ {
+ public byte a;
+ public byte b;
+ public byte c;
+ public byte d;
+ public byte e;
+ public byte f;
+ public byte g;
+ public byte h;
+ }
+
+ public struct S11
+ {
+ public byte a;
+ public byte b;
+ public byte c;
+ public byte d;
+ public double e;
+ }
+
+ public struct S12
+ {
+ public byte a;
+ public byte b;
+ public byte c;
+ public byte d;
+ public byte e;
+ public byte f;
+ public byte g;
+ public byte h;
+ public long i;
+ }
+
+ public struct S13
+ {
+ public byte hasValue;
+ public int x;
+ }
+
+ public struct S14
+ {
+ public byte x;
+ public long y;
+ }
+
+ public struct S15
+ {
+ public byte a;
+ public byte b;
+ public byte c;
+ public byte d;
+ public byte e;
+ public byte f;
+ public byte g;
+ public byte h;
+ public byte i;
+ }
+
+ public struct S16
+ {
+ public byte x;
+ public short y;
+ }
+
+ public struct S17
+ {
+ public float x;
+ public float y;
+ }
+
+ public struct S18
+ {
+ public float x;
+ public int y;
+ public float z;
+ }
+
+ public struct S19
+ {
+ public int x;
+ public float y;
+ public int z;
+ public float w;
+ }
+
+ // struct that doesn't fit into registers
+ public struct S20
+ {
+ public long x;
+ public long y;
+ public long z;
+ public long w;
+ }
+/* These tests are not working on non Windows CoreCLR. Enable this when GH Issue #2076 is resolved.
+ [StructLayout(LayoutKind.Sequential)]
+ public struct S28
+ {
+ public object x;
+ public int y;
+ }
+
+ [StructLayout(LayoutKind.Sequential)]
+ public struct S29
+ {
+ public int x;
+ public object y;
+ }
+ Enable this when GH Issue #2076 is resolved. */
+ public struct S30
+ {
+ public long x;
+ public long y;
+ }
+
+ public delegate void MyCallback1(S1 s);
+ public delegate void MyCallback2(S2 s);
+ public delegate void MyCallback3(S3 s);
+ public delegate void MyCallback4(S4 s);
+ public delegate void MyCallback5(S5 s);
+ public delegate void MyCallback6(S6 s);
+ public delegate void MyCallback7(S7 s);
+ public delegate void MyCallback8(S8 s);
+ public delegate void MyCallback9(S9 s);
+ public delegate void MyCallback10(S10 s);
+ public delegate void MyCallback11(S11 s);
+ public delegate void MyCallback12(S12 s);
+ public delegate void MyCallback13(S13 s);
+ public delegate void MyCallback14(S14 s);
+ public delegate void MyCallback15(S15 s);
+ public delegate void MyCallback16(S16 s);
+ public delegate void MyCallback17(S17 s);
+ public delegate void MyCallback18(S18 s);
+ public delegate void MyCallback19(S19 s);
+ public delegate void MyCallback20(S20 s);
+
+/* These tests are not working on non Windows CoreCLR. Enable this when GH Issue #2076 is resolved.
+ public delegate void MyCallback28(S28 s);
+ public delegate void MyCallback29(S29 s);
+ Enable this when GH Issue #2076 is resolved. */
+ public delegate void MyCallback30(S30 s1, S30 s2, S30 s3);
+
+ [DllImport("jitstructtests_lib")]
+ public static extern void InvokeCallback1(MyCallback1 callback, S1 s);
+
+ [DllImport("jitstructtests_lib")]
+ public static extern void InvokeCallback2(MyCallback2 callback, S2 s);
+
+ [DllImport("jitstructtests_lib")]
+ public static extern void InvokeCallback3(MyCallback3 callback, S3 s);
+
+ [DllImport("jitstructtests_lib")]
+ public static extern void InvokeCallback4(MyCallback4 callback, S4 s);
+
+ [DllImport("jitstructtests_lib")]
+ public static extern void InvokeCallback5(MyCallback5 callback, S5 s);
+
+ [DllImport("jitstructtests_lib")]
+ public static extern void InvokeCallback6(MyCallback6 callback, S6 s);
+
+ [DllImport("jitstructtests_lib")]
+ public static extern void InvokeCallback7(MyCallback7 callback, S7 s);
+
+ [DllImport("jitstructtests_lib")]
+ public static extern void InvokeCallback8(MyCallback8 callback, S8 s);
+
+ [DllImport("jitstructtests_lib")]
+ public static extern void InvokeCallback9(MyCallback9 callback, S9 s);
+
+ [DllImport("jitstructtests_lib")]
+ public static extern void InvokeCallback10(MyCallback10 callback, S10 s);
+
+ [DllImport("jitstructtests_lib")]
+ public static extern void InvokeCallback11(MyCallback11 callback, S11 s);
+
+ [DllImport("jitstructtests_lib")]
+ public static extern void InvokeCallback12(MyCallback12 callback, S12 s);
+
+ [DllImport("jitstructtests_lib")]
+ public static extern void InvokeCallback13(MyCallback13 callback, S13 s);
+
+ [DllImport("jitstructtests_lib")]
+ public static extern void InvokeCallback14(MyCallback14 callback, S14 s);
+
+ [DllImport("jitstructtests_lib")]
+ public static extern void InvokeCallback15(MyCallback15 callback, S15 s);
+
+ [DllImport("jitstructtests_lib")]
+ public static extern void InvokeCallback16(MyCallback16 callback, S16 s);
+
+ [DllImport("jitstructtests_lib")]
+ public static extern void InvokeCallback17(MyCallback17 callback, S17 s);
+
+ [DllImport("jitstructtests_lib")]
+ public static extern void InvokeCallback18(MyCallback18 callback, S18 s);
+
+ [DllImport("jitstructtests_lib")]
+ public static extern void InvokeCallback19(MyCallback19 callback, S19 s);
+
+ [DllImport("jitstructtests_lib")]
+ public static extern void InvokeCallback20(MyCallback20 callback, S20 s);
+/* These tests are not working on non Windows CoreCLR. Enable this when GH Issue #2076 is resolved.
+
+ [DllImport("jitstructtests_lib")]
+ public static extern void InvokeCallback28(MyCallback28 callback, S28 s);
+
+ [DllImport("jitstructtests_lib")]
+ public static extern void InvokeCallback29(MyCallback29 callback, S29 s);
+ Enable this when GH Issue #2076 is resolved. */
+ [DllImport("jitstructtests_lib")]
+ public static extern void InvokeCallback30(MyCallback30 callback, S30 s1, S30 s2, S30 s3);
+
+ [DllImport("jitstructtests_lib")]
+ public static extern S1 InvokeCallback1R(MyCallback1 callback, S1 s);
+
+ [DllImport("jitstructtests_lib")]
+ public static extern S2 InvokeCallback2R(MyCallback2 callback, S2 s);
+
+ [DllImport("jitstructtests_lib")]
+ public static extern S3 InvokeCallback3R(MyCallback3 callback, S3 s);
+
+ [DllImport("jitstructtests_lib")]
+ public static extern S4 InvokeCallback4R(MyCallback4 callback, S4 s);
+
+ [DllImport("jitstructtests_lib")]
+ public static extern S5 InvokeCallback5R(MyCallback5 callback, S5 s);
+
+ [DllImport("jitstructtests_lib")]
+ public static extern S6 InvokeCallback6R(MyCallback6 callback, S6 s);
+
+ [DllImport("jitstructtests_lib")]
+ public static extern S7 InvokeCallback7R(MyCallback7 callback, S7 s);
+
+ [DllImport("jitstructtests_lib")]
+ public static extern S8 InvokeCallback8R(MyCallback8 callback, S8 s);
+
+ [DllImport("jitstructtests_lib")]
+ public static extern S9 InvokeCallback9R(MyCallback9 callback, S9 s);
+
+ [DllImport("jitstructtests_lib")]
+ public static extern S10 InvokeCallback10R(MyCallback10 callback, S10 s);
+
+ [DllImport("jitstructtests_lib")]
+ public static extern S11 InvokeCallback11R(MyCallback11 callback, S11 s);
+
+ [DllImport("jitstructtests_lib")]
+ public static extern S12 InvokeCallback12R(MyCallback12 callback, S12 s);
+
+ [DllImport("jitstructtests_lib")]
+ public static extern S13 InvokeCallback13R(MyCallback13 callback, S13 s);
+
+ [DllImport("jitstructtests_lib")]
+ public static extern S14 InvokeCallback14R(MyCallback14 callback, S14 s);
+
+ [DllImport("jitstructtests_lib")]
+ public static extern S15 InvokeCallback15R(MyCallback15 callback, S15 s);
+
+ [DllImport("jitstructtests_lib")]
+ public static extern S16 InvokeCallback16R(MyCallback16 callback, S16 s);
+
+ [DllImport("jitstructtests_lib")]
+ public static extern S17 InvokeCallback17R(MyCallback17 callback, S17 s);
+
+ [DllImport("jitstructtests_lib")]
+ public static extern S18 InvokeCallback18R(MyCallback18 callback, S18 s);
+
+ [DllImport("jitstructtests_lib")]
+ public static extern S19 InvokeCallback19R(MyCallback19 callback, S19 s);
+
+ [DllImport("jitstructtests_lib")]
+ public static extern S20 InvokeCallback20R(MyCallback20 callback, S20 s);
+/* These tests are not working on non Windows CoreCLR. Enable this when GH Issue #2076 is resolved.
+
+ [DllImport("jitstructtests_lib")]
+ public static extern S28 InvokeCallback28R(MyCallback28 callback, S28 s);
+
+ [DllImport("jitstructtests_lib")]
+ public static extern S29 InvokeCallback29R(MyCallback29 callback, S29 s);
+ Enable this when GH Issue #2076 is resolved. */
+ static public int Main1()
+ {
+ Program3 p = new Program3();
+ S1 s1 = new S1();
+ s1.x = 1;
+ s1.y = 2;
+ s1.z = 3;
+ s1.w = 4;
+
+ InvokeCallback1((par) => {
+ Console.WriteLine("S1: {0}, {1}, {2}, {3}", par.x, par.y, par.z, par.w);
+ if (par.x != 1 || par.y != 2 || par.z != 3 || par.w != 4)
+ {
+ throw new System.Exception();
+ }
+ }, s1);
+
+ S2 s2;
+ s2.x = 1;
+ s2.y = 2;
+ s2.z = 3;
+ InvokeCallback2((par) => {
+ Console.WriteLine("S2: {0}, {1}, {2}", par.x, par.y, par.z);
+ if (par.x != 1 || par.y != 2 || par.z != 3)
+ {
+ throw new System.Exception();
+ }
+ }, s2);
+
+ S3 s3;
+ s3.x = 1;
+ s3.y = 2;
+ s3.z = 3;
+ InvokeCallback3((par) => {
+ Console.WriteLine("S3: {0}, {1}, {2}", par.x, par.y, par.z);
+ if (par.x != 1 || par.y != 2 || par.z != 3)
+ {
+ throw new System.Exception();
+ }
+ }, s3);
+
+ S4 s4;
+ s4.x = 1;
+ s4.y = 2;
+ InvokeCallback4((par) => {
+ Console.WriteLine("S4: {0}, {1}", par.x, par.y);
+ if (par.x != 1 || par.y != 2)
+ {
+ throw new System.Exception();
+ }
+ }, s4);
+
+ S5 s5;
+ s5.x = 1;
+ s5.y = 2;
+ InvokeCallback5((par) => {
+ Console.WriteLine("S5: {0}, {1}", par.x, par.y);
+ if (par.x != 1 || par.y != 2)
+ {
+ throw new System.Exception();
+ }
+ }, s5);
+
+ S6 s6;
+ s6.x = 1;
+ s6.y = 2;
+ s6.z = 3;
+ s6.w = 4;
+ InvokeCallback6((par) => {
+ Console.WriteLine("S6: {0}, {1}, {2}, {3}", par.x, par.y, par.z, par.w);
+ if (par.x != 1 || par.y != 2 || par.z != 3 || par.w != 4)
+ {
+ throw new System.Exception();
+ }
+ }, s6);
+
+ S7 s7;
+ s7.x = 1;
+ s7.y = 2;
+ s7.z = 3;
+ InvokeCallback7((par) => {
+ Console.WriteLine("S7: {0}, {1}, {2}", par.x, par.y, par.z);
+ if (par.x != 1 || par.y != 2 || par.z != 3)
+ {
+ throw new System.Exception();
+ }
+ }, s7);
+
+ S8 s8;
+ s8.x = 1;
+ s8.y = 2;
+ InvokeCallback8((par) => {
+ Console.WriteLine("S8: {0}, {1}", par.x, par.y);
+ if (par.x != 1 || par.y != 2)
+ {
+ throw new System.Exception();
+ }
+ }, s8);
+
+ S9 s9;
+ s9.x = 1;
+ s9.y = 2;
+ s9.z = 3;
+ s9.w = 4;
+ InvokeCallback9((par) => {
+ Console.WriteLine("S9: {0}, {1}, {2}, {3}", par.x, par.y, par.z, par.w);
+ if (par.x != 1 || par.y != 2 || par.z != 3 || par.w != 4)
+ {
+ throw new System.Exception();
+ }
+ }, s9);
+
+ S10 s10;
+ s10.a = 1;
+ s10.b = 2;
+ s10.c = 3;
+ s10.d = 4;
+ s10.e = 5;
+ s10.f = 6;
+ s10.g = 7;
+ s10.h = 8;
+ InvokeCallback10((par) => {
+ Console.WriteLine("S10: {0}, {1}, {2}, {3}, {4}, {5}, {6}, {7}", par.a, par.b, par.c, par.d, par.e, par.f, par.g, par.h);
+ if (par.a != 1 || par.b != 2 || par.c != 3 || par.d != 4 ||
+ par.e != 5 || par.f != 6 || par.g != 7 || par.h != 8)
+ {
+ throw new System.Exception();
+ }
+ }, s10);
+
+ S11 s11;
+ s11.a = 1;
+ s11.b = 2;
+ s11.c = 3;
+ s11.d = 4;
+ s11.e = 5;
+ InvokeCallback11((par) => {
+ Console.WriteLine("S11: {0}, {1}, {2}, {3}, {4}", par.a, par.b, par.c, par.d, par.e);
+ if (par.a != 1 || par.b != 2 || par.c != 3 || par.d != 4 || par.e != 5)
+ {
+ throw new System.Exception();
+ }
+ }, s11);
+
+ S12 s12;
+ s12.a = 1;
+ s12.b = 2;
+ s12.c = 3;
+ s12.d = 4;
+ s12.e = 5;
+ s12.f = 6;
+ s12.g = 7;
+ s12.h = 8;
+ s12.i = 9;
+ InvokeCallback12((par) => {
+ Console.WriteLine("S12: {0}, {1}, {2}, {3}, {4}, {5}, {6}, {7}, {8}", par.a, par.b, par.c, par.d, par.e, par.f, par.g, par.h, par.i);
+ if (par.a != 1 || par.b != 2 || par.c != 3 || par.d != 4 ||
+ par.e != 5 || par.f != 6 || par.g != 7 || par.h != 8 || par.i != 9)
+ {
+ throw new System.Exception();
+ }
+ }, s12);
+
+ S13 s13;
+ s13.hasValue = 1;
+ s13.x = 2;
+ InvokeCallback13((par) => {
+ Console.WriteLine("S13: {0}, {1}", par.hasValue, par.x);
+ if (par.hasValue != 1 || par.x != 2)
+ {
+ throw new System.Exception();
+ }
+ }, s13);
+
+ S14 s14;
+ s14.x = 1;
+ s14.y = 2;
+ InvokeCallback14((par) => {
+ Console.WriteLine("S14: {0}, {1}", par.x, par.y);
+ if (par.x != 1 || par.y != 2)
+ {
+ throw new System.Exception();
+ }
+ }, s14);
+
+ S15 s15;
+ s15.a = 1;
+ s15.b = 2;
+ s15.c = 3;
+ s15.d = 4;
+ s15.e = 5;
+ s15.f = 6;
+ s15.g = 7;
+ s15.h = 8;
+ s15.i = 9;
+ InvokeCallback15((par) => {
+ Console.WriteLine("S15: {0}, {1}, {2}, {3}, {4}, {5}, {6}, {7}, {8}", par.a, par.b, par.c, par.d, par.e, par.f, par.g, par.h, par.i);
+ if (par.a != 1 || par.b != 2 || par.c != 3 || par.d != 4 ||
+ par.e != 5 || par.f != 6 || par.g != 7 || par.h != 8 || par.i != 9)
+ {
+ throw new System.Exception();
+ }
+ }, s15);
+
+ S16 s16;
+ s16.x = 1;
+ s16.y = 2;
+ InvokeCallback16((par) => {
+ Console.WriteLine("S16: {0}, {1}", par.x, par.y);
+ if (par.x != 1 || par.y != 2)
+ {
+ throw new System.Exception();
+ }
+ }, s16);
+
+ S17 s17;
+ s17.x = 1;
+ s17.y = 2;
+ InvokeCallback17((par) => {
+ Console.WriteLine("S17: {0}, {1}", par.x, par.y);
+ if (par.x != 1 || par.y != 2)
+ {
+ throw new System.Exception();
+ }
+ }, s17);
+
+ S18 s18;
+ s18.x = 1;
+ s18.y = 2;
+ s18.z = 3;
+ InvokeCallback18((par) => {
+ Console.WriteLine("S18: {0}, {1}, {2}", par.x, par.y, par.z);
+ if (par.x != 1 || par.y != 2 || par.z != 3)
+ {
+ throw new System.Exception();
+ }
+ }, s18);
+
+ S19 s19;
+ s19.x = 1;
+ s19.y = 2;
+ s19.z = 3;
+ s19.w = 4;
+ InvokeCallback19((par) => {
+ Console.WriteLine("S19: {0}, {1}, {2}, {3}", par.x, par.y, par.z, par.w);
+ if (par.x != 1 || par.y != 2 || par.z != 3 || par.w != 4)
+ {
+ throw new System.Exception();
+ }
+ }, s19);
+
+ S20 s20;
+ s20.x = 1;
+ s20.y = 2;
+ s20.z = 3;
+ s20.w = 4;
+ InvokeCallback20((par) => {
+ Console.WriteLine("S20: {0}, {1}, {2}, {3}", par.x, par.y, par.z, par.w);
+ if (par.x != 1 || par.y != 2 || par.z != 3 || par.w != 4)
+ {
+ throw new System.Exception();
+ }
+ }, s20);
+
+/* These tests are not working on non Windows CoreCLR. Enable this when GH Issue #2076 is resolved.
+ TestClass testClass = new TestClass();
+ S28 s28;
+ s28.x = null;
+ s28.y = 1;
+
+ InvokeCallback28((par) => {
+ Console.WriteLine("S28: {0}, {1}", par.x == null ? "Null" : "Not null", par.y);
+ if (par.x != null || par.y != 1)
+ {
+ throw new System.Exception();
+ }
+ }, s28);
+
+ s28.x = testClass;
+ s28.y = 5;
+
+ InvokeCallback28((par) => {
+ Console.WriteLine("S28: {0}, {1}", par.x == null ? "Null" : "Not null", par.y);
+ if (par.x != testClass || par.y != 5)
+ {
+ throw new System.Exception();
+ }
+ }, s28);
+
+ S29 s29;
+ s29.x = 1;
+ s29.y = null;
+
+ InvokeCallback29((par) => {
+ Console.WriteLine("S29: {0}, {1}", par.x, par.y == null ? "Null" : "Not null");
+ if (par.x != 1 || par.y != null)
+ {
+ throw new System.Exception();
+ }
+ }, s29);
+
+ s29.x = 5;
+ s29.y = testClass;
+
+ InvokeCallback29((par) => {
+ Console.WriteLine("S29: {0}, {1}", par.x, par.y == null ? "Null" : "Not null");
+ if (par.x != 5 || par.y != testClass)
+ {
+ throw new System.Exception();
+ }
+ }, s29);
+ Enable this when GH Issue #2076 is resolved. */
+ S30 s30;
+ s30.x = 1;
+ s30.y = 2;
+
+ S30 s30_2;
+ s30_2.x = 3;
+ s30_2.y = 4;
+
+ S30 s30_3;
+ s30_3.x = 5;
+ s30_3.y = 6;
+
+ // Program p = new Program();
+ InvokeCallback30(p.Test30, s30, s30_2, s30_3);
+ S1 s1r = InvokeCallback1R((par) => {
+ Console.WriteLine("S1: {0}, {1}, {2}, {3}", par.x, par.y, par.z, par.w);
+ if (par.x != 1 || par.y != 2 || par.z != 3 || par.w != 4)
+ {
+ throw new System.Exception();
+ }
+
+ }, s1);
+ Console.WriteLine("S1R: {0}, {1}, {2}, {3}", s1r.x, s1r.y, s1r.z, s1r.w);
+ if (s1r.x != 1 || s1r.y != 2 || s1r.z != 3 || s1r.w != 4)
+ {
+ throw new System.Exception();
+ }
+
+ S2 s2r = InvokeCallback2R((par) => {
+ Console.WriteLine("S2: {0}, {1}, {2}", par.x, par.y, par.z);
+ if (par.x != 1 || par.y != 2 || par.z != 3)
+ {
+ throw new System.Exception();
+ }
+ }, s2);
+ Console.WriteLine("S2R: {0}, {1}, {2}", s2r.x, s2r.y, s2r.z);
+ if (s2r.x != 1 || s2r.y != 2 || s2r.z != 3)
+ {
+ throw new System.Exception();
+ }
+
+ S3 s3r = InvokeCallback3R((par) => {
+ Console.WriteLine("S3: {0}, {1}, {2}", par.x, par.y, par.z);
+ if (par.x != 1 || par.y != 2 || par.z != 3)
+ {
+ throw new System.Exception();
+ }
+ }, s3);
+ Console.WriteLine("S3R: {0}, {1}, {2}", s3r.x, s3r.y, s3r.z);
+ if (s3r.x != 1 || s3r.y != 2 || s3r.z != 3)
+ {
+ throw new System.Exception();
+ }
+
+ S4 s4r = InvokeCallback4R((par) => {
+ Console.WriteLine("S4: {0}, {1}", par.x, par.y);
+ if (par.x != 1 || par.y != 2)
+ {
+ throw new System.Exception();
+ }
+ }, s4);
+ Console.WriteLine("S4R: {0}, {1}", s4r.x, s4r.y);
+ if (s4r.x != 1 || s4r.y != 2)
+ {
+ throw new System.Exception();
+ }
+
+ S5 s5r = InvokeCallback5R((par) => {
+ Console.WriteLine("S5: {0}, {1}", par.x, par.y);
+ if (par.x != 1 || par.y != 2)
+ {
+ throw new System.Exception();
+ }
+ }, s5);
+ Console.WriteLine("S5R: {0}, {1}", s5r.x, s5r.y);
+ if (s5r.x != 1 || s5r.y != 2)
+ {
+ throw new System.Exception();
+ }
+
+ S6 s6r = InvokeCallback6R((par) => {
+ Console.WriteLine("S6: {0}, {1}, {2}, {3}", par.x, par.y, par.z, par.w);
+ if (par.x != 1 || par.y != 2 || par.z != 3 || par.w != 4)
+ {
+ throw new System.Exception();
+ }
+ }, s6);
+ Console.WriteLine("S6R: {0}, {1}, {2}, {3}", s6r.x, s6r.y, s6r.z, s6r.w);
+ if (s6r.x != 1 || s6r.y != 2 || s6r.z != 3 || s6r.w != 4)
+ {
+ throw new System.Exception();
+ }
+
+ S7 s7r = InvokeCallback7R((par) => {
+ Console.WriteLine("S7: {0}, {1}, {2}", par.x, par.y, par.z);
+ if (par.x != 1 || par.y != 2 || par.z != 3)
+ {
+ throw new System.Exception();
+ }
+ }, s7);
+ Console.WriteLine("S7R: {0}, {1}, {2}", s7r.x, s7r.y, s7r.z);
+ if (s7r.x != 1 || s7r.y != 2 || s7r.z != 3)
+ {
+ throw new System.Exception();
+ }
+
+ S8 s8r = InvokeCallback8R((par) => {
+ Console.WriteLine("S8: {0}, {1}", par.x, par.y);
+ if (par.x != 1 || par.y != 2)
+ {
+ throw new System.Exception();
+ }
+ }, s8);
+ Console.WriteLine("S8R: {0}, {1}", s8r.x, s8r.y);
+ if (s8r.x != 1 || s8r.y != 2)
+ {
+ throw new System.Exception();
+ }
+
+ S9 s9r = InvokeCallback9R((par) => {
+ Console.WriteLine("S9: {0}, {1}, {2}, {3}", par.x, par.y, par.z, par.w);
+ if (par.x != 1 || par.y != 2 || par.z != 3 || par.w != 4)
+ {
+ throw new System.Exception();
+ }
+ }, s9);
+ Console.WriteLine("S9R: {0}, {1}, {2}, {3}", s9r.x, s9r.y, s9r.z, s9r.w);
+ if (s9r.x != 1 || s9r.y != 2 || s9r.z != 3 || s9r.w != 4)
+ {
+ throw new System.Exception();
+ }
+
+ S10 s10r = InvokeCallback10R((par) => {
+ Console.WriteLine("S10: {0}, {1}, {2}, {3}, {4}, {5}, {6}, {7}", par.a, par.b, par.c, par.d, par.e, par.f, par.g, par.h);
+ if (par.a != 1 || par.b != 2 || par.c != 3 || par.d != 4 ||
+ par.e != 5 || par.f != 6 || par.g != 7 || par.h != 8)
+ {
+ throw new System.Exception();
+ }
+ }, s10);
+ Console.WriteLine("S10R: {0}, {1}, {2}, {3}, {4}, {5}, {6}, {7}", s10r.a, s10r.b, s10r.c, s10r.d, s10r.e, s10r.f, s10r.g, s10r.h);
+ if (s10r.a != 1 || s10r.b != 2 || s10r.c != 3 || s10r.d != 4 ||
+ s10r.e != 5 || s10r.f != 6 || s10r.g != 7 || s10r.h != 8)
+ {
+ throw new System.Exception();
+ }
+
+ S11 s11r = InvokeCallback11R((par) => {
+ Console.WriteLine("S11: {0}, {1}, {2}, {3}, {4}", par.a, par.b, par.c, par.d, par.e);
+ if (par.a != 1 || par.b != 2 || par.c != 3 || par.d != 4 || par.e != 5)
+ {
+ throw new System.Exception();
+ }
+ }, s11);
+ Console.WriteLine("S11R: {0}, {1}, {2}, {3}, {4}", s11r.a, s11r.b, s11r.c, s11r.d, s11r.e);
+ if (s11r.a != 1 || s11r.b != 2 || s11r.c != 3 || s11r.d != 4 || s11r.e != 5)
+ {
+ throw new System.Exception();
+ }
+
+ S12 s12r = InvokeCallback12R((par) => {
+ Console.WriteLine("S12: {0}, {1}, {2}, {3}, {4}, {5}, {6}, {7}, {8}", par.a, par.b, par.c, par.d, par.e, par.f, par.g, par.h, par.i);
+ if (par.a != 1 || par.b != 2 || par.c != 3 || par.d != 4 ||
+ par.e != 5 || par.f != 6 || par.g != 7 || par.h != 8 || par.i != 9)
+ {
+ throw new System.Exception();
+ }
+ }, s12);
+ Console.WriteLine("S12R: {0}, {1}, {2}, {3}, {4}, {5}, {6}, {7}, {8}", s12r.a, s12r.b, s12r.c, s12r.d, s12r.e, s12r.f, s12r.g, s12r.h, s12r.i);
+ if (s12r.a != 1 || s12r.b != 2 || s12r.c != 3 || s12r.d != 4 ||
+ s12r.e != 5 || s12r.f != 6 || s12r.g != 7 || s12r.h != 8 || s12r.i != 9)
+ {
+ throw new System.Exception();
+ }
+
+ S13 s13r = InvokeCallback13R((par) => {
+ Console.WriteLine("S13: {0}, {1}", par.hasValue, par.x);
+ if (par.hasValue != 1 || par.x != 2)
+ {
+ throw new System.Exception();
+ }
+ }, s13);
+ Console.WriteLine("S13R: {0}, {1}", s13r.hasValue, s13r.x);
+ if (s13r.hasValue != 1 || s13r.x != 2)
+ {
+ throw new System.Exception();
+ }
+
+ S14 s14r = InvokeCallback14R((par) => {
+ Console.WriteLine("S14: {0}, {1}", par.x, par.y);
+ if (par.x != 1 || par.y != 2)
+ {
+ throw new System.Exception();
+ }
+ }, s14);
+ Console.WriteLine("S14R: {0}, {1}", s14r.x, s14r.y);
+ if (s14r.x != 1 || s14r.y != 2)
+ {
+ throw new System.Exception();
+ }
+
+ S15 s15r = InvokeCallback15R((par) => {
+ Console.WriteLine("S15: {0}, {1}, {2}, {3}, {4}, {5}, {6}, {7}, {8}", par.a, par.b, par.c, par.d, par.e, par.f, par.g, par.h, par.i);
+ if (par.a != 1 || par.b != 2 || par.c != 3 || par.d != 4 ||
+ par.e != 5 || par.f != 6 || par.g != 7 || par.h != 8 || par.i != 9)
+ {
+ throw new System.Exception();
+ }
+ }, s15);
+ Console.WriteLine("S15R: {0}, {1}, {2}, {3}, {4}, {5}, {6}, {7}, {8}", s15r.a, s15r.b, s15r.c, s15r.d, s15r.e, s15r.f, s15r.g, s15r.h, s15r.i);
+ if (s15r.a != 1 || s15r.b != 2 || s15r.c != 3 || s15r.d != 4 ||
+ s15r.e != 5 || s15r.f != 6 || s15r.g != 7 || s15r.h != 8 || s15r.i != 9)
+ {
+ throw new System.Exception();
+ }
+
+ S16 s16r = InvokeCallback16R((par) => {
+ Console.WriteLine("S16: {0}, {1}", par.x, par.y);
+ if (par.x != 1 || par.y != 2)
+ {
+ throw new System.Exception();
+ }
+ }, s16);
+ Console.WriteLine("S16R: {0}, {1}", s16r.x, s16r.y);
+ if (s16r.x != 1 || s16r.y != 2)
+ {
+ throw new System.Exception();
+ }
+
+ S17 s17r = InvokeCallback17R((par) => {
+ Console.WriteLine("S17: {0}, {1}", par.x, par.y);
+ if (par.x != 1 || par.y!= 2)
+ {
+ throw new System.Exception();
+ }
+ }, s17);
+ Console.WriteLine("S17R: {0}, {1}", s17r.x, s17r.y);
+ if (s17r.x != 1 || s17r.y != 2)
+ {
+ throw new System.Exception();
+ }
+
+ S18 s18r = InvokeCallback18R((par) => {
+ Console.WriteLine("S18: {0}, {1}, {2}", par.x, par.y, par.z);
+ if (par.x != 1 || par.y != 2 || par.z != 3)
+ {
+ throw new System.Exception();
+ }
+ }, s18);
+ Console.WriteLine("S18R: {0}, {1}, {2}", s18r.x, s18r.y, s18r.z);
+ if (s18r.x != 1 || s18r.y != 2 || s18r.z != 3)
+ {
+ throw new System.Exception();
+ }
+
+ S19 s19r = InvokeCallback19R((par) => {
+ Console.WriteLine("S19: {0}, {1}, {2}, {3}", par.x, par.y, par.z, par.w);
+ if (par.x != 1 || par.y != 2 || par.z != 3 || par.w != 4)
+ {
+ throw new System.Exception();
+ }
+ }, s19);
+ Console.WriteLine("S19R: {0}, {1}, {2}, {3}", s19r.x, s19r.y, s19r.z, s19r.w);
+ if (s19r.x != 1 || s19r.y != 2 || s19r.z != 3 || s19r.w != 4)
+ {
+ throw new System.Exception();
+ }
+
+ S20 s20r = InvokeCallback20R((par) => {
+ Console.WriteLine("S20: {0}, {1}, {2}, {3}", par.x, par.y, par.z, par.w);
+ if (par.x != 1 || par.y != 2 || par.z != 3 || par.w != 4)
+ {
+ throw new System.Exception();
+ }
+ }, s20);
+ Console.WriteLine("S20R: {0}, {1}, {2}, {3}", s20r.x, s20r.y, s20r.z, s20r.w);
+ if (s20r.x != 1 || s20r.y != 2 || s20r.z != 3 || s20r.w != 4)
+ {
+ throw new System.Exception();
+ }
+/* These tests are not working on non Windows CoreCLR. Enable this when GH Issue #2076 is resolved.
+ s28.x = null;
+ S28 s28r = InvokeCallback28R((par) => {
+ Console.WriteLine("S28: {0}, {1}", par.x == null ? "Null" : "Not null", par.y);
+ if (par.x == null || par.y != 5)
+ {
+ throw new System.Exception();
+ }
+ }, s28);
+ Console.WriteLine("S28R: {0}, {1}", s28r.x == null ? "Null" : "Not null", s28r.y);
+ if (s28r.x == null || s28r.y != 5)
+ {
+ throw new System.Exception();
+ }
+
+ s28.x = testClass;
+ s28.y = 5;
+
+ s28r = InvokeCallback28R((par) => {
+ Console.WriteLine("S28: {0}, {1}", par.x == null ? "Null" : "Not null", par.y);
+ if (par.x != testClass || par.y != 5)
+ {
+ throw new System.Exception();
+ }
+ }, s28);
+ Console.WriteLine("S28R: {0}, {1}", s28r.x == null ? "Null" : "Not null", s28r.y);
+ if (s28r.x != testClass || s28r.y != 5)
+ {
+ throw new System.Exception();
+ }
+
+ s29.y = null;
+ S29 s29r = InvokeCallback29R((par) => {
+ Console.WriteLine("S29: {0}, {1}", par.x, par.y == null ? "Null" : "Not null");
+ if (par.x != 5 || par.y == null)
+ {
+ throw new System.Exception();
+ }
+ }, s29);
+ Console.WriteLine("S29R: {0}, {1}", s29r.x, s29r.y == null ? "Null" : "Not null");
+ if (s29r.x != 5 || s29r.y == null)
+ {
+ throw new System.Exception();
+ }
+
+ s29.x = 5;
+ s29.y = testClass;
+ s29r = InvokeCallback29R((par) => {
+ Console.WriteLine("S29: {0}, {1}", par.x, par.y == null ? "Null" : "Not null");
+ if (par.x != 5 || par.y != testClass)
+ {
+ throw new System.Exception();
+ }
+ }, s29);
+ Console.WriteLine("S29R: {0}, {1}", s29r.x, s29r.y == null ? "Null" : "Not null");
+ if (s29r.x != 5 || s29r.y != testClass)
+ {
+ throw new System.Exception();
+ }
+ Enable this when GH Issue #2076 is resolved. */
+ return 100;
+ }
+
+ void Test30(S30 par1, S30 par2, S30 par3)
+ {
+ Console.WriteLine("S30: {0}, {1}, {2}, {3}, {4}, {5}", par1.x, par1.y, par2.x, par2.y, par3.x, par3.y);
+ if (par1.x != 1 || par1.y != 2 || par2.x != 3 || par2.y != 4 ||
+ par3.x != 5 || par3.y != 6)
+ {
+ throw new System.Exception();
+ }
+ }
+ }
+}
diff --git a/tests/src/JIT/Methodical/structs/systemvbringup/structrettest.cs b/tests/src/JIT/Methodical/structs/systemvbringup/structrettest.cs
new file mode 100644
index 0000000000..a5ebce5597
--- /dev/null
+++ b/tests/src/JIT/Methodical/structs/systemvbringup/structrettest.cs
@@ -0,0 +1,155 @@
+using System;
+using System.Runtime.CompilerServices;
+
+namespace structinreg
+{
+ public class Foo3
+ {
+ public int iFoo;
+ }
+
+ struct Test30
+ {
+ public int i1;
+ public int i2;
+ }
+
+ struct Test31
+ {
+ public Foo3 foo1;
+ }
+
+ struct Test32
+ {
+ public int i1;
+ public Foo3 foo1;
+ }
+
+ struct Test33
+ {
+ public Foo3 foo1;
+ public Foo3 foo2;
+ }
+
+ struct Test34
+ {
+ public int i1;
+ public int i2;
+ public float f1;
+ }
+
+
+ class Program0
+ {
+ [MethodImplAttribute(MethodImplOptions.NoInlining)]
+ Test30 test1()
+ {
+ Test30 test1 = default(Test30);
+ test1.i1 = 1;
+ test1.i2 = 2;
+
+ return test1;
+ }
+
+ [MethodImplAttribute(MethodImplOptions.NoInlining)]
+ Test31 test2()
+ {
+ Test31 test2 = default(Test31);
+ Foo3 foo = new Foo3();
+ foo.iFoo = 3;
+ test2.foo1 = foo;
+ return test2;
+ }
+
+ [MethodImplAttribute(MethodImplOptions.NoInlining)]
+ Test32 test3()
+ {
+ Test32 test3 = default(Test32);
+ Foo3 foo = new Foo3();
+ foo.iFoo = 4;
+ test3.foo1 = foo;
+ test3.i1 = 3;
+ return test3;
+ }
+
+ [MethodImplAttribute(MethodImplOptions.NoInlining)]
+ Test33 test4()
+ {
+ Test33 test4 = default(Test33);
+ Foo3 foo1 = new Foo3();
+ Foo3 foo2 = new Foo3();
+ foo1.iFoo = 5;
+ foo2.iFoo = 6;
+ test4.foo1 = foo1;
+ test4.foo2 = foo2;
+ return test4;
+ }
+
+ [MethodImplAttribute(MethodImplOptions.NoInlining)]
+ Test34 test5(Test34 t5)
+ {
+ float fRes = t5.i1 + t5.i2 + t5.f1;
+ Console.WriteLine("From Test5 members: {0} {1} {2} {3}", t5.i1, t5.i2, t5.f1, fRes);
+ Console.WriteLine("From Test5: Res {0}", fRes);
+ if (fRes != 33.0)
+ {
+ throw new Exception("Failed inside test5 test!");
+ }
+
+ Test34 tst5 = default(Test34);
+ tst5.i1 = 13;
+ tst5.i2 = 14;
+ tst5.f1 = 15;
+ return tst5;
+ }
+
+ [MethodImplAttribute(MethodImplOptions.NoInlining)]
+ public static int Main1()
+ {
+ Program0 p = new Program0();
+
+ Test30 t1Res = p.test1();
+ Console.WriteLine("test1 Result: {0}", t1Res.i1 + t1Res.i2);
+ if ((t1Res.i1 + t1Res.i2) != 3)
+ {
+ throw new Exception("Failed test1 test!");
+ }
+
+ Test31 t2Res = p.test2();
+ Console.WriteLine("test2 Result: {0}", t2Res.foo1.iFoo);
+ if (t2Res.foo1.iFoo != 3)
+ {
+ throw new Exception("Failed test2 test!");
+ }
+
+ Test32 t3Res = p.test3();
+ Console.WriteLine("test3 Result: {0}", t3Res.i1 + t3Res.foo1.iFoo);
+ if ((t3Res.i1 + t3Res.foo1.iFoo) != 7) // Adding HashCodes should be != 0.
+ {
+ throw new Exception("Failed test3 test!");
+ }
+
+ Test33 t4Res = p.test4();
+ Console.WriteLine("test4 Result: {0}", t4Res.foo1.iFoo + t4Res.foo2.iFoo);
+ if ((t4Res.foo1.iFoo + t4Res.foo2.iFoo) != 11)
+ {
+ throw new Exception("Failed test4 test!");
+ }
+
+ Test34 test5 = default(Test34);
+ test5.i1 = 10;
+ test5.i2 = 11;
+ test5.f1 = 12;
+
+ Test34 t5Res = p.test5(test5);
+
+ Console.WriteLine("test5 Result: {0}", t5Res.i1 + t5Res.i2 + t5Res.f1);
+ if ((t5Res.i1 + t5Res.i2 + t5Res.f1) != 42.0)
+ {
+ throw new Exception("Failed test5 test!");
+ }
+
+ return 100;
+ }
+ }
+} \ No newline at end of file