summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorBengu Li <beli@microsoft.com>2015-06-03 15:13:55 -0700
committerBengu Li <beli@microsoft.com>2015-06-03 15:13:55 -0700
commitca2c24c993010e2e94984f829d6c14caf95fd2e2 (patch)
tree03fec966fb16f2cccc4afb2e359cc1e1589b0f7f /tests
parent9da965b352204db60df3e37c4db8ae82386a0f08 (diff)
parent54330bb0514211bd7b60162cb1fc8d9dd5835820 (diff)
downloadcoreclr-ca2c24c993010e2e94984f829d6c14caf95fd2e2.tar.gz
coreclr-ca2c24c993010e2e94984f829d6c14caf95fd2e2.tar.bz2
coreclr-ca2c24c993010e2e94984f829d6c14caf95fd2e2.zip
Merge pull request #1088 from libengu/AddDev11Test
Add multiple smaller test directories under JIT/Regression
Diffstat (limited to 'tests')
-rw-r--r--tests/src/AllTestProjects.sln347
-rw-r--r--tests/src/JIT/Regression/CLR-x86-EJIT/V1-M09.5-PDC/b12008/app.config27
-rw-r--r--tests/src/JIT/Regression/CLR-x86-EJIT/V1-M09.5-PDC/b12008/b12008.cs28
-rw-r--r--tests/src/JIT/Regression/CLR-x86-EJIT/V1-M09.5-PDC/b12008/b12008.csproj19
-rw-r--r--tests/src/JIT/Regression/CLR-x86-EJIT/V1-M09.5-PDC/b12008/cs_template.proj42
-rw-r--r--tests/src/JIT/Regression/CLR-x86-EJIT/V1-M09.5-PDC/b12008/packages.config8
-rw-r--r--tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b40089/app.config27
-rw-r--r--tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b40089/b40089.cs22
-rw-r--r--tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b40089/b40089.csproj19
-rw-r--r--tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b40089/cs_template.proj42
-rw-r--r--tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b40089/packages.config8
-rw-r--r--tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b40138/app.config27
-rw-r--r--tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b40138/b40138.cs33
-rw-r--r--tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b40138/b40138.csproj19
-rw-r--r--tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b40138/cs_template.proj42
-rw-r--r--tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b40138/packages.config8
-rw-r--r--tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b45679/app.config27
-rw-r--r--tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b45679/b45679.cs28
-rw-r--r--tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b45679/b45679.csproj19
-rw-r--r--tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b45679/cs_template.proj42
-rw-r--r--tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b45679/packages.config8
-rw-r--r--tests/src/JIT/Regression/CLR-x86-EJIT/V1-M12-Beta2/b46847/app.config27
-rw-r--r--tests/src/JIT/Regression/CLR-x86-EJIT/V1-M12-Beta2/b46847/b46847.cs28
-rw-r--r--tests/src/JIT/Regression/CLR-x86-EJIT/V1-M12-Beta2/b46847/b46847.csproj19
-rw-r--r--tests/src/JIT/Regression/CLR-x86-EJIT/V1-M12-Beta2/b46847/cs_template.proj42
-rw-r--r--tests/src/JIT/Regression/CLR-x86-EJIT/V1-M12-Beta2/b46847/packages.config8
-rw-r--r--tests/src/JIT/Regression/Dev11/Dev11_457559/Dev11_457559.cs39
-rw-r--r--tests/src/JIT/Regression/Dev11/Dev11_457559/Dev11_457559.csproj19
-rw-r--r--tests/src/JIT/Regression/Dev11/Dev11_457559/app.config27
-rw-r--r--tests/src/JIT/Regression/Dev11/Dev11_457559/cs_template.proj42
-rw-r--r--tests/src/JIT/Regression/Dev11/Dev11_457559/packages.config8
-rw-r--r--tests/src/JIT/Regression/Dev11/Dev11_5437/Dev11_5437.cs34
-rw-r--r--tests/src/JIT/Regression/Dev11/Dev11_5437/Dev11_5437.csproj19
-rw-r--r--tests/src/JIT/Regression/Dev11/Dev11_5437/app.config27
-rw-r--r--tests/src/JIT/Regression/Dev11/Dev11_5437/cs_template.proj42
-rw-r--r--tests/src/JIT/Regression/Dev11/Dev11_5437/packages.config8
-rw-r--r--tests/src/JIT/Regression/Dev11/Dev11_617302/Dev11_617302.cs77
-rw-r--r--tests/src/JIT/Regression/Dev11/Dev11_617302/Dev11_617302.csproj19
-rw-r--r--tests/src/JIT/Regression/Dev11/Dev11_617302/app.config27
-rw-r--r--tests/src/JIT/Regression/Dev11/Dev11_617302/cs_template.proj42
-rw-r--r--tests/src/JIT/Regression/Dev11/Dev11_617302/packages.config8
-rw-r--r--tests/src/JIT/Regression/Dev11/Dev11_646049/Dev11_646049.cs31
-rw-r--r--tests/src/JIT/Regression/Dev11/Dev11_646049/Dev11_646049.csproj19
-rw-r--r--tests/src/JIT/Regression/Dev11/Dev11_646049/app.config27
-rw-r--r--tests/src/JIT/Regression/Dev11/Dev11_646049/cs_template.proj42
-rw-r--r--tests/src/JIT/Regression/Dev11/Dev11_646049/packages.config8
-rw-r--r--tests/src/JIT/Regression/Dev11/DevDiv2_10623/DevDiv2_10623.cs19
-rw-r--r--tests/src/JIT/Regression/Dev11/DevDiv2_10623/DevDiv2_10623.csproj19
-rw-r--r--tests/src/JIT/Regression/Dev11/DevDiv2_10623/app.config27
-rw-r--r--tests/src/JIT/Regression/Dev11/DevDiv2_10623/cs_template.proj42
-rw-r--r--tests/src/JIT/Regression/Dev11/DevDiv2_10623/packages.config8
-rw-r--r--tests/src/JIT/Regression/Dev11/DevDiv2_8863/DevDiv2_8863.cs80
-rw-r--r--tests/src/JIT/Regression/Dev11/DevDiv2_8863/DevDiv2_8863.csproj19
-rw-r--r--tests/src/JIT/Regression/Dev11/DevDiv2_8863/app.config27
-rw-r--r--tests/src/JIT/Regression/Dev11/DevDiv2_8863/cs_template.proj42
-rw-r--r--tests/src/JIT/Regression/Dev11/DevDiv2_8863/packages.config8
-rw-r--r--tests/src/JIT/Regression/Dev11/dev10_94677/app.config27
-rw-r--r--tests/src/JIT/Regression/Dev11/dev10_94677/cs_template.proj42
-rw-r--r--tests/src/JIT/Regression/Dev11/dev10_94677/dev10_94677.csproj19
-rw-r--r--tests/src/JIT/Regression/Dev11/dev10_94677/loopvt.cs102
-rw-r--r--tests/src/JIT/Regression/Dev11/dev10_94677/packages.config8
-rw-r--r--tests/src/JIT/Regression/Dev11/dev11_13912/app.config27
-rw-r--r--tests/src/JIT/Regression/Dev11/dev11_13912/cs_template.proj42
-rw-r--r--tests/src/JIT/Regression/Dev11/dev11_13912/dev11_13912.cs46
-rw-r--r--tests/src/JIT/Regression/Dev11/dev11_13912/dev11_13912.csproj19
-rw-r--r--tests/src/JIT/Regression/Dev11/dev11_13912/packages.config8
-rw-r--r--tests/src/JIT/Regression/Dev11/dev11_165544/app.config27
-rw-r--r--tests/src/JIT/Regression/Dev11/dev11_165544/cs_template.proj42
-rw-r--r--tests/src/JIT/Regression/Dev11/dev11_165544/dev11_165544.csproj19
-rw-r--r--tests/src/JIT/Regression/Dev11/dev11_165544/packages.config8
-rw-r--r--tests/src/JIT/Regression/Dev11/dev11_165544/seqpts.cs51
-rw-r--r--tests/src/JIT/Regression/Dev14/DevDiv_876169/DevDiv_876169.cs23
-rw-r--r--tests/src/JIT/Regression/Dev14/DevDiv_876169/DevDiv_876169.csproj19
-rw-r--r--tests/src/JIT/Regression/Dev14/DevDiv_876169/app.config27
-rw-r--r--tests/src/JIT/Regression/Dev14/DevDiv_876169/cs_template.proj42
-rw-r--r--tests/src/JIT/Regression/Dev14/DevDiv_876169/packages.config8
-rw-r--r--tests/src/JIT/Regression/JitBlue/DevDiv_794115/DevDiv_794115.cs26
-rw-r--r--tests/src/JIT/Regression/JitBlue/DevDiv_794115/DevDiv_794115.csproj19
-rw-r--r--tests/src/JIT/Regression/JitBlue/DevDiv_794115/app.config27
-rw-r--r--tests/src/JIT/Regression/JitBlue/DevDiv_794115/cs_template.proj42
-rw-r--r--tests/src/JIT/Regression/JitBlue/DevDiv_794115/packages.config8
-rw-r--r--tests/src/JIT/Regression/JitBlue/DevDiv_794631/DevDiv_794631.cs45
-rw-r--r--tests/src/JIT/Regression/JitBlue/DevDiv_794631/DevDiv_794631.csproj19
-rw-r--r--tests/src/JIT/Regression/JitBlue/DevDiv_794631/app.config27
-rw-r--r--tests/src/JIT/Regression/JitBlue/DevDiv_794631/cs_template.proj42
-rw-r--r--tests/src/JIT/Regression/JitBlue/DevDiv_794631/packages.config8
-rw-r--r--tests/src/JIT/Regression/JitBlue/DevDiv_815940/DevDiv_815940.cs28
-rw-r--r--tests/src/JIT/Regression/JitBlue/DevDiv_815940/DevDiv_815940.csproj19
-rw-r--r--tests/src/JIT/Regression/JitBlue/DevDiv_815940/app.config27
-rw-r--r--tests/src/JIT/Regression/JitBlue/DevDiv_815940/cs_template.proj42
-rw-r--r--tests/src/JIT/Regression/JitBlue/DevDiv_815940/packages.config8
-rw-r--r--tests/src/JIT/Regression/JitBlue/DevDiv_816617/DevDiv_816617.cs31
-rw-r--r--tests/src/JIT/Regression/JitBlue/DevDiv_816617/DevDiv_816617.csproj19
-rw-r--r--tests/src/JIT/Regression/JitBlue/DevDiv_816617/app.config27
-rw-r--r--tests/src/JIT/Regression/JitBlue/DevDiv_816617/cs_template.proj42
-rw-r--r--tests/src/JIT/Regression/JitBlue/DevDiv_816617/packages.config8
-rw-r--r--tests/src/JIT/Regression/clr-x64-JIT/v4.0/DevDiv34372/DevDiv34372.csproj19
-rw-r--r--tests/src/JIT/Regression/clr-x64-JIT/v4.0/DevDiv34372/app.config27
-rw-r--r--tests/src/JIT/Regression/clr-x64-JIT/v4.0/DevDiv34372/cs_template.proj42
-rw-r--r--tests/src/JIT/Regression/clr-x64-JIT/v4.0/DevDiv34372/overRepLocalOpt.cs67
-rw-r--r--tests/src/JIT/Regression/clr-x64-JIT/v4.0/DevDiv34372/packages.config8
101 files changed, 3105 insertions, 0 deletions
diff --git a/tests/src/AllTestProjects.sln b/tests/src/AllTestProjects.sln
index 2fd591fab4..4feadde554 100644
--- a/tests/src/AllTestProjects.sln
+++ b/tests/src/AllTestProjects.sln
@@ -789,6 +789,104 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "b360587", "JIT\Regression\V
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "b539509", "JIT\Regression\VS-ia64-JIT\V2.0-RTM\b539509\b539509.csproj", "{4161D387-F20B-4288-81EA-F13C2D384DD8}"
EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "clr-x64-JIT", "clr-x64-JIT", "{90C2BB90-87AE-4883-955A-8D1353C940E4}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "v4.0", "v4.0", "{015D1E7C-29FD-4DAF-8202-CA6FEB9B7263}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "DevDiv34372", "DevDiv34372", "{C8CD43B6-E37B-4EB0-BD65-0EB52DC6568F}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DevDiv34372", "JIT\Regression\clr-x64-JIT\v4.0\DevDiv34372\DevDiv34372.csproj", "{501DAA6D-53B9-4A21-AB78-235E6C995FB9}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "CLR-x86-EJIT", "CLR-x86-EJIT", "{1198DC44-486D-457B-B490-5CB0B1BE3525}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "V1-M09.5-PDC", "V1-M09.5-PDC", "{0DAD8937-8E7F-4944-B0D4-189C49F4A188}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "b12008", "b12008", "{007EB358-C8BB-4449-8907-3E83CC7F908A}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "b12008", "JIT\Regression\CLR-x86-EJIT\V1-M09.5-PDC\b12008\b12008.csproj", "{2E7AFA2D-C20E-42E1-B4C8-9C8C30A09F47}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "V1-M11-Beta1", "V1-M11-Beta1", "{4521C60C-6F3A-4D87-975B-524236351FEB}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "b40089", "b40089", "{DB9E6FF2-A4D8-4136-BD5B-AFE3313B6C7B}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "b40138", "b40138", "{1856E17E-F1E6-4F0F-8FC0-FD79CD8B6F9C}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "b45679", "b45679", "{7040B3FB-B7A2-4002-A74C-89EC1CEBF53B}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "b40089", "JIT\Regression\CLR-x86-EJIT\V1-M11-Beta1\b40089\b40089.csproj", "{54DFD24C-F147-4825-9E8E-A0ABD4FCC762}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "b40138", "JIT\Regression\CLR-x86-EJIT\V1-M11-Beta1\b40138\b40138.csproj", "{F524F545-6D93-4212-B51D-5D5F26897EFC}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "b45679", "JIT\Regression\CLR-x86-EJIT\V1-M11-Beta1\b45679\b45679.csproj", "{E83A9A3C-3336-44A7-A167-07983121C529}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "V1-M12-Beta2", "V1-M12-Beta2", "{792E063E-8986-499B-8B35-96DB021F695F}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "b46847", "b46847", "{4454307F-156B-48E4-9FA5-1DA74FCF2B0F}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "b46847", "JIT\Regression\CLR-x86-EJIT\V1-M12-Beta2\b46847\b46847.csproj", "{B7E09C27-56AB-4A8B-8AA7-C66F7D09349C}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Dev11", "Dev11", "{65963900-C735-4E9A-88B9-1A890C0009D3}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "dev10_94677", "dev10_94677", "{95C574AD-7602-41CF-981D-E19ADB8ECF36}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "dev10_94677", "JIT\Regression\Dev11\dev10_94677\dev10_94677.csproj", "{70017116-8568-47F8-8E1E-C84462A334C1}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Dev11_5437", "Dev11_5437", "{78EFE089-7045-456F-B8AD-BA1B1C165F4D}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Dev11_5437", "JIT\Regression\Dev11\Dev11_5437\Dev11_5437.csproj", "{D3D5B4F2-7924-4185-85A8-C908D9A67A0C}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "dev11_13912", "dev11_13912", "{6FCA25C2-4930-49A2-AC65-BAE2E1DB7836}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "dev11_13912", "JIT\Regression\Dev11\dev11_13912\dev11_13912.csproj", "{3E06549B-CCE6-4D5F-BCCB-C6E6B63CD59D}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "dev11_165544", "dev11_165544", "{CCCCFA62-D0BE-48FF-82B2-3A1C136D02C9}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "dev11_165544", "JIT\Regression\Dev11\dev11_165544\dev11_165544.csproj", "{D6D62266-1C55-4B07-85B6-62CD6EDD27F7}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Dev11_457559", "Dev11_457559", "{3F4B2800-9C79-4EC4-97F2-0041C95C93AB}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Dev11_457559", "JIT\Regression\Dev11\Dev11_457559\Dev11_457559.csproj", "{3859861E-6A53-4035-8A98-AD77F6510A6E}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Dev11_617302", "Dev11_617302", "{87B9D5F7-F627-4310-B719-BD072BD981E2}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Dev11_617302", "JIT\Regression\Dev11\Dev11_617302\Dev11_617302.csproj", "{6F0362F9-F1B0-4B95-A920-52C29062C546}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Dev11_646049", "Dev11_646049", "{1C346E99-9E88-438F-BA14-3F38133E7A95}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Dev11_646049", "JIT\Regression\Dev11\Dev11_646049\Dev11_646049.csproj", "{DC3BD7FA-ED25-46BF-B14C-1F6516B4AECD}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "DevDiv2_8863", "DevDiv2_8863", "{3A0787B8-2790-4401-8C48-419E3682A113}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DevDiv2_8863", "JIT\Regression\Dev11\DevDiv2_8863\DevDiv2_8863.csproj", "{C52624DA-3555-49A1-BEB7-3462A37EFBA9}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "DevDiv2_10623", "DevDiv2_10623", "{6924E822-B7EA-457F-A0FE-29350DCEF203}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DevDiv2_10623", "JIT\Regression\Dev11\DevDiv2_10623\DevDiv2_10623.csproj", "{0E2A5683-562D-486C-AA48-B1CD596B13DC}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Dev14", "Dev14", "{11A0D018-9FF1-4AC4-8C56-1239B8A3BFA7}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "DevDiv_876169", "DevDiv_876169", "{4EE03CDD-80D0-4055-AB0B-6B0DC53C6C57}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DevDiv_876169", "JIT\Regression\Dev14\DevDiv_876169\DevDiv_876169.csproj", "{8FCFAF22-18DB-4AD3-A533-7F238B60A9D5}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "JitBlue", "JitBlue", "{E0D92963-85FA-45EA-9016-F0B79A906BFE}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "DevDiv_794115", "DevDiv_794115", "{ECD6EDC6-F816-488B-9FCE-C06DF6AA399E}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DevDiv_794115", "JIT\Regression\JitBlue\DevDiv_794115\DevDiv_794115.csproj", "{5D59176C-604F-4B04-8AD2-37C3B0297AF9}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "DevDiv_794631", "DevDiv_794631", "{134F5A87-6533-4DEB-A96F-BAEA49B53890}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DevDiv_794631", "JIT\Regression\JitBlue\DevDiv_794631\DevDiv_794631.csproj", "{A82CAB28-A9C5-4D59-86CA-E66A76CCDAEE}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "DevDiv_815940", "DevDiv_815940", "{4EB529BC-777D-43E9-A8DA-42758585328F}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DevDiv_815940", "JIT\Regression\JitBlue\DevDiv_815940\DevDiv_815940.csproj", "{462E0B74-4249-4F65-8F40-6442266F5519}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "DevDiv_816617", "DevDiv_816617", "{28FCAFC6-B68B-4A34-BC66-FB3B4149B89D}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DevDiv_816617", "JIT\Regression\JitBlue\DevDiv_816617\DevDiv_816617.csproj", "{DB8B2975-3E1F-4D22-946A-92A579D75257}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -2507,6 +2605,206 @@ Global
{4161D387-F20B-4288-81EA-F13C2D384DD8}.Release|Mixed Platforms.Build.0 = Release|x64
{4161D387-F20B-4288-81EA-F13C2D384DD8}.Release|x64.ActiveCfg = Release|x64
{4161D387-F20B-4288-81EA-F13C2D384DD8}.Release|x64.Build.0 = Release|x64
+ {501DAA6D-53B9-4A21-AB78-235E6C995FB9}.Debug|Any CPU.ActiveCfg = Debug|x64
+ {501DAA6D-53B9-4A21-AB78-235E6C995FB9}.Debug|Mixed Platforms.ActiveCfg = Debug|x64
+ {501DAA6D-53B9-4A21-AB78-235E6C995FB9}.Debug|Mixed Platforms.Build.0 = Debug|x64
+ {501DAA6D-53B9-4A21-AB78-235E6C995FB9}.Debug|x64.ActiveCfg = Debug|x64
+ {501DAA6D-53B9-4A21-AB78-235E6C995FB9}.Debug|x64.Build.0 = Debug|x64
+ {501DAA6D-53B9-4A21-AB78-235E6C995FB9}.Release|Any CPU.ActiveCfg = Release|x64
+ {501DAA6D-53B9-4A21-AB78-235E6C995FB9}.Release|Mixed Platforms.ActiveCfg = Release|x64
+ {501DAA6D-53B9-4A21-AB78-235E6C995FB9}.Release|Mixed Platforms.Build.0 = Release|x64
+ {501DAA6D-53B9-4A21-AB78-235E6C995FB9}.Release|x64.ActiveCfg = Release|x64
+ {501DAA6D-53B9-4A21-AB78-235E6C995FB9}.Release|x64.Build.0 = Release|x64
+ {2E7AFA2D-C20E-42E1-B4C8-9C8C30A09F47}.Debug|Any CPU.ActiveCfg = Debug|x64
+ {2E7AFA2D-C20E-42E1-B4C8-9C8C30A09F47}.Debug|Mixed Platforms.ActiveCfg = Debug|x64
+ {2E7AFA2D-C20E-42E1-B4C8-9C8C30A09F47}.Debug|Mixed Platforms.Build.0 = Debug|x64
+ {2E7AFA2D-C20E-42E1-B4C8-9C8C30A09F47}.Debug|x64.ActiveCfg = Debug|x64
+ {2E7AFA2D-C20E-42E1-B4C8-9C8C30A09F47}.Debug|x64.Build.0 = Debug|x64
+ {2E7AFA2D-C20E-42E1-B4C8-9C8C30A09F47}.Release|Any CPU.ActiveCfg = Release|x64
+ {2E7AFA2D-C20E-42E1-B4C8-9C8C30A09F47}.Release|Mixed Platforms.ActiveCfg = Release|x64
+ {2E7AFA2D-C20E-42E1-B4C8-9C8C30A09F47}.Release|Mixed Platforms.Build.0 = Release|x64
+ {2E7AFA2D-C20E-42E1-B4C8-9C8C30A09F47}.Release|x64.ActiveCfg = Release|x64
+ {2E7AFA2D-C20E-42E1-B4C8-9C8C30A09F47}.Release|x64.Build.0 = Release|x64
+ {54DFD24C-F147-4825-9E8E-A0ABD4FCC762}.Debug|Any CPU.ActiveCfg = Debug|x64
+ {54DFD24C-F147-4825-9E8E-A0ABD4FCC762}.Debug|Mixed Platforms.ActiveCfg = Debug|x64
+ {54DFD24C-F147-4825-9E8E-A0ABD4FCC762}.Debug|Mixed Platforms.Build.0 = Debug|x64
+ {54DFD24C-F147-4825-9E8E-A0ABD4FCC762}.Debug|x64.ActiveCfg = Debug|x64
+ {54DFD24C-F147-4825-9E8E-A0ABD4FCC762}.Debug|x64.Build.0 = Debug|x64
+ {54DFD24C-F147-4825-9E8E-A0ABD4FCC762}.Release|Any CPU.ActiveCfg = Release|x64
+ {54DFD24C-F147-4825-9E8E-A0ABD4FCC762}.Release|Mixed Platforms.ActiveCfg = Release|x64
+ {54DFD24C-F147-4825-9E8E-A0ABD4FCC762}.Release|Mixed Platforms.Build.0 = Release|x64
+ {54DFD24C-F147-4825-9E8E-A0ABD4FCC762}.Release|x64.ActiveCfg = Release|x64
+ {54DFD24C-F147-4825-9E8E-A0ABD4FCC762}.Release|x64.Build.0 = Release|x64
+ {F524F545-6D93-4212-B51D-5D5F26897EFC}.Debug|Any CPU.ActiveCfg = Debug|x64
+ {F524F545-6D93-4212-B51D-5D5F26897EFC}.Debug|Mixed Platforms.ActiveCfg = Debug|x64
+ {F524F545-6D93-4212-B51D-5D5F26897EFC}.Debug|Mixed Platforms.Build.0 = Debug|x64
+ {F524F545-6D93-4212-B51D-5D5F26897EFC}.Debug|x64.ActiveCfg = Debug|x64
+ {F524F545-6D93-4212-B51D-5D5F26897EFC}.Debug|x64.Build.0 = Debug|x64
+ {F524F545-6D93-4212-B51D-5D5F26897EFC}.Release|Any CPU.ActiveCfg = Release|x64
+ {F524F545-6D93-4212-B51D-5D5F26897EFC}.Release|Mixed Platforms.ActiveCfg = Release|x64
+ {F524F545-6D93-4212-B51D-5D5F26897EFC}.Release|Mixed Platforms.Build.0 = Release|x64
+ {F524F545-6D93-4212-B51D-5D5F26897EFC}.Release|x64.ActiveCfg = Release|x64
+ {F524F545-6D93-4212-B51D-5D5F26897EFC}.Release|x64.Build.0 = Release|x64
+ {E83A9A3C-3336-44A7-A167-07983121C529}.Debug|Any CPU.ActiveCfg = Debug|x64
+ {E83A9A3C-3336-44A7-A167-07983121C529}.Debug|Mixed Platforms.ActiveCfg = Debug|x64
+ {E83A9A3C-3336-44A7-A167-07983121C529}.Debug|Mixed Platforms.Build.0 = Debug|x64
+ {E83A9A3C-3336-44A7-A167-07983121C529}.Debug|x64.ActiveCfg = Debug|x64
+ {E83A9A3C-3336-44A7-A167-07983121C529}.Debug|x64.Build.0 = Debug|x64
+ {E83A9A3C-3336-44A7-A167-07983121C529}.Release|Any CPU.ActiveCfg = Release|x64
+ {E83A9A3C-3336-44A7-A167-07983121C529}.Release|Mixed Platforms.ActiveCfg = Release|x64
+ {E83A9A3C-3336-44A7-A167-07983121C529}.Release|Mixed Platforms.Build.0 = Release|x64
+ {E83A9A3C-3336-44A7-A167-07983121C529}.Release|x64.ActiveCfg = Release|x64
+ {E83A9A3C-3336-44A7-A167-07983121C529}.Release|x64.Build.0 = Release|x64
+ {B7E09C27-56AB-4A8B-8AA7-C66F7D09349C}.Debug|Any CPU.ActiveCfg = Debug|x64
+ {B7E09C27-56AB-4A8B-8AA7-C66F7D09349C}.Debug|Mixed Platforms.ActiveCfg = Debug|x64
+ {B7E09C27-56AB-4A8B-8AA7-C66F7D09349C}.Debug|Mixed Platforms.Build.0 = Debug|x64
+ {B7E09C27-56AB-4A8B-8AA7-C66F7D09349C}.Debug|x64.ActiveCfg = Debug|x64
+ {B7E09C27-56AB-4A8B-8AA7-C66F7D09349C}.Debug|x64.Build.0 = Debug|x64
+ {B7E09C27-56AB-4A8B-8AA7-C66F7D09349C}.Release|Any CPU.ActiveCfg = Release|x64
+ {B7E09C27-56AB-4A8B-8AA7-C66F7D09349C}.Release|Mixed Platforms.ActiveCfg = Release|x64
+ {B7E09C27-56AB-4A8B-8AA7-C66F7D09349C}.Release|Mixed Platforms.Build.0 = Release|x64
+ {B7E09C27-56AB-4A8B-8AA7-C66F7D09349C}.Release|x64.ActiveCfg = Release|x64
+ {B7E09C27-56AB-4A8B-8AA7-C66F7D09349C}.Release|x64.Build.0 = Release|x64
+ {70017116-8568-47F8-8E1E-C84462A334C1}.Debug|Any CPU.ActiveCfg = Debug|x64
+ {70017116-8568-47F8-8E1E-C84462A334C1}.Debug|Mixed Platforms.ActiveCfg = Debug|x64
+ {70017116-8568-47F8-8E1E-C84462A334C1}.Debug|Mixed Platforms.Build.0 = Debug|x64
+ {70017116-8568-47F8-8E1E-C84462A334C1}.Debug|x64.ActiveCfg = Debug|x64
+ {70017116-8568-47F8-8E1E-C84462A334C1}.Debug|x64.Build.0 = Debug|x64
+ {70017116-8568-47F8-8E1E-C84462A334C1}.Release|Any CPU.ActiveCfg = Release|x64
+ {70017116-8568-47F8-8E1E-C84462A334C1}.Release|Mixed Platforms.ActiveCfg = Release|x64
+ {70017116-8568-47F8-8E1E-C84462A334C1}.Release|Mixed Platforms.Build.0 = Release|x64
+ {70017116-8568-47F8-8E1E-C84462A334C1}.Release|x64.ActiveCfg = Release|x64
+ {70017116-8568-47F8-8E1E-C84462A334C1}.Release|x64.Build.0 = Release|x64
+ {D3D5B4F2-7924-4185-85A8-C908D9A67A0C}.Debug|Any CPU.ActiveCfg = Debug|x64
+ {D3D5B4F2-7924-4185-85A8-C908D9A67A0C}.Debug|Mixed Platforms.ActiveCfg = Debug|x64
+ {D3D5B4F2-7924-4185-85A8-C908D9A67A0C}.Debug|Mixed Platforms.Build.0 = Debug|x64
+ {D3D5B4F2-7924-4185-85A8-C908D9A67A0C}.Debug|x64.ActiveCfg = Debug|x64
+ {D3D5B4F2-7924-4185-85A8-C908D9A67A0C}.Debug|x64.Build.0 = Debug|x64
+ {D3D5B4F2-7924-4185-85A8-C908D9A67A0C}.Release|Any CPU.ActiveCfg = Release|x64
+ {D3D5B4F2-7924-4185-85A8-C908D9A67A0C}.Release|Mixed Platforms.ActiveCfg = Release|x64
+ {D3D5B4F2-7924-4185-85A8-C908D9A67A0C}.Release|Mixed Platforms.Build.0 = Release|x64
+ {D3D5B4F2-7924-4185-85A8-C908D9A67A0C}.Release|x64.ActiveCfg = Release|x64
+ {D3D5B4F2-7924-4185-85A8-C908D9A67A0C}.Release|x64.Build.0 = Release|x64
+ {3E06549B-CCE6-4D5F-BCCB-C6E6B63CD59D}.Debug|Any CPU.ActiveCfg = Debug|x64
+ {3E06549B-CCE6-4D5F-BCCB-C6E6B63CD59D}.Debug|Mixed Platforms.ActiveCfg = Debug|x64
+ {3E06549B-CCE6-4D5F-BCCB-C6E6B63CD59D}.Debug|Mixed Platforms.Build.0 = Debug|x64
+ {3E06549B-CCE6-4D5F-BCCB-C6E6B63CD59D}.Debug|x64.ActiveCfg = Debug|x64
+ {3E06549B-CCE6-4D5F-BCCB-C6E6B63CD59D}.Debug|x64.Build.0 = Debug|x64
+ {3E06549B-CCE6-4D5F-BCCB-C6E6B63CD59D}.Release|Any CPU.ActiveCfg = Release|x64
+ {3E06549B-CCE6-4D5F-BCCB-C6E6B63CD59D}.Release|Mixed Platforms.ActiveCfg = Release|x64
+ {3E06549B-CCE6-4D5F-BCCB-C6E6B63CD59D}.Release|Mixed Platforms.Build.0 = Release|x64
+ {3E06549B-CCE6-4D5F-BCCB-C6E6B63CD59D}.Release|x64.ActiveCfg = Release|x64
+ {3E06549B-CCE6-4D5F-BCCB-C6E6B63CD59D}.Release|x64.Build.0 = Release|x64
+ {D6D62266-1C55-4B07-85B6-62CD6EDD27F7}.Debug|Any CPU.ActiveCfg = Debug|x64
+ {D6D62266-1C55-4B07-85B6-62CD6EDD27F7}.Debug|Mixed Platforms.ActiveCfg = Debug|x64
+ {D6D62266-1C55-4B07-85B6-62CD6EDD27F7}.Debug|Mixed Platforms.Build.0 = Debug|x64
+ {D6D62266-1C55-4B07-85B6-62CD6EDD27F7}.Debug|x64.ActiveCfg = Debug|x64
+ {D6D62266-1C55-4B07-85B6-62CD6EDD27F7}.Debug|x64.Build.0 = Debug|x64
+ {D6D62266-1C55-4B07-85B6-62CD6EDD27F7}.Release|Any CPU.ActiveCfg = Release|x64
+ {D6D62266-1C55-4B07-85B6-62CD6EDD27F7}.Release|Mixed Platforms.ActiveCfg = Release|x64
+ {D6D62266-1C55-4B07-85B6-62CD6EDD27F7}.Release|Mixed Platforms.Build.0 = Release|x64
+ {D6D62266-1C55-4B07-85B6-62CD6EDD27F7}.Release|x64.ActiveCfg = Release|x64
+ {D6D62266-1C55-4B07-85B6-62CD6EDD27F7}.Release|x64.Build.0 = Release|x64
+ {3859861E-6A53-4035-8A98-AD77F6510A6E}.Debug|Any CPU.ActiveCfg = Debug|x64
+ {3859861E-6A53-4035-8A98-AD77F6510A6E}.Debug|Mixed Platforms.ActiveCfg = Debug|x64
+ {3859861E-6A53-4035-8A98-AD77F6510A6E}.Debug|Mixed Platforms.Build.0 = Debug|x64
+ {3859861E-6A53-4035-8A98-AD77F6510A6E}.Debug|x64.ActiveCfg = Debug|x64
+ {3859861E-6A53-4035-8A98-AD77F6510A6E}.Debug|x64.Build.0 = Debug|x64
+ {3859861E-6A53-4035-8A98-AD77F6510A6E}.Release|Any CPU.ActiveCfg = Release|x64
+ {3859861E-6A53-4035-8A98-AD77F6510A6E}.Release|Mixed Platforms.ActiveCfg = Release|x64
+ {3859861E-6A53-4035-8A98-AD77F6510A6E}.Release|Mixed Platforms.Build.0 = Release|x64
+ {3859861E-6A53-4035-8A98-AD77F6510A6E}.Release|x64.ActiveCfg = Release|x64
+ {3859861E-6A53-4035-8A98-AD77F6510A6E}.Release|x64.Build.0 = Release|x64
+ {6F0362F9-F1B0-4B95-A920-52C29062C546}.Debug|Any CPU.ActiveCfg = Debug|x64
+ {6F0362F9-F1B0-4B95-A920-52C29062C546}.Debug|Mixed Platforms.ActiveCfg = Debug|x64
+ {6F0362F9-F1B0-4B95-A920-52C29062C546}.Debug|Mixed Platforms.Build.0 = Debug|x64
+ {6F0362F9-F1B0-4B95-A920-52C29062C546}.Debug|x64.ActiveCfg = Debug|x64
+ {6F0362F9-F1B0-4B95-A920-52C29062C546}.Debug|x64.Build.0 = Debug|x64
+ {6F0362F9-F1B0-4B95-A920-52C29062C546}.Release|Any CPU.ActiveCfg = Release|x64
+ {6F0362F9-F1B0-4B95-A920-52C29062C546}.Release|Mixed Platforms.ActiveCfg = Release|x64
+ {6F0362F9-F1B0-4B95-A920-52C29062C546}.Release|Mixed Platforms.Build.0 = Release|x64
+ {6F0362F9-F1B0-4B95-A920-52C29062C546}.Release|x64.ActiveCfg = Release|x64
+ {6F0362F9-F1B0-4B95-A920-52C29062C546}.Release|x64.Build.0 = Release|x64
+ {DC3BD7FA-ED25-46BF-B14C-1F6516B4AECD}.Debug|Any CPU.ActiveCfg = Debug|x64
+ {DC3BD7FA-ED25-46BF-B14C-1F6516B4AECD}.Debug|Mixed Platforms.ActiveCfg = Debug|x64
+ {DC3BD7FA-ED25-46BF-B14C-1F6516B4AECD}.Debug|Mixed Platforms.Build.0 = Debug|x64
+ {DC3BD7FA-ED25-46BF-B14C-1F6516B4AECD}.Debug|x64.ActiveCfg = Debug|x64
+ {DC3BD7FA-ED25-46BF-B14C-1F6516B4AECD}.Debug|x64.Build.0 = Debug|x64
+ {DC3BD7FA-ED25-46BF-B14C-1F6516B4AECD}.Release|Any CPU.ActiveCfg = Release|x64
+ {DC3BD7FA-ED25-46BF-B14C-1F6516B4AECD}.Release|Mixed Platforms.ActiveCfg = Release|x64
+ {DC3BD7FA-ED25-46BF-B14C-1F6516B4AECD}.Release|Mixed Platforms.Build.0 = Release|x64
+ {DC3BD7FA-ED25-46BF-B14C-1F6516B4AECD}.Release|x64.ActiveCfg = Release|x64
+ {DC3BD7FA-ED25-46BF-B14C-1F6516B4AECD}.Release|x64.Build.0 = Release|x64
+ {C52624DA-3555-49A1-BEB7-3462A37EFBA9}.Debug|Any CPU.ActiveCfg = Debug|x64
+ {C52624DA-3555-49A1-BEB7-3462A37EFBA9}.Debug|Mixed Platforms.ActiveCfg = Debug|x64
+ {C52624DA-3555-49A1-BEB7-3462A37EFBA9}.Debug|Mixed Platforms.Build.0 = Debug|x64
+ {C52624DA-3555-49A1-BEB7-3462A37EFBA9}.Debug|x64.ActiveCfg = Debug|x64
+ {C52624DA-3555-49A1-BEB7-3462A37EFBA9}.Debug|x64.Build.0 = Debug|x64
+ {C52624DA-3555-49A1-BEB7-3462A37EFBA9}.Release|Any CPU.ActiveCfg = Release|x64
+ {C52624DA-3555-49A1-BEB7-3462A37EFBA9}.Release|Mixed Platforms.ActiveCfg = Release|x64
+ {C52624DA-3555-49A1-BEB7-3462A37EFBA9}.Release|Mixed Platforms.Build.0 = Release|x64
+ {C52624DA-3555-49A1-BEB7-3462A37EFBA9}.Release|x64.ActiveCfg = Release|x64
+ {C52624DA-3555-49A1-BEB7-3462A37EFBA9}.Release|x64.Build.0 = Release|x64
+ {0E2A5683-562D-486C-AA48-B1CD596B13DC}.Debug|Any CPU.ActiveCfg = Debug|x64
+ {0E2A5683-562D-486C-AA48-B1CD596B13DC}.Debug|Mixed Platforms.ActiveCfg = Debug|x64
+ {0E2A5683-562D-486C-AA48-B1CD596B13DC}.Debug|Mixed Platforms.Build.0 = Debug|x64
+ {0E2A5683-562D-486C-AA48-B1CD596B13DC}.Debug|x64.ActiveCfg = Debug|x64
+ {0E2A5683-562D-486C-AA48-B1CD596B13DC}.Debug|x64.Build.0 = Debug|x64
+ {0E2A5683-562D-486C-AA48-B1CD596B13DC}.Release|Any CPU.ActiveCfg = Release|x64
+ {0E2A5683-562D-486C-AA48-B1CD596B13DC}.Release|Mixed Platforms.ActiveCfg = Release|x64
+ {0E2A5683-562D-486C-AA48-B1CD596B13DC}.Release|Mixed Platforms.Build.0 = Release|x64
+ {0E2A5683-562D-486C-AA48-B1CD596B13DC}.Release|x64.ActiveCfg = Release|x64
+ {0E2A5683-562D-486C-AA48-B1CD596B13DC}.Release|x64.Build.0 = Release|x64
+ {8FCFAF22-18DB-4AD3-A533-7F238B60A9D5}.Debug|Any CPU.ActiveCfg = Debug|x64
+ {8FCFAF22-18DB-4AD3-A533-7F238B60A9D5}.Debug|Mixed Platforms.ActiveCfg = Debug|x64
+ {8FCFAF22-18DB-4AD3-A533-7F238B60A9D5}.Debug|Mixed Platforms.Build.0 = Debug|x64
+ {8FCFAF22-18DB-4AD3-A533-7F238B60A9D5}.Debug|x64.ActiveCfg = Debug|x64
+ {8FCFAF22-18DB-4AD3-A533-7F238B60A9D5}.Debug|x64.Build.0 = Debug|x64
+ {8FCFAF22-18DB-4AD3-A533-7F238B60A9D5}.Release|Any CPU.ActiveCfg = Release|x64
+ {8FCFAF22-18DB-4AD3-A533-7F238B60A9D5}.Release|Mixed Platforms.ActiveCfg = Release|x64
+ {8FCFAF22-18DB-4AD3-A533-7F238B60A9D5}.Release|Mixed Platforms.Build.0 = Release|x64
+ {8FCFAF22-18DB-4AD3-A533-7F238B60A9D5}.Release|x64.ActiveCfg = Release|x64
+ {8FCFAF22-18DB-4AD3-A533-7F238B60A9D5}.Release|x64.Build.0 = Release|x64
+ {5D59176C-604F-4B04-8AD2-37C3B0297AF9}.Debug|Any CPU.ActiveCfg = Debug|x64
+ {5D59176C-604F-4B04-8AD2-37C3B0297AF9}.Debug|Mixed Platforms.ActiveCfg = Debug|x64
+ {5D59176C-604F-4B04-8AD2-37C3B0297AF9}.Debug|Mixed Platforms.Build.0 = Debug|x64
+ {5D59176C-604F-4B04-8AD2-37C3B0297AF9}.Debug|x64.ActiveCfg = Debug|x64
+ {5D59176C-604F-4B04-8AD2-37C3B0297AF9}.Debug|x64.Build.0 = Debug|x64
+ {5D59176C-604F-4B04-8AD2-37C3B0297AF9}.Release|Any CPU.ActiveCfg = Release|x64
+ {5D59176C-604F-4B04-8AD2-37C3B0297AF9}.Release|Mixed Platforms.ActiveCfg = Release|x64
+ {5D59176C-604F-4B04-8AD2-37C3B0297AF9}.Release|Mixed Platforms.Build.0 = Release|x64
+ {5D59176C-604F-4B04-8AD2-37C3B0297AF9}.Release|x64.ActiveCfg = Release|x64
+ {5D59176C-604F-4B04-8AD2-37C3B0297AF9}.Release|x64.Build.0 = Release|x64
+ {A82CAB28-A9C5-4D59-86CA-E66A76CCDAEE}.Debug|Any CPU.ActiveCfg = Debug|x64
+ {A82CAB28-A9C5-4D59-86CA-E66A76CCDAEE}.Debug|Mixed Platforms.ActiveCfg = Debug|x64
+ {A82CAB28-A9C5-4D59-86CA-E66A76CCDAEE}.Debug|Mixed Platforms.Build.0 = Debug|x64
+ {A82CAB28-A9C5-4D59-86CA-E66A76CCDAEE}.Debug|x64.ActiveCfg = Debug|x64
+ {A82CAB28-A9C5-4D59-86CA-E66A76CCDAEE}.Debug|x64.Build.0 = Debug|x64
+ {A82CAB28-A9C5-4D59-86CA-E66A76CCDAEE}.Release|Any CPU.ActiveCfg = Release|x64
+ {A82CAB28-A9C5-4D59-86CA-E66A76CCDAEE}.Release|Mixed Platforms.ActiveCfg = Release|x64
+ {A82CAB28-A9C5-4D59-86CA-E66A76CCDAEE}.Release|Mixed Platforms.Build.0 = Release|x64
+ {A82CAB28-A9C5-4D59-86CA-E66A76CCDAEE}.Release|x64.ActiveCfg = Release|x64
+ {A82CAB28-A9C5-4D59-86CA-E66A76CCDAEE}.Release|x64.Build.0 = Release|x64
+ {462E0B74-4249-4F65-8F40-6442266F5519}.Debug|Any CPU.ActiveCfg = Debug|x64
+ {462E0B74-4249-4F65-8F40-6442266F5519}.Debug|Mixed Platforms.ActiveCfg = Debug|x64
+ {462E0B74-4249-4F65-8F40-6442266F5519}.Debug|Mixed Platforms.Build.0 = Debug|x64
+ {462E0B74-4249-4F65-8F40-6442266F5519}.Debug|x64.ActiveCfg = Debug|x64
+ {462E0B74-4249-4F65-8F40-6442266F5519}.Debug|x64.Build.0 = Debug|x64
+ {462E0B74-4249-4F65-8F40-6442266F5519}.Release|Any CPU.ActiveCfg = Release|x64
+ {462E0B74-4249-4F65-8F40-6442266F5519}.Release|Mixed Platforms.ActiveCfg = Release|x64
+ {462E0B74-4249-4F65-8F40-6442266F5519}.Release|Mixed Platforms.Build.0 = Release|x64
+ {462E0B74-4249-4F65-8F40-6442266F5519}.Release|x64.ActiveCfg = Release|x64
+ {462E0B74-4249-4F65-8F40-6442266F5519}.Release|x64.Build.0 = Release|x64
+ {DB8B2975-3E1F-4D22-946A-92A579D75257}.Debug|Any CPU.ActiveCfg = Debug|x64
+ {DB8B2975-3E1F-4D22-946A-92A579D75257}.Debug|Mixed Platforms.ActiveCfg = Debug|x64
+ {DB8B2975-3E1F-4D22-946A-92A579D75257}.Debug|Mixed Platforms.Build.0 = Debug|x64
+ {DB8B2975-3E1F-4D22-946A-92A579D75257}.Debug|x64.ActiveCfg = Debug|x64
+ {DB8B2975-3E1F-4D22-946A-92A579D75257}.Debug|x64.Build.0 = Debug|x64
+ {DB8B2975-3E1F-4D22-946A-92A579D75257}.Release|Any CPU.ActiveCfg = Release|x64
+ {DB8B2975-3E1F-4D22-946A-92A579D75257}.Release|Mixed Platforms.ActiveCfg = Release|x64
+ {DB8B2975-3E1F-4D22-946A-92A579D75257}.Release|Mixed Platforms.Build.0 = Release|x64
+ {DB8B2975-3E1F-4D22-946A-92A579D75257}.Release|x64.ActiveCfg = Release|x64
+ {DB8B2975-3E1F-4D22-946A-92A579D75257}.Release|x64.Build.0 = Release|x64
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
@@ -2818,6 +3116,11 @@ Global
{C9C3BB04-6E25-4F05-A571-C06FC180634A} = {D378BAE3-A84A-4296-ACD4-AA4FDB436D58}
{2B715521-B728-4F81-A235-EEDAFC951EE6} = {DAFA51F9-324D-4FB3-B2A3-0BEB9CFB1677}
{27CAC648-F9B6-470D-AE63-6D3422966569} = {04DB82B5-A0C8-4A5D-9A30-4455129C792E}
+ {90C2BB90-87AE-4883-955A-8D1353C940E4} = {04DB82B5-A0C8-4A5D-9A30-4455129C792E}
+ {1198DC44-486D-457B-B490-5CB0B1BE3525} = {04DB82B5-A0C8-4A5D-9A30-4455129C792E}
+ {65963900-C735-4E9A-88B9-1A890C0009D3} = {04DB82B5-A0C8-4A5D-9A30-4455129C792E}
+ {11A0D018-9FF1-4AC4-8C56-1239B8A3BFA7} = {04DB82B5-A0C8-4A5D-9A30-4455129C792E}
+ {E0D92963-85FA-45EA-9016-F0B79A906BFE} = {04DB82B5-A0C8-4A5D-9A30-4455129C792E}
{C67F2FEE-E14D-4745-8694-B14F17D6AB90} = {27CAC648-F9B6-470D-AE63-6D3422966569}
{236411FD-D2B4-4255-84A8-424D42DB2823} = {27CAC648-F9B6-470D-AE63-6D3422966569}
{D4C66D43-7B2B-44C7-8B34-7DF4CB6A9BD3} = {27CAC648-F9B6-470D-AE63-6D3422966569}
@@ -2896,5 +3199,49 @@ Global
{5A0215DA-950B-460B-AF53-FFAED6DB2AC9} = {A77C2465-7E3F-4CBA-83FD-86E83DCB770E}
{07895B46-3625-4E18-81BA-9C991A7E4A9E} = {317A2EB9-83A6-459F-9CFC-39F273B7C74A}
{4161D387-F20B-4288-81EA-F13C2D384DD8} = {13C8C030-312C-4727-A073-301383B0E6C4}
+ {015D1E7C-29FD-4DAF-8202-CA6FEB9B7263} = {90C2BB90-87AE-4883-955A-8D1353C940E4}
+ {C8CD43B6-E37B-4EB0-BD65-0EB52DC6568F} = {015D1E7C-29FD-4DAF-8202-CA6FEB9B7263}
+ {501DAA6D-53B9-4A21-AB78-235E6C995FB9} = {C8CD43B6-E37B-4EB0-BD65-0EB52DC6568F}
+ {0DAD8937-8E7F-4944-B0D4-189C49F4A188} = {1198DC44-486D-457B-B490-5CB0B1BE3525}
+ {4521C60C-6F3A-4D87-975B-524236351FEB} = {1198DC44-486D-457B-B490-5CB0B1BE3525}
+ {792E063E-8986-499B-8B35-96DB021F695F} = {1198DC44-486D-457B-B490-5CB0B1BE3525}
+ {007EB358-C8BB-4449-8907-3E83CC7F908A} = {0DAD8937-8E7F-4944-B0D4-189C49F4A188}
+ {2E7AFA2D-C20E-42E1-B4C8-9C8C30A09F47} = {007EB358-C8BB-4449-8907-3E83CC7F908A}
+ {DB9E6FF2-A4D8-4136-BD5B-AFE3313B6C7B} = {4521C60C-6F3A-4D87-975B-524236351FEB}
+ {1856E17E-F1E6-4F0F-8FC0-FD79CD8B6F9C} = {4521C60C-6F3A-4D87-975B-524236351FEB}
+ {7040B3FB-B7A2-4002-A74C-89EC1CEBF53B} = {4521C60C-6F3A-4D87-975B-524236351FEB}
+ {54DFD24C-F147-4825-9E8E-A0ABD4FCC762} = {DB9E6FF2-A4D8-4136-BD5B-AFE3313B6C7B}
+ {F524F545-6D93-4212-B51D-5D5F26897EFC} = {1856E17E-F1E6-4F0F-8FC0-FD79CD8B6F9C}
+ {E83A9A3C-3336-44A7-A167-07983121C529} = {7040B3FB-B7A2-4002-A74C-89EC1CEBF53B}
+ {4454307F-156B-48E4-9FA5-1DA74FCF2B0F} = {792E063E-8986-499B-8B35-96DB021F695F}
+ {B7E09C27-56AB-4A8B-8AA7-C66F7D09349C} = {4454307F-156B-48E4-9FA5-1DA74FCF2B0F}
+ {95C574AD-7602-41CF-981D-E19ADB8ECF36} = {65963900-C735-4E9A-88B9-1A890C0009D3}
+ {78EFE089-7045-456F-B8AD-BA1B1C165F4D} = {65963900-C735-4E9A-88B9-1A890C0009D3}
+ {6FCA25C2-4930-49A2-AC65-BAE2E1DB7836} = {65963900-C735-4E9A-88B9-1A890C0009D3}
+ {CCCCFA62-D0BE-48FF-82B2-3A1C136D02C9} = {65963900-C735-4E9A-88B9-1A890C0009D3}
+ {3F4B2800-9C79-4EC4-97F2-0041C95C93AB} = {65963900-C735-4E9A-88B9-1A890C0009D3}
+ {87B9D5F7-F627-4310-B719-BD072BD981E2} = {65963900-C735-4E9A-88B9-1A890C0009D3}
+ {1C346E99-9E88-438F-BA14-3F38133E7A95} = {65963900-C735-4E9A-88B9-1A890C0009D3}
+ {3A0787B8-2790-4401-8C48-419E3682A113} = {65963900-C735-4E9A-88B9-1A890C0009D3}
+ {6924E822-B7EA-457F-A0FE-29350DCEF203} = {65963900-C735-4E9A-88B9-1A890C0009D3}
+ {70017116-8568-47F8-8E1E-C84462A334C1} = {95C574AD-7602-41CF-981D-E19ADB8ECF36}
+ {D3D5B4F2-7924-4185-85A8-C908D9A67A0C} = {78EFE089-7045-456F-B8AD-BA1B1C165F4D}
+ {3E06549B-CCE6-4D5F-BCCB-C6E6B63CD59D} = {6FCA25C2-4930-49A2-AC65-BAE2E1DB7836}
+ {D6D62266-1C55-4B07-85B6-62CD6EDD27F7} = {CCCCFA62-D0BE-48FF-82B2-3A1C136D02C9}
+ {3859861E-6A53-4035-8A98-AD77F6510A6E} = {3F4B2800-9C79-4EC4-97F2-0041C95C93AB}
+ {6F0362F9-F1B0-4B95-A920-52C29062C546} = {87B9D5F7-F627-4310-B719-BD072BD981E2}
+ {DC3BD7FA-ED25-46BF-B14C-1F6516B4AECD} = {1C346E99-9E88-438F-BA14-3F38133E7A95}
+ {C52624DA-3555-49A1-BEB7-3462A37EFBA9} = {3A0787B8-2790-4401-8C48-419E3682A113}
+ {0E2A5683-562D-486C-AA48-B1CD596B13DC} = {6924E822-B7EA-457F-A0FE-29350DCEF203}
+ {4EE03CDD-80D0-4055-AB0B-6B0DC53C6C57} = {11A0D018-9FF1-4AC4-8C56-1239B8A3BFA7}
+ {8FCFAF22-18DB-4AD3-A533-7F238B60A9D5} = {4EE03CDD-80D0-4055-AB0B-6B0DC53C6C57}
+ {ECD6EDC6-F816-488B-9FCE-C06DF6AA399E} = {E0D92963-85FA-45EA-9016-F0B79A906BFE}
+ {134F5A87-6533-4DEB-A96F-BAEA49B53890} = {E0D92963-85FA-45EA-9016-F0B79A906BFE}
+ {4EB529BC-777D-43E9-A8DA-42758585328F} = {E0D92963-85FA-45EA-9016-F0B79A906BFE}
+ {28FCAFC6-B68B-4A34-BC66-FB3B4149B89D} = {E0D92963-85FA-45EA-9016-F0B79A906BFE}
+ {5D59176C-604F-4B04-8AD2-37C3B0297AF9} = {ECD6EDC6-F816-488B-9FCE-C06DF6AA399E}
+ {A82CAB28-A9C5-4D59-86CA-E66A76CCDAEE} = {134F5A87-6533-4DEB-A96F-BAEA49B53890}
+ {462E0B74-4249-4F65-8F40-6442266F5519} = {4EB529BC-777D-43E9-A8DA-42758585328F}
+ {DB8B2975-3E1F-4D22-946A-92A579D75257} = {28FCAFC6-B68B-4A34-BC66-FB3B4149B89D}
EndGlobalSection
EndGlobal
diff --git a/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M09.5-PDC/b12008/app.config b/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M09.5-PDC/b12008/app.config
new file mode 100644
index 0000000000..62803f5972
--- /dev/null
+++ b/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M09.5-PDC/b12008/app.config
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+<configuration>
+ <runtime>
+ <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
+ <dependentAssembly>
+ <assemblyIdentity name="System.Runtime" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.20.0" newVersion="4.0.20.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Text.Encoding" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Threading.Tasks" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.IO" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Reflection" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ </assemblyBinding>
+ </runtime>
+</configuration> \ No newline at end of file
diff --git a/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M09.5-PDC/b12008/b12008.cs b/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M09.5-PDC/b12008/b12008.cs
new file mode 100644
index 0000000000..0111d9ba6c
--- /dev/null
+++ b/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M09.5-PDC/b12008/b12008.cs
@@ -0,0 +1,28 @@
+// Copyright (c) Microsoft. All rights reserved.
+// Licensed under the MIT license. See LICENSE file in the project root for full license information.
+//
+
+using System;
+
+class Bug
+{
+ public void Func(ref String str)
+ {
+ Console.WriteLine(str.ToString());
+ str = "Abc";
+ }
+
+ public void run()
+ {
+ String[] str = new String[10];
+ str[0] = "DEF";
+ Func(ref str[0]);
+ }
+
+ public static int Main(String[] args)
+ {
+ (new Bug()).run();
+ Console.WriteLine("Passed");
+ return 100;
+ }
+}
diff --git a/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M09.5-PDC/b12008/b12008.csproj b/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M09.5-PDC/b12008/b12008.csproj
new file mode 100644
index 0000000000..33b2928ebc
--- /dev/null
+++ b/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M09.5-PDC/b12008/b12008.csproj
@@ -0,0 +1,19 @@
+<?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" />
+ <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
+ <!-- Default configurations to help VS understand the configurations -->
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'">
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'">
+ </PropertyGroup>
+ <Target Name="Build">
+ <ItemGroup>
+ <AllSourceFiles Include="$(MSBuildProjectDirectory)\*.cs" />
+ </ItemGroup>
+ <PropertyGroup>
+ <GenerateRunScript>false</GenerateRunScript>
+ </PropertyGroup>
+ <MSBuild Projects="cs_template.proj" Properties="AssemblyName1=%(AllSourceFiles.FileName);AllowUnsafeBlocks=True;IntermediateOutputPath=$(IntermediateOutputPath)\%(AllSourceFiles.FileName)\" />
+ </Target>
+</Project>
diff --git a/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M09.5-PDC/b12008/cs_template.proj b/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M09.5-PDC/b12008/cs_template.proj
new file mode 100644
index 0000000000..adc2f21e14
--- /dev/null
+++ b/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M09.5-PDC/b12008/cs_template.proj
@@ -0,0 +1,42 @@
+<?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>$(AssemblyName1)</AssemblyName>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{95DFC527-4DC1-495E-97D7-E94EE1F7140D}</ProjectGuid>
+ <OutputType>Exe</OutputType>
+ <AppDesignerFolder>Properties</AppDesignerFolder>
+ <FileAlignment>512</FileAlignment>
+ <ProjectTypeGuids>{786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
+ <ReferencePath>$(ProgramFiles)\Common Files\microsoft shared\VSTT\11.0\UITestExtensionPackages</ReferencePath>
+ <SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\..\</SolutionDir>
+ <RestorePackages>true</RestorePackages>
+ <NuGetPackageImportStamp>7a9bfb7d</NuGetPackageImportStamp>
+ </PropertyGroup>
+ <!-- Default configurations to help VS understand the configurations -->
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ </PropertyGroup>
+ <ItemGroup>
+ <CodeAnalysisDependentAssemblyPaths Condition=" '$(VS100COMNTOOLS)' != '' " Include="$(VS100COMNTOOLS)..\IDE\PrivateAssemblies">
+ <Visible>False</Visible>
+ </CodeAnalysisDependentAssemblyPaths>
+ </ItemGroup>
+ <ItemGroup>
+ <Compile Include="$(AssemblyName1).cs" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="packages.config" />
+ <None Include="app.config" />
+ </ItemGroup>
+ <ItemGroup>
+ <Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />
+ </ItemGroup>
+ <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
+ <PropertyGroup Condition=" '$(MsBuildProjectDirOverride)' != '' ">
+ </PropertyGroup>
+</Project>
diff --git a/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M09.5-PDC/b12008/packages.config b/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M09.5-PDC/b12008/packages.config
new file mode 100644
index 0000000000..8f8ccd47d6
--- /dev/null
+++ b/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M09.5-PDC/b12008/packages.config
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8"?>
+<packages>
+ <package id="System.Console" version="4.0.0-beta-22405" />
+ <package id="System.Runtime" version="4.0.20-beta-22405" />
+ <package id="System.Runtime.Extensions" version="4.0.10-beta-22412" />
+ <package id="System.Threading" version="4.0.0-beta-22412" />
+ <package id="System.Threading.Thread" version="4.0.0-beta-22512" />
+</packages>
diff --git a/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b40089/app.config b/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b40089/app.config
new file mode 100644
index 0000000000..62803f5972
--- /dev/null
+++ b/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b40089/app.config
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+<configuration>
+ <runtime>
+ <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
+ <dependentAssembly>
+ <assemblyIdentity name="System.Runtime" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.20.0" newVersion="4.0.20.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Text.Encoding" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Threading.Tasks" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.IO" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Reflection" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ </assemblyBinding>
+ </runtime>
+</configuration> \ No newline at end of file
diff --git a/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b40089/b40089.cs b/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b40089/b40089.cs
new file mode 100644
index 0000000000..4aafdd0acf
--- /dev/null
+++ b/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b40089/b40089.cs
@@ -0,0 +1,22 @@
+// Copyright (c) Microsoft. All rights reserved.
+// Licensed under the MIT license. See LICENSE file in the project root for full license information.
+//
+
+namespace Test
+{
+ using System;
+
+ struct BB
+ {
+ public BB Method1(float param2)
+ {
+ return new BB();
+ }
+
+ static int Main()
+ {
+ new BB().Method1(0.0f);
+ return 100;
+ }
+ }
+}
diff --git a/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b40089/b40089.csproj b/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b40089/b40089.csproj
new file mode 100644
index 0000000000..33b2928ebc
--- /dev/null
+++ b/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b40089/b40089.csproj
@@ -0,0 +1,19 @@
+<?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" />
+ <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
+ <!-- Default configurations to help VS understand the configurations -->
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'">
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'">
+ </PropertyGroup>
+ <Target Name="Build">
+ <ItemGroup>
+ <AllSourceFiles Include="$(MSBuildProjectDirectory)\*.cs" />
+ </ItemGroup>
+ <PropertyGroup>
+ <GenerateRunScript>false</GenerateRunScript>
+ </PropertyGroup>
+ <MSBuild Projects="cs_template.proj" Properties="AssemblyName1=%(AllSourceFiles.FileName);AllowUnsafeBlocks=True;IntermediateOutputPath=$(IntermediateOutputPath)\%(AllSourceFiles.FileName)\" />
+ </Target>
+</Project>
diff --git a/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b40089/cs_template.proj b/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b40089/cs_template.proj
new file mode 100644
index 0000000000..adc2f21e14
--- /dev/null
+++ b/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b40089/cs_template.proj
@@ -0,0 +1,42 @@
+<?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>$(AssemblyName1)</AssemblyName>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{95DFC527-4DC1-495E-97D7-E94EE1F7140D}</ProjectGuid>
+ <OutputType>Exe</OutputType>
+ <AppDesignerFolder>Properties</AppDesignerFolder>
+ <FileAlignment>512</FileAlignment>
+ <ProjectTypeGuids>{786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
+ <ReferencePath>$(ProgramFiles)\Common Files\microsoft shared\VSTT\11.0\UITestExtensionPackages</ReferencePath>
+ <SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\..\</SolutionDir>
+ <RestorePackages>true</RestorePackages>
+ <NuGetPackageImportStamp>7a9bfb7d</NuGetPackageImportStamp>
+ </PropertyGroup>
+ <!-- Default configurations to help VS understand the configurations -->
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ </PropertyGroup>
+ <ItemGroup>
+ <CodeAnalysisDependentAssemblyPaths Condition=" '$(VS100COMNTOOLS)' != '' " Include="$(VS100COMNTOOLS)..\IDE\PrivateAssemblies">
+ <Visible>False</Visible>
+ </CodeAnalysisDependentAssemblyPaths>
+ </ItemGroup>
+ <ItemGroup>
+ <Compile Include="$(AssemblyName1).cs" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="packages.config" />
+ <None Include="app.config" />
+ </ItemGroup>
+ <ItemGroup>
+ <Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />
+ </ItemGroup>
+ <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
+ <PropertyGroup Condition=" '$(MsBuildProjectDirOverride)' != '' ">
+ </PropertyGroup>
+</Project>
diff --git a/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b40089/packages.config b/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b40089/packages.config
new file mode 100644
index 0000000000..8f8ccd47d6
--- /dev/null
+++ b/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b40089/packages.config
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8"?>
+<packages>
+ <package id="System.Console" version="4.0.0-beta-22405" />
+ <package id="System.Runtime" version="4.0.20-beta-22405" />
+ <package id="System.Runtime.Extensions" version="4.0.10-beta-22412" />
+ <package id="System.Threading" version="4.0.0-beta-22412" />
+ <package id="System.Threading.Thread" version="4.0.0-beta-22512" />
+</packages>
diff --git a/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b40138/app.config b/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b40138/app.config
new file mode 100644
index 0000000000..62803f5972
--- /dev/null
+++ b/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b40138/app.config
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+<configuration>
+ <runtime>
+ <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
+ <dependentAssembly>
+ <assemblyIdentity name="System.Runtime" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.20.0" newVersion="4.0.20.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Text.Encoding" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Threading.Tasks" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.IO" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Reflection" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ </assemblyBinding>
+ </runtime>
+</configuration> \ No newline at end of file
diff --git a/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b40138/b40138.cs b/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b40138/b40138.cs
new file mode 100644
index 0000000000..4aba144d89
--- /dev/null
+++ b/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b40138/b40138.cs
@@ -0,0 +1,33 @@
+// Copyright (c) Microsoft. All rights reserved.
+// Licensed under the MIT license. See LICENSE file in the project root for full license information.
+//
+
+namespace Test
+{
+ using System;
+
+ struct BB
+ {
+ float[] m_afField1;
+
+ BB Method3(float param2, ulong[] param3)
+ { return new BB(); }
+
+ static bool Static1(float[] param1) { return false; }
+
+ static int Main()
+ {
+ try
+ {
+ throw new Exception();
+ }
+ catch (Exception)
+ {
+ Static1(new BB().Method3(0.0f, null).m_afField1);
+ Console.WriteLine("PASSED");
+ return 100;
+ }
+ return -1;
+ }
+ }
+}
diff --git a/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b40138/b40138.csproj b/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b40138/b40138.csproj
new file mode 100644
index 0000000000..33b2928ebc
--- /dev/null
+++ b/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b40138/b40138.csproj
@@ -0,0 +1,19 @@
+<?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" />
+ <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
+ <!-- Default configurations to help VS understand the configurations -->
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'">
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'">
+ </PropertyGroup>
+ <Target Name="Build">
+ <ItemGroup>
+ <AllSourceFiles Include="$(MSBuildProjectDirectory)\*.cs" />
+ </ItemGroup>
+ <PropertyGroup>
+ <GenerateRunScript>false</GenerateRunScript>
+ </PropertyGroup>
+ <MSBuild Projects="cs_template.proj" Properties="AssemblyName1=%(AllSourceFiles.FileName);AllowUnsafeBlocks=True;IntermediateOutputPath=$(IntermediateOutputPath)\%(AllSourceFiles.FileName)\" />
+ </Target>
+</Project>
diff --git a/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b40138/cs_template.proj b/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b40138/cs_template.proj
new file mode 100644
index 0000000000..adc2f21e14
--- /dev/null
+++ b/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b40138/cs_template.proj
@@ -0,0 +1,42 @@
+<?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>$(AssemblyName1)</AssemblyName>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{95DFC527-4DC1-495E-97D7-E94EE1F7140D}</ProjectGuid>
+ <OutputType>Exe</OutputType>
+ <AppDesignerFolder>Properties</AppDesignerFolder>
+ <FileAlignment>512</FileAlignment>
+ <ProjectTypeGuids>{786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
+ <ReferencePath>$(ProgramFiles)\Common Files\microsoft shared\VSTT\11.0\UITestExtensionPackages</ReferencePath>
+ <SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\..\</SolutionDir>
+ <RestorePackages>true</RestorePackages>
+ <NuGetPackageImportStamp>7a9bfb7d</NuGetPackageImportStamp>
+ </PropertyGroup>
+ <!-- Default configurations to help VS understand the configurations -->
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ </PropertyGroup>
+ <ItemGroup>
+ <CodeAnalysisDependentAssemblyPaths Condition=" '$(VS100COMNTOOLS)' != '' " Include="$(VS100COMNTOOLS)..\IDE\PrivateAssemblies">
+ <Visible>False</Visible>
+ </CodeAnalysisDependentAssemblyPaths>
+ </ItemGroup>
+ <ItemGroup>
+ <Compile Include="$(AssemblyName1).cs" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="packages.config" />
+ <None Include="app.config" />
+ </ItemGroup>
+ <ItemGroup>
+ <Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />
+ </ItemGroup>
+ <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
+ <PropertyGroup Condition=" '$(MsBuildProjectDirOverride)' != '' ">
+ </PropertyGroup>
+</Project>
diff --git a/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b40138/packages.config b/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b40138/packages.config
new file mode 100644
index 0000000000..8f8ccd47d6
--- /dev/null
+++ b/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b40138/packages.config
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8"?>
+<packages>
+ <package id="System.Console" version="4.0.0-beta-22405" />
+ <package id="System.Runtime" version="4.0.20-beta-22405" />
+ <package id="System.Runtime.Extensions" version="4.0.10-beta-22412" />
+ <package id="System.Threading" version="4.0.0-beta-22412" />
+ <package id="System.Threading.Thread" version="4.0.0-beta-22512" />
+</packages>
diff --git a/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b45679/app.config b/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b45679/app.config
new file mode 100644
index 0000000000..62803f5972
--- /dev/null
+++ b/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b45679/app.config
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+<configuration>
+ <runtime>
+ <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
+ <dependentAssembly>
+ <assemblyIdentity name="System.Runtime" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.20.0" newVersion="4.0.20.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Text.Encoding" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Threading.Tasks" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.IO" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Reflection" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ </assemblyBinding>
+ </runtime>
+</configuration> \ No newline at end of file
diff --git a/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b45679/b45679.cs b/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b45679/b45679.cs
new file mode 100644
index 0000000000..b2b42e184f
--- /dev/null
+++ b/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b45679/b45679.cs
@@ -0,0 +1,28 @@
+// Copyright (c) Microsoft. All rights reserved.
+// Licensed under the MIT license. See LICENSE file in the project root for full license information.
+//
+
+namespace JitTest
+{
+ using System;
+
+ class Test
+ {
+ static int Main()
+ {
+ ulong a = 0x0000000000000020;
+ ulong b = 0xa697fcbfd6d232d1;
+ try
+ {
+ ulong c = checked(a * b);
+ Console.WriteLine("BAD! It should throw an exception!");
+ return -1;
+ }
+ catch (OverflowException)
+ {
+ Console.WriteLine("GOOD.");
+ return 100;
+ }
+ }
+ }
+}
diff --git a/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b45679/b45679.csproj b/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b45679/b45679.csproj
new file mode 100644
index 0000000000..33b2928ebc
--- /dev/null
+++ b/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b45679/b45679.csproj
@@ -0,0 +1,19 @@
+<?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" />
+ <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
+ <!-- Default configurations to help VS understand the configurations -->
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'">
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'">
+ </PropertyGroup>
+ <Target Name="Build">
+ <ItemGroup>
+ <AllSourceFiles Include="$(MSBuildProjectDirectory)\*.cs" />
+ </ItemGroup>
+ <PropertyGroup>
+ <GenerateRunScript>false</GenerateRunScript>
+ </PropertyGroup>
+ <MSBuild Projects="cs_template.proj" Properties="AssemblyName1=%(AllSourceFiles.FileName);AllowUnsafeBlocks=True;IntermediateOutputPath=$(IntermediateOutputPath)\%(AllSourceFiles.FileName)\" />
+ </Target>
+</Project>
diff --git a/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b45679/cs_template.proj b/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b45679/cs_template.proj
new file mode 100644
index 0000000000..adc2f21e14
--- /dev/null
+++ b/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b45679/cs_template.proj
@@ -0,0 +1,42 @@
+<?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>$(AssemblyName1)</AssemblyName>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{95DFC527-4DC1-495E-97D7-E94EE1F7140D}</ProjectGuid>
+ <OutputType>Exe</OutputType>
+ <AppDesignerFolder>Properties</AppDesignerFolder>
+ <FileAlignment>512</FileAlignment>
+ <ProjectTypeGuids>{786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
+ <ReferencePath>$(ProgramFiles)\Common Files\microsoft shared\VSTT\11.0\UITestExtensionPackages</ReferencePath>
+ <SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\..\</SolutionDir>
+ <RestorePackages>true</RestorePackages>
+ <NuGetPackageImportStamp>7a9bfb7d</NuGetPackageImportStamp>
+ </PropertyGroup>
+ <!-- Default configurations to help VS understand the configurations -->
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ </PropertyGroup>
+ <ItemGroup>
+ <CodeAnalysisDependentAssemblyPaths Condition=" '$(VS100COMNTOOLS)' != '' " Include="$(VS100COMNTOOLS)..\IDE\PrivateAssemblies">
+ <Visible>False</Visible>
+ </CodeAnalysisDependentAssemblyPaths>
+ </ItemGroup>
+ <ItemGroup>
+ <Compile Include="$(AssemblyName1).cs" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="packages.config" />
+ <None Include="app.config" />
+ </ItemGroup>
+ <ItemGroup>
+ <Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />
+ </ItemGroup>
+ <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
+ <PropertyGroup Condition=" '$(MsBuildProjectDirOverride)' != '' ">
+ </PropertyGroup>
+</Project>
diff --git a/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b45679/packages.config b/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b45679/packages.config
new file mode 100644
index 0000000000..8f8ccd47d6
--- /dev/null
+++ b/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M11-Beta1/b45679/packages.config
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8"?>
+<packages>
+ <package id="System.Console" version="4.0.0-beta-22405" />
+ <package id="System.Runtime" version="4.0.20-beta-22405" />
+ <package id="System.Runtime.Extensions" version="4.0.10-beta-22412" />
+ <package id="System.Threading" version="4.0.0-beta-22412" />
+ <package id="System.Threading.Thread" version="4.0.0-beta-22512" />
+</packages>
diff --git a/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M12-Beta2/b46847/app.config b/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M12-Beta2/b46847/app.config
new file mode 100644
index 0000000000..62803f5972
--- /dev/null
+++ b/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M12-Beta2/b46847/app.config
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+<configuration>
+ <runtime>
+ <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
+ <dependentAssembly>
+ <assemblyIdentity name="System.Runtime" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.20.0" newVersion="4.0.20.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Text.Encoding" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Threading.Tasks" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.IO" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Reflection" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ </assemblyBinding>
+ </runtime>
+</configuration> \ No newline at end of file
diff --git a/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M12-Beta2/b46847/b46847.cs b/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M12-Beta2/b46847/b46847.cs
new file mode 100644
index 0000000000..4b49639a9c
--- /dev/null
+++ b/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M12-Beta2/b46847/b46847.cs
@@ -0,0 +1,28 @@
+// Copyright (c) Microsoft. All rights reserved.
+// Licensed under the MIT license. See LICENSE file in the project root for full license information.
+//
+
+namespace Test
+{
+ using System;
+
+ class App
+ {
+ static int Main()
+ {
+ ulong a = 0x00000000005d909c;
+ ulong b = 0x00004021bfa15862;
+ try
+ {
+ ulong ab = checked(a * b);
+ Console.WriteLine("BAD - it must throw an exception");
+ return 1;
+ }
+ catch (OverflowException)
+ {
+ Console.WriteLine("GOOD");
+ return 100;
+ }
+ }
+ }
+}
diff --git a/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M12-Beta2/b46847/b46847.csproj b/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M12-Beta2/b46847/b46847.csproj
new file mode 100644
index 0000000000..33b2928ebc
--- /dev/null
+++ b/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M12-Beta2/b46847/b46847.csproj
@@ -0,0 +1,19 @@
+<?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" />
+ <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
+ <!-- Default configurations to help VS understand the configurations -->
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'">
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'">
+ </PropertyGroup>
+ <Target Name="Build">
+ <ItemGroup>
+ <AllSourceFiles Include="$(MSBuildProjectDirectory)\*.cs" />
+ </ItemGroup>
+ <PropertyGroup>
+ <GenerateRunScript>false</GenerateRunScript>
+ </PropertyGroup>
+ <MSBuild Projects="cs_template.proj" Properties="AssemblyName1=%(AllSourceFiles.FileName);AllowUnsafeBlocks=True;IntermediateOutputPath=$(IntermediateOutputPath)\%(AllSourceFiles.FileName)\" />
+ </Target>
+</Project>
diff --git a/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M12-Beta2/b46847/cs_template.proj b/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M12-Beta2/b46847/cs_template.proj
new file mode 100644
index 0000000000..adc2f21e14
--- /dev/null
+++ b/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M12-Beta2/b46847/cs_template.proj
@@ -0,0 +1,42 @@
+<?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>$(AssemblyName1)</AssemblyName>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{95DFC527-4DC1-495E-97D7-E94EE1F7140D}</ProjectGuid>
+ <OutputType>Exe</OutputType>
+ <AppDesignerFolder>Properties</AppDesignerFolder>
+ <FileAlignment>512</FileAlignment>
+ <ProjectTypeGuids>{786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
+ <ReferencePath>$(ProgramFiles)\Common Files\microsoft shared\VSTT\11.0\UITestExtensionPackages</ReferencePath>
+ <SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\..\</SolutionDir>
+ <RestorePackages>true</RestorePackages>
+ <NuGetPackageImportStamp>7a9bfb7d</NuGetPackageImportStamp>
+ </PropertyGroup>
+ <!-- Default configurations to help VS understand the configurations -->
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ </PropertyGroup>
+ <ItemGroup>
+ <CodeAnalysisDependentAssemblyPaths Condition=" '$(VS100COMNTOOLS)' != '' " Include="$(VS100COMNTOOLS)..\IDE\PrivateAssemblies">
+ <Visible>False</Visible>
+ </CodeAnalysisDependentAssemblyPaths>
+ </ItemGroup>
+ <ItemGroup>
+ <Compile Include="$(AssemblyName1).cs" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="packages.config" />
+ <None Include="app.config" />
+ </ItemGroup>
+ <ItemGroup>
+ <Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />
+ </ItemGroup>
+ <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
+ <PropertyGroup Condition=" '$(MsBuildProjectDirOverride)' != '' ">
+ </PropertyGroup>
+</Project>
diff --git a/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M12-Beta2/b46847/packages.config b/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M12-Beta2/b46847/packages.config
new file mode 100644
index 0000000000..8f8ccd47d6
--- /dev/null
+++ b/tests/src/JIT/Regression/CLR-x86-EJIT/V1-M12-Beta2/b46847/packages.config
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8"?>
+<packages>
+ <package id="System.Console" version="4.0.0-beta-22405" />
+ <package id="System.Runtime" version="4.0.20-beta-22405" />
+ <package id="System.Runtime.Extensions" version="4.0.10-beta-22412" />
+ <package id="System.Threading" version="4.0.0-beta-22412" />
+ <package id="System.Threading.Thread" version="4.0.0-beta-22512" />
+</packages>
diff --git a/tests/src/JIT/Regression/Dev11/Dev11_457559/Dev11_457559.cs b/tests/src/JIT/Regression/Dev11/Dev11_457559/Dev11_457559.cs
new file mode 100644
index 0000000000..1083c3c7ac
--- /dev/null
+++ b/tests/src/JIT/Regression/Dev11/Dev11_457559/Dev11_457559.cs
@@ -0,0 +1,39 @@
+// Copyright (c) Microsoft. All rights reserved.
+// Licensed under the MIT license. See LICENSE file in the project root for full license information.
+//
+
+using System;
+
+/// <summary>
+/// InvalidCastException is thrown when 'ngen /profile' image doesn't restore System.Enum TypeRef
+/// This is a bug in JIT-EE interface. The fix was to add call to
+/// m_pOverride->classMustBeLoadedBeforeCodelsRun in CEEInfo::getUnBoxHelper
+/// </summary>
+public class Test
+{
+ public static int Main()
+ {
+ if (RunTest(1))
+ {
+ Console.WriteLine("Pass");
+ return 100;
+ }
+ Console.WriteLine("Fail");
+ return 101;
+ }
+ public static bool RunTest(object o)
+ {
+ try
+ {
+ bool b = ((MyEnum)o) == MyEnum.Value0;
+ Console.WriteLine("{0}", b);
+ }
+ catch (Exception e)
+ {
+ Console.WriteLine("Unexpected exception thrown: " + e);
+ return false;
+ }
+ return true;
+ }
+}
+public enum MyEnum { Value0 = 0 } \ No newline at end of file
diff --git a/tests/src/JIT/Regression/Dev11/Dev11_457559/Dev11_457559.csproj b/tests/src/JIT/Regression/Dev11/Dev11_457559/Dev11_457559.csproj
new file mode 100644
index 0000000000..33b2928ebc
--- /dev/null
+++ b/tests/src/JIT/Regression/Dev11/Dev11_457559/Dev11_457559.csproj
@@ -0,0 +1,19 @@
+<?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" />
+ <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
+ <!-- Default configurations to help VS understand the configurations -->
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'">
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'">
+ </PropertyGroup>
+ <Target Name="Build">
+ <ItemGroup>
+ <AllSourceFiles Include="$(MSBuildProjectDirectory)\*.cs" />
+ </ItemGroup>
+ <PropertyGroup>
+ <GenerateRunScript>false</GenerateRunScript>
+ </PropertyGroup>
+ <MSBuild Projects="cs_template.proj" Properties="AssemblyName1=%(AllSourceFiles.FileName);AllowUnsafeBlocks=True;IntermediateOutputPath=$(IntermediateOutputPath)\%(AllSourceFiles.FileName)\" />
+ </Target>
+</Project>
diff --git a/tests/src/JIT/Regression/Dev11/Dev11_457559/app.config b/tests/src/JIT/Regression/Dev11/Dev11_457559/app.config
new file mode 100644
index 0000000000..62803f5972
--- /dev/null
+++ b/tests/src/JIT/Regression/Dev11/Dev11_457559/app.config
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+<configuration>
+ <runtime>
+ <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
+ <dependentAssembly>
+ <assemblyIdentity name="System.Runtime" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.20.0" newVersion="4.0.20.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Text.Encoding" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Threading.Tasks" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.IO" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Reflection" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ </assemblyBinding>
+ </runtime>
+</configuration> \ No newline at end of file
diff --git a/tests/src/JIT/Regression/Dev11/Dev11_457559/cs_template.proj b/tests/src/JIT/Regression/Dev11/Dev11_457559/cs_template.proj
new file mode 100644
index 0000000000..adc2f21e14
--- /dev/null
+++ b/tests/src/JIT/Regression/Dev11/Dev11_457559/cs_template.proj
@@ -0,0 +1,42 @@
+<?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>$(AssemblyName1)</AssemblyName>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{95DFC527-4DC1-495E-97D7-E94EE1F7140D}</ProjectGuid>
+ <OutputType>Exe</OutputType>
+ <AppDesignerFolder>Properties</AppDesignerFolder>
+ <FileAlignment>512</FileAlignment>
+ <ProjectTypeGuids>{786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
+ <ReferencePath>$(ProgramFiles)\Common Files\microsoft shared\VSTT\11.0\UITestExtensionPackages</ReferencePath>
+ <SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\..\</SolutionDir>
+ <RestorePackages>true</RestorePackages>
+ <NuGetPackageImportStamp>7a9bfb7d</NuGetPackageImportStamp>
+ </PropertyGroup>
+ <!-- Default configurations to help VS understand the configurations -->
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ </PropertyGroup>
+ <ItemGroup>
+ <CodeAnalysisDependentAssemblyPaths Condition=" '$(VS100COMNTOOLS)' != '' " Include="$(VS100COMNTOOLS)..\IDE\PrivateAssemblies">
+ <Visible>False</Visible>
+ </CodeAnalysisDependentAssemblyPaths>
+ </ItemGroup>
+ <ItemGroup>
+ <Compile Include="$(AssemblyName1).cs" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="packages.config" />
+ <None Include="app.config" />
+ </ItemGroup>
+ <ItemGroup>
+ <Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />
+ </ItemGroup>
+ <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
+ <PropertyGroup Condition=" '$(MsBuildProjectDirOverride)' != '' ">
+ </PropertyGroup>
+</Project>
diff --git a/tests/src/JIT/Regression/Dev11/Dev11_457559/packages.config b/tests/src/JIT/Regression/Dev11/Dev11_457559/packages.config
new file mode 100644
index 0000000000..8f8ccd47d6
--- /dev/null
+++ b/tests/src/JIT/Regression/Dev11/Dev11_457559/packages.config
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8"?>
+<packages>
+ <package id="System.Console" version="4.0.0-beta-22405" />
+ <package id="System.Runtime" version="4.0.20-beta-22405" />
+ <package id="System.Runtime.Extensions" version="4.0.10-beta-22412" />
+ <package id="System.Threading" version="4.0.0-beta-22412" />
+ <package id="System.Threading.Thread" version="4.0.0-beta-22512" />
+</packages>
diff --git a/tests/src/JIT/Regression/Dev11/Dev11_5437/Dev11_5437.cs b/tests/src/JIT/Regression/Dev11/Dev11_5437/Dev11_5437.cs
new file mode 100644
index 0000000000..6aea3f67fa
--- /dev/null
+++ b/tests/src/JIT/Regression/Dev11/Dev11_5437/Dev11_5437.cs
@@ -0,0 +1,34 @@
+// Copyright (c) Microsoft. All rights reserved.
+// Licensed under the MIT license. See LICENSE file in the project root for full license information.
+//
+
+using System;
+
+class Program
+{
+ static void f(int c, int d, int e)
+ {
+ Console.WriteLine("c={0}, d={1}, e={2}", c, d, e);
+ if (c + d != 4)
+ {
+ Console.WriteLine("FAILED: c + d != 4"); //We are hitting the bug so bailing out
+ throw new Exception("FAILED");
+ }
+ }
+ static int Main()
+ {
+ int d = 0;
+ int i = 3;
+ for (int e = 0; e < 2; e++)
+ {
+ while (true)
+ {
+ int c = 3 - d++;
+ f(c, d, e); // c == 3-d+1 !
+ if (--i < 1) break;
+ }
+ }
+ Console.WriteLine("PASSED");
+ return 100; //Didn't hit the bug so return success
+ }
+} \ No newline at end of file
diff --git a/tests/src/JIT/Regression/Dev11/Dev11_5437/Dev11_5437.csproj b/tests/src/JIT/Regression/Dev11/Dev11_5437/Dev11_5437.csproj
new file mode 100644
index 0000000000..33b2928ebc
--- /dev/null
+++ b/tests/src/JIT/Regression/Dev11/Dev11_5437/Dev11_5437.csproj
@@ -0,0 +1,19 @@
+<?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" />
+ <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
+ <!-- Default configurations to help VS understand the configurations -->
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'">
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'">
+ </PropertyGroup>
+ <Target Name="Build">
+ <ItemGroup>
+ <AllSourceFiles Include="$(MSBuildProjectDirectory)\*.cs" />
+ </ItemGroup>
+ <PropertyGroup>
+ <GenerateRunScript>false</GenerateRunScript>
+ </PropertyGroup>
+ <MSBuild Projects="cs_template.proj" Properties="AssemblyName1=%(AllSourceFiles.FileName);AllowUnsafeBlocks=True;IntermediateOutputPath=$(IntermediateOutputPath)\%(AllSourceFiles.FileName)\" />
+ </Target>
+</Project>
diff --git a/tests/src/JIT/Regression/Dev11/Dev11_5437/app.config b/tests/src/JIT/Regression/Dev11/Dev11_5437/app.config
new file mode 100644
index 0000000000..62803f5972
--- /dev/null
+++ b/tests/src/JIT/Regression/Dev11/Dev11_5437/app.config
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+<configuration>
+ <runtime>
+ <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
+ <dependentAssembly>
+ <assemblyIdentity name="System.Runtime" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.20.0" newVersion="4.0.20.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Text.Encoding" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Threading.Tasks" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.IO" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Reflection" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ </assemblyBinding>
+ </runtime>
+</configuration> \ No newline at end of file
diff --git a/tests/src/JIT/Regression/Dev11/Dev11_5437/cs_template.proj b/tests/src/JIT/Regression/Dev11/Dev11_5437/cs_template.proj
new file mode 100644
index 0000000000..adc2f21e14
--- /dev/null
+++ b/tests/src/JIT/Regression/Dev11/Dev11_5437/cs_template.proj
@@ -0,0 +1,42 @@
+<?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>$(AssemblyName1)</AssemblyName>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{95DFC527-4DC1-495E-97D7-E94EE1F7140D}</ProjectGuid>
+ <OutputType>Exe</OutputType>
+ <AppDesignerFolder>Properties</AppDesignerFolder>
+ <FileAlignment>512</FileAlignment>
+ <ProjectTypeGuids>{786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
+ <ReferencePath>$(ProgramFiles)\Common Files\microsoft shared\VSTT\11.0\UITestExtensionPackages</ReferencePath>
+ <SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\..\</SolutionDir>
+ <RestorePackages>true</RestorePackages>
+ <NuGetPackageImportStamp>7a9bfb7d</NuGetPackageImportStamp>
+ </PropertyGroup>
+ <!-- Default configurations to help VS understand the configurations -->
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ </PropertyGroup>
+ <ItemGroup>
+ <CodeAnalysisDependentAssemblyPaths Condition=" '$(VS100COMNTOOLS)' != '' " Include="$(VS100COMNTOOLS)..\IDE\PrivateAssemblies">
+ <Visible>False</Visible>
+ </CodeAnalysisDependentAssemblyPaths>
+ </ItemGroup>
+ <ItemGroup>
+ <Compile Include="$(AssemblyName1).cs" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="packages.config" />
+ <None Include="app.config" />
+ </ItemGroup>
+ <ItemGroup>
+ <Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />
+ </ItemGroup>
+ <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
+ <PropertyGroup Condition=" '$(MsBuildProjectDirOverride)' != '' ">
+ </PropertyGroup>
+</Project>
diff --git a/tests/src/JIT/Regression/Dev11/Dev11_5437/packages.config b/tests/src/JIT/Regression/Dev11/Dev11_5437/packages.config
new file mode 100644
index 0000000000..8f8ccd47d6
--- /dev/null
+++ b/tests/src/JIT/Regression/Dev11/Dev11_5437/packages.config
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8"?>
+<packages>
+ <package id="System.Console" version="4.0.0-beta-22405" />
+ <package id="System.Runtime" version="4.0.20-beta-22405" />
+ <package id="System.Runtime.Extensions" version="4.0.10-beta-22412" />
+ <package id="System.Threading" version="4.0.0-beta-22412" />
+ <package id="System.Threading.Thread" version="4.0.0-beta-22512" />
+</packages>
diff --git a/tests/src/JIT/Regression/Dev11/Dev11_617302/Dev11_617302.cs b/tests/src/JIT/Regression/Dev11/Dev11_617302/Dev11_617302.cs
new file mode 100644
index 0000000000..0c6e8f8d7c
--- /dev/null
+++ b/tests/src/JIT/Regression/Dev11/Dev11_617302/Dev11_617302.cs
@@ -0,0 +1,77 @@
+// Copyright (c) Microsoft. All rights reserved.
+// Licensed under the MIT license. See LICENSE file in the project root for full license information.
+//
+
+using System;
+using System.Runtime.CompilerServices;
+
+namespace ConsoleApplication1
+{
+ class Program
+ {
+ /// <summary>
+ /// AV when switch optimized away in x64. Should be somewhat rare but we optimize because all the switch cases result in the same assignment
+ /// </summary>
+ /// <param name="args"></param>
+ /// <returns></returns>
+ static int Main(string[] args)
+ {
+ try
+ {
+ ProductPatchLevel.GetPatchLevel(Product.Client);
+ Console.WriteLine("Pass");
+ return 100;
+ }
+ catch (Exception ex)
+ {
+ Console.WriteLine(ex);
+ Console.WriteLine("Fail");
+ return -1;
+ }
+ }
+ }
+
+ public enum Product
+ {
+ Client,
+ SDK,
+ SAG,
+ }
+
+ public static class ProductPatchLevel
+ {
+ private const int ClientLevel = 0;
+ private const int SDKLevel = 0;
+ private const int SAGLevel = 0;
+
+ [MethodImpl(MethodImplOptions.NoInlining)]
+ public static int GetPatchLevel(Product p)
+ {
+ int patchLevel = 0;
+ switch (p)
+ {
+ case Product.Client:
+ {
+ patchLevel = ClientLevel;
+ break;
+ }
+
+ case Product.SDK:
+ {
+ patchLevel = SDKLevel;
+ break;
+ }
+
+ case Product.SAG:
+ {
+ patchLevel = SAGLevel;
+ break;
+ }
+
+ }
+
+ return patchLevel;
+ }
+ }
+
+}
diff --git a/tests/src/JIT/Regression/Dev11/Dev11_617302/Dev11_617302.csproj b/tests/src/JIT/Regression/Dev11/Dev11_617302/Dev11_617302.csproj
new file mode 100644
index 0000000000..33b2928ebc
--- /dev/null
+++ b/tests/src/JIT/Regression/Dev11/Dev11_617302/Dev11_617302.csproj
@@ -0,0 +1,19 @@
+<?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" />
+ <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
+ <!-- Default configurations to help VS understand the configurations -->
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'">
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'">
+ </PropertyGroup>
+ <Target Name="Build">
+ <ItemGroup>
+ <AllSourceFiles Include="$(MSBuildProjectDirectory)\*.cs" />
+ </ItemGroup>
+ <PropertyGroup>
+ <GenerateRunScript>false</GenerateRunScript>
+ </PropertyGroup>
+ <MSBuild Projects="cs_template.proj" Properties="AssemblyName1=%(AllSourceFiles.FileName);AllowUnsafeBlocks=True;IntermediateOutputPath=$(IntermediateOutputPath)\%(AllSourceFiles.FileName)\" />
+ </Target>
+</Project>
diff --git a/tests/src/JIT/Regression/Dev11/Dev11_617302/app.config b/tests/src/JIT/Regression/Dev11/Dev11_617302/app.config
new file mode 100644
index 0000000000..62803f5972
--- /dev/null
+++ b/tests/src/JIT/Regression/Dev11/Dev11_617302/app.config
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+<configuration>
+ <runtime>
+ <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
+ <dependentAssembly>
+ <assemblyIdentity name="System.Runtime" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.20.0" newVersion="4.0.20.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Text.Encoding" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Threading.Tasks" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.IO" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Reflection" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ </assemblyBinding>
+ </runtime>
+</configuration> \ No newline at end of file
diff --git a/tests/src/JIT/Regression/Dev11/Dev11_617302/cs_template.proj b/tests/src/JIT/Regression/Dev11/Dev11_617302/cs_template.proj
new file mode 100644
index 0000000000..adc2f21e14
--- /dev/null
+++ b/tests/src/JIT/Regression/Dev11/Dev11_617302/cs_template.proj
@@ -0,0 +1,42 @@
+<?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>$(AssemblyName1)</AssemblyName>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{95DFC527-4DC1-495E-97D7-E94EE1F7140D}</ProjectGuid>
+ <OutputType>Exe</OutputType>
+ <AppDesignerFolder>Properties</AppDesignerFolder>
+ <FileAlignment>512</FileAlignment>
+ <ProjectTypeGuids>{786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
+ <ReferencePath>$(ProgramFiles)\Common Files\microsoft shared\VSTT\11.0\UITestExtensionPackages</ReferencePath>
+ <SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\..\</SolutionDir>
+ <RestorePackages>true</RestorePackages>
+ <NuGetPackageImportStamp>7a9bfb7d</NuGetPackageImportStamp>
+ </PropertyGroup>
+ <!-- Default configurations to help VS understand the configurations -->
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ </PropertyGroup>
+ <ItemGroup>
+ <CodeAnalysisDependentAssemblyPaths Condition=" '$(VS100COMNTOOLS)' != '' " Include="$(VS100COMNTOOLS)..\IDE\PrivateAssemblies">
+ <Visible>False</Visible>
+ </CodeAnalysisDependentAssemblyPaths>
+ </ItemGroup>
+ <ItemGroup>
+ <Compile Include="$(AssemblyName1).cs" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="packages.config" />
+ <None Include="app.config" />
+ </ItemGroup>
+ <ItemGroup>
+ <Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />
+ </ItemGroup>
+ <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
+ <PropertyGroup Condition=" '$(MsBuildProjectDirOverride)' != '' ">
+ </PropertyGroup>
+</Project>
diff --git a/tests/src/JIT/Regression/Dev11/Dev11_617302/packages.config b/tests/src/JIT/Regression/Dev11/Dev11_617302/packages.config
new file mode 100644
index 0000000000..8f8ccd47d6
--- /dev/null
+++ b/tests/src/JIT/Regression/Dev11/Dev11_617302/packages.config
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8"?>
+<packages>
+ <package id="System.Console" version="4.0.0-beta-22405" />
+ <package id="System.Runtime" version="4.0.20-beta-22405" />
+ <package id="System.Runtime.Extensions" version="4.0.10-beta-22412" />
+ <package id="System.Threading" version="4.0.0-beta-22412" />
+ <package id="System.Threading.Thread" version="4.0.0-beta-22512" />
+</packages>
diff --git a/tests/src/JIT/Regression/Dev11/Dev11_646049/Dev11_646049.cs b/tests/src/JIT/Regression/Dev11/Dev11_646049/Dev11_646049.cs
new file mode 100644
index 0000000000..b7bfe50bb9
--- /dev/null
+++ b/tests/src/JIT/Regression/Dev11/Dev11_646049/Dev11_646049.cs
@@ -0,0 +1,31 @@
+// Copyright (c) Microsoft. All rights reserved.
+// Licensed under the MIT license. See LICENSE file in the project root for full license information.
+//
+
+using System;
+
+class Test
+{
+ /// <summary>
+ /// Another 64 bit optimization issue where we dont do the coversion correctly. The following output is seen when this program fails
+ /// Error! expected, -4.54403989493052E+18, returned: -66876.654654
+ /// </summary>
+ /// <param name="args"></param>
+ /// <returns></returns>
+ static int Main(string[] args)
+ {
+ double expected = -4.54403989493052E+18;
+ double value = -66876.654654;
+ double result = (double)BitConverter.DoubleToInt64Bits(value);
+ if (result > -4.5E18)
+ {
+ Console.WriteLine("Error! expected, {0}, returned: {1}", expected, result);
+ return -1;
+ }
+ else
+ {
+ Console.WriteLine("Pass");
+ return 100;
+ }
+ }
+}
diff --git a/tests/src/JIT/Regression/Dev11/Dev11_646049/Dev11_646049.csproj b/tests/src/JIT/Regression/Dev11/Dev11_646049/Dev11_646049.csproj
new file mode 100644
index 0000000000..33b2928ebc
--- /dev/null
+++ b/tests/src/JIT/Regression/Dev11/Dev11_646049/Dev11_646049.csproj
@@ -0,0 +1,19 @@
+<?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" />
+ <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
+ <!-- Default configurations to help VS understand the configurations -->
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'">
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'">
+ </PropertyGroup>
+ <Target Name="Build">
+ <ItemGroup>
+ <AllSourceFiles Include="$(MSBuildProjectDirectory)\*.cs" />
+ </ItemGroup>
+ <PropertyGroup>
+ <GenerateRunScript>false</GenerateRunScript>
+ </PropertyGroup>
+ <MSBuild Projects="cs_template.proj" Properties="AssemblyName1=%(AllSourceFiles.FileName);AllowUnsafeBlocks=True;IntermediateOutputPath=$(IntermediateOutputPath)\%(AllSourceFiles.FileName)\" />
+ </Target>
+</Project>
diff --git a/tests/src/JIT/Regression/Dev11/Dev11_646049/app.config b/tests/src/JIT/Regression/Dev11/Dev11_646049/app.config
new file mode 100644
index 0000000000..62803f5972
--- /dev/null
+++ b/tests/src/JIT/Regression/Dev11/Dev11_646049/app.config
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+<configuration>
+ <runtime>
+ <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
+ <dependentAssembly>
+ <assemblyIdentity name="System.Runtime" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.20.0" newVersion="4.0.20.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Text.Encoding" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Threading.Tasks" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.IO" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Reflection" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ </assemblyBinding>
+ </runtime>
+</configuration> \ No newline at end of file
diff --git a/tests/src/JIT/Regression/Dev11/Dev11_646049/cs_template.proj b/tests/src/JIT/Regression/Dev11/Dev11_646049/cs_template.proj
new file mode 100644
index 0000000000..adc2f21e14
--- /dev/null
+++ b/tests/src/JIT/Regression/Dev11/Dev11_646049/cs_template.proj
@@ -0,0 +1,42 @@
+<?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>$(AssemblyName1)</AssemblyName>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{95DFC527-4DC1-495E-97D7-E94EE1F7140D}</ProjectGuid>
+ <OutputType>Exe</OutputType>
+ <AppDesignerFolder>Properties</AppDesignerFolder>
+ <FileAlignment>512</FileAlignment>
+ <ProjectTypeGuids>{786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
+ <ReferencePath>$(ProgramFiles)\Common Files\microsoft shared\VSTT\11.0\UITestExtensionPackages</ReferencePath>
+ <SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\..\</SolutionDir>
+ <RestorePackages>true</RestorePackages>
+ <NuGetPackageImportStamp>7a9bfb7d</NuGetPackageImportStamp>
+ </PropertyGroup>
+ <!-- Default configurations to help VS understand the configurations -->
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ </PropertyGroup>
+ <ItemGroup>
+ <CodeAnalysisDependentAssemblyPaths Condition=" '$(VS100COMNTOOLS)' != '' " Include="$(VS100COMNTOOLS)..\IDE\PrivateAssemblies">
+ <Visible>False</Visible>
+ </CodeAnalysisDependentAssemblyPaths>
+ </ItemGroup>
+ <ItemGroup>
+ <Compile Include="$(AssemblyName1).cs" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="packages.config" />
+ <None Include="app.config" />
+ </ItemGroup>
+ <ItemGroup>
+ <Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />
+ </ItemGroup>
+ <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
+ <PropertyGroup Condition=" '$(MsBuildProjectDirOverride)' != '' ">
+ </PropertyGroup>
+</Project>
diff --git a/tests/src/JIT/Regression/Dev11/Dev11_646049/packages.config b/tests/src/JIT/Regression/Dev11/Dev11_646049/packages.config
new file mode 100644
index 0000000000..8f8ccd47d6
--- /dev/null
+++ b/tests/src/JIT/Regression/Dev11/Dev11_646049/packages.config
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8"?>
+<packages>
+ <package id="System.Console" version="4.0.0-beta-22405" />
+ <package id="System.Runtime" version="4.0.20-beta-22405" />
+ <package id="System.Runtime.Extensions" version="4.0.10-beta-22412" />
+ <package id="System.Threading" version="4.0.0-beta-22412" />
+ <package id="System.Threading.Thread" version="4.0.0-beta-22512" />
+</packages>
diff --git a/tests/src/JIT/Regression/Dev11/DevDiv2_10623/DevDiv2_10623.cs b/tests/src/JIT/Regression/Dev11/DevDiv2_10623/DevDiv2_10623.cs
new file mode 100644
index 0000000000..079421196d
--- /dev/null
+++ b/tests/src/JIT/Regression/Dev11/DevDiv2_10623/DevDiv2_10623.cs
@@ -0,0 +1,19 @@
+// Copyright (c) Microsoft. All rights reserved.
+// Licensed under the MIT license. See LICENSE file in the project root for full license information.
+//
+
+using System;
+public class Program
+{
+ public static bool IsGuid(object item)
+ {
+ return item is Guid;
+ }
+ public static int Main()
+ {
+ if (IsGuid(Guid.NewGuid()))
+ return 100;
+ else
+ return 99;
+ }
+}
diff --git a/tests/src/JIT/Regression/Dev11/DevDiv2_10623/DevDiv2_10623.csproj b/tests/src/JIT/Regression/Dev11/DevDiv2_10623/DevDiv2_10623.csproj
new file mode 100644
index 0000000000..33b2928ebc
--- /dev/null
+++ b/tests/src/JIT/Regression/Dev11/DevDiv2_10623/DevDiv2_10623.csproj
@@ -0,0 +1,19 @@
+<?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" />
+ <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
+ <!-- Default configurations to help VS understand the configurations -->
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'">
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'">
+ </PropertyGroup>
+ <Target Name="Build">
+ <ItemGroup>
+ <AllSourceFiles Include="$(MSBuildProjectDirectory)\*.cs" />
+ </ItemGroup>
+ <PropertyGroup>
+ <GenerateRunScript>false</GenerateRunScript>
+ </PropertyGroup>
+ <MSBuild Projects="cs_template.proj" Properties="AssemblyName1=%(AllSourceFiles.FileName);AllowUnsafeBlocks=True;IntermediateOutputPath=$(IntermediateOutputPath)\%(AllSourceFiles.FileName)\" />
+ </Target>
+</Project>
diff --git a/tests/src/JIT/Regression/Dev11/DevDiv2_10623/app.config b/tests/src/JIT/Regression/Dev11/DevDiv2_10623/app.config
new file mode 100644
index 0000000000..62803f5972
--- /dev/null
+++ b/tests/src/JIT/Regression/Dev11/DevDiv2_10623/app.config
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+<configuration>
+ <runtime>
+ <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
+ <dependentAssembly>
+ <assemblyIdentity name="System.Runtime" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.20.0" newVersion="4.0.20.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Text.Encoding" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Threading.Tasks" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.IO" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Reflection" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ </assemblyBinding>
+ </runtime>
+</configuration> \ No newline at end of file
diff --git a/tests/src/JIT/Regression/Dev11/DevDiv2_10623/cs_template.proj b/tests/src/JIT/Regression/Dev11/DevDiv2_10623/cs_template.proj
new file mode 100644
index 0000000000..adc2f21e14
--- /dev/null
+++ b/tests/src/JIT/Regression/Dev11/DevDiv2_10623/cs_template.proj
@@ -0,0 +1,42 @@
+<?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>$(AssemblyName1)</AssemblyName>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{95DFC527-4DC1-495E-97D7-E94EE1F7140D}</ProjectGuid>
+ <OutputType>Exe</OutputType>
+ <AppDesignerFolder>Properties</AppDesignerFolder>
+ <FileAlignment>512</FileAlignment>
+ <ProjectTypeGuids>{786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
+ <ReferencePath>$(ProgramFiles)\Common Files\microsoft shared\VSTT\11.0\UITestExtensionPackages</ReferencePath>
+ <SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\..\</SolutionDir>
+ <RestorePackages>true</RestorePackages>
+ <NuGetPackageImportStamp>7a9bfb7d</NuGetPackageImportStamp>
+ </PropertyGroup>
+ <!-- Default configurations to help VS understand the configurations -->
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ </PropertyGroup>
+ <ItemGroup>
+ <CodeAnalysisDependentAssemblyPaths Condition=" '$(VS100COMNTOOLS)' != '' " Include="$(VS100COMNTOOLS)..\IDE\PrivateAssemblies">
+ <Visible>False</Visible>
+ </CodeAnalysisDependentAssemblyPaths>
+ </ItemGroup>
+ <ItemGroup>
+ <Compile Include="$(AssemblyName1).cs" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="packages.config" />
+ <None Include="app.config" />
+ </ItemGroup>
+ <ItemGroup>
+ <Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />
+ </ItemGroup>
+ <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
+ <PropertyGroup Condition=" '$(MsBuildProjectDirOverride)' != '' ">
+ </PropertyGroup>
+</Project>
diff --git a/tests/src/JIT/Regression/Dev11/DevDiv2_10623/packages.config b/tests/src/JIT/Regression/Dev11/DevDiv2_10623/packages.config
new file mode 100644
index 0000000000..8f8ccd47d6
--- /dev/null
+++ b/tests/src/JIT/Regression/Dev11/DevDiv2_10623/packages.config
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8"?>
+<packages>
+ <package id="System.Console" version="4.0.0-beta-22405" />
+ <package id="System.Runtime" version="4.0.20-beta-22405" />
+ <package id="System.Runtime.Extensions" version="4.0.10-beta-22412" />
+ <package id="System.Threading" version="4.0.0-beta-22412" />
+ <package id="System.Threading.Thread" version="4.0.0-beta-22512" />
+</packages>
diff --git a/tests/src/JIT/Regression/Dev11/DevDiv2_8863/DevDiv2_8863.cs b/tests/src/JIT/Regression/Dev11/DevDiv2_8863/DevDiv2_8863.cs
new file mode 100644
index 0000000000..c54435475b
--- /dev/null
+++ b/tests/src/JIT/Regression/Dev11/DevDiv2_8863/DevDiv2_8863.cs
@@ -0,0 +1,80 @@
+// Copyright (c) Microsoft. All rights reserved.
+// Licensed under the MIT license. See LICENSE file in the project root for full license information.
+//
+
+using System;
+
+public class Base
+{
+ public virtual Base Get()
+ {
+ return null;
+ }
+}
+
+public class Derived : Base
+{
+ public int i;
+ public int j;
+ public int k;
+}
+
+public class MyDerived : Derived
+{
+ public override Base Get()
+ {
+ return new MyBase();
+ }
+}
+
+public class MyBase : Base
+{
+ string foo = "foo";
+ int track = 0x44444444;
+
+ ~MyBase()
+ {
+ Console.WriteLine("\tDestructor. Foo: 0x{0:X8}", foo.Length);
+ }
+}
+
+public class Program
+{
+ static void x64_JIT_Bug(Derived d)
+ {
+ Base b = d;
+ loop:
+ if (b != null)
+ {
+ if (b is Derived)
+ {
+ Oops((Derived)b);
+ }
+ b = b.Get();
+ goto loop;
+ }
+ }
+
+ static void Oops(Derived d)
+ {
+ Console.WriteLine(d);
+ Console.WriteLine(d.i);
+ Console.WriteLine(d.j);
+ Console.WriteLine(d.k);
+ d.i = 0x77777777;
+ d.j = 0x77777777;
+ }
+
+ static int Main()
+ {
+ /* This issue is caused by CSE and trying to pull a typecheck out of a loop.
+ * We used to do this incorrectly and this could allow a type to call methods
+ * from it's "cousin" types...
+ *
+ * This example will AV...
+ * */
+ x64_JIT_Bug(new MyDerived());
+ return 100; // Well, we made it here... should be good.
+ }
+}
+
diff --git a/tests/src/JIT/Regression/Dev11/DevDiv2_8863/DevDiv2_8863.csproj b/tests/src/JIT/Regression/Dev11/DevDiv2_8863/DevDiv2_8863.csproj
new file mode 100644
index 0000000000..33b2928ebc
--- /dev/null
+++ b/tests/src/JIT/Regression/Dev11/DevDiv2_8863/DevDiv2_8863.csproj
@@ -0,0 +1,19 @@
+<?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" />
+ <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
+ <!-- Default configurations to help VS understand the configurations -->
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'">
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'">
+ </PropertyGroup>
+ <Target Name="Build">
+ <ItemGroup>
+ <AllSourceFiles Include="$(MSBuildProjectDirectory)\*.cs" />
+ </ItemGroup>
+ <PropertyGroup>
+ <GenerateRunScript>false</GenerateRunScript>
+ </PropertyGroup>
+ <MSBuild Projects="cs_template.proj" Properties="AssemblyName1=%(AllSourceFiles.FileName);AllowUnsafeBlocks=True;IntermediateOutputPath=$(IntermediateOutputPath)\%(AllSourceFiles.FileName)\" />
+ </Target>
+</Project>
diff --git a/tests/src/JIT/Regression/Dev11/DevDiv2_8863/app.config b/tests/src/JIT/Regression/Dev11/DevDiv2_8863/app.config
new file mode 100644
index 0000000000..62803f5972
--- /dev/null
+++ b/tests/src/JIT/Regression/Dev11/DevDiv2_8863/app.config
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+<configuration>
+ <runtime>
+ <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
+ <dependentAssembly>
+ <assemblyIdentity name="System.Runtime" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.20.0" newVersion="4.0.20.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Text.Encoding" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Threading.Tasks" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.IO" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Reflection" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ </assemblyBinding>
+ </runtime>
+</configuration> \ No newline at end of file
diff --git a/tests/src/JIT/Regression/Dev11/DevDiv2_8863/cs_template.proj b/tests/src/JIT/Regression/Dev11/DevDiv2_8863/cs_template.proj
new file mode 100644
index 0000000000..adc2f21e14
--- /dev/null
+++ b/tests/src/JIT/Regression/Dev11/DevDiv2_8863/cs_template.proj
@@ -0,0 +1,42 @@
+<?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>$(AssemblyName1)</AssemblyName>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{95DFC527-4DC1-495E-97D7-E94EE1F7140D}</ProjectGuid>
+ <OutputType>Exe</OutputType>
+ <AppDesignerFolder>Properties</AppDesignerFolder>
+ <FileAlignment>512</FileAlignment>
+ <ProjectTypeGuids>{786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
+ <ReferencePath>$(ProgramFiles)\Common Files\microsoft shared\VSTT\11.0\UITestExtensionPackages</ReferencePath>
+ <SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\..\</SolutionDir>
+ <RestorePackages>true</RestorePackages>
+ <NuGetPackageImportStamp>7a9bfb7d</NuGetPackageImportStamp>
+ </PropertyGroup>
+ <!-- Default configurations to help VS understand the configurations -->
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ </PropertyGroup>
+ <ItemGroup>
+ <CodeAnalysisDependentAssemblyPaths Condition=" '$(VS100COMNTOOLS)' != '' " Include="$(VS100COMNTOOLS)..\IDE\PrivateAssemblies">
+ <Visible>False</Visible>
+ </CodeAnalysisDependentAssemblyPaths>
+ </ItemGroup>
+ <ItemGroup>
+ <Compile Include="$(AssemblyName1).cs" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="packages.config" />
+ <None Include="app.config" />
+ </ItemGroup>
+ <ItemGroup>
+ <Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />
+ </ItemGroup>
+ <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
+ <PropertyGroup Condition=" '$(MsBuildProjectDirOverride)' != '' ">
+ </PropertyGroup>
+</Project>
diff --git a/tests/src/JIT/Regression/Dev11/DevDiv2_8863/packages.config b/tests/src/JIT/Regression/Dev11/DevDiv2_8863/packages.config
new file mode 100644
index 0000000000..8f8ccd47d6
--- /dev/null
+++ b/tests/src/JIT/Regression/Dev11/DevDiv2_8863/packages.config
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8"?>
+<packages>
+ <package id="System.Console" version="4.0.0-beta-22405" />
+ <package id="System.Runtime" version="4.0.20-beta-22405" />
+ <package id="System.Runtime.Extensions" version="4.0.10-beta-22412" />
+ <package id="System.Threading" version="4.0.0-beta-22412" />
+ <package id="System.Threading.Thread" version="4.0.0-beta-22512" />
+</packages>
diff --git a/tests/src/JIT/Regression/Dev11/dev10_94677/app.config b/tests/src/JIT/Regression/Dev11/dev10_94677/app.config
new file mode 100644
index 0000000000..62803f5972
--- /dev/null
+++ b/tests/src/JIT/Regression/Dev11/dev10_94677/app.config
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+<configuration>
+ <runtime>
+ <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
+ <dependentAssembly>
+ <assemblyIdentity name="System.Runtime" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.20.0" newVersion="4.0.20.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Text.Encoding" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Threading.Tasks" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.IO" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Reflection" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ </assemblyBinding>
+ </runtime>
+</configuration> \ No newline at end of file
diff --git a/tests/src/JIT/Regression/Dev11/dev10_94677/cs_template.proj b/tests/src/JIT/Regression/Dev11/dev10_94677/cs_template.proj
new file mode 100644
index 0000000000..adc2f21e14
--- /dev/null
+++ b/tests/src/JIT/Regression/Dev11/dev10_94677/cs_template.proj
@@ -0,0 +1,42 @@
+<?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>$(AssemblyName1)</AssemblyName>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{95DFC527-4DC1-495E-97D7-E94EE1F7140D}</ProjectGuid>
+ <OutputType>Exe</OutputType>
+ <AppDesignerFolder>Properties</AppDesignerFolder>
+ <FileAlignment>512</FileAlignment>
+ <ProjectTypeGuids>{786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
+ <ReferencePath>$(ProgramFiles)\Common Files\microsoft shared\VSTT\11.0\UITestExtensionPackages</ReferencePath>
+ <SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\..\</SolutionDir>
+ <RestorePackages>true</RestorePackages>
+ <NuGetPackageImportStamp>7a9bfb7d</NuGetPackageImportStamp>
+ </PropertyGroup>
+ <!-- Default configurations to help VS understand the configurations -->
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ </PropertyGroup>
+ <ItemGroup>
+ <CodeAnalysisDependentAssemblyPaths Condition=" '$(VS100COMNTOOLS)' != '' " Include="$(VS100COMNTOOLS)..\IDE\PrivateAssemblies">
+ <Visible>False</Visible>
+ </CodeAnalysisDependentAssemblyPaths>
+ </ItemGroup>
+ <ItemGroup>
+ <Compile Include="$(AssemblyName1).cs" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="packages.config" />
+ <None Include="app.config" />
+ </ItemGroup>
+ <ItemGroup>
+ <Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />
+ </ItemGroup>
+ <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
+ <PropertyGroup Condition=" '$(MsBuildProjectDirOverride)' != '' ">
+ </PropertyGroup>
+</Project>
diff --git a/tests/src/JIT/Regression/Dev11/dev10_94677/dev10_94677.csproj b/tests/src/JIT/Regression/Dev11/dev10_94677/dev10_94677.csproj
new file mode 100644
index 0000000000..33b2928ebc
--- /dev/null
+++ b/tests/src/JIT/Regression/Dev11/dev10_94677/dev10_94677.csproj
@@ -0,0 +1,19 @@
+<?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" />
+ <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
+ <!-- Default configurations to help VS understand the configurations -->
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'">
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'">
+ </PropertyGroup>
+ <Target Name="Build">
+ <ItemGroup>
+ <AllSourceFiles Include="$(MSBuildProjectDirectory)\*.cs" />
+ </ItemGroup>
+ <PropertyGroup>
+ <GenerateRunScript>false</GenerateRunScript>
+ </PropertyGroup>
+ <MSBuild Projects="cs_template.proj" Properties="AssemblyName1=%(AllSourceFiles.FileName);AllowUnsafeBlocks=True;IntermediateOutputPath=$(IntermediateOutputPath)\%(AllSourceFiles.FileName)\" />
+ </Target>
+</Project>
diff --git a/tests/src/JIT/Regression/Dev11/dev10_94677/loopvt.cs b/tests/src/JIT/Regression/Dev11/dev10_94677/loopvt.cs
new file mode 100644
index 0000000000..4fc5c0dd33
--- /dev/null
+++ b/tests/src/JIT/Regression/Dev11/dev10_94677/loopvt.cs
@@ -0,0 +1,102 @@
+// Copyright (c) Microsoft. All rights reserved.
+// Licensed under the MIT license. See LICENSE file in the project root for full license information.
+//
+
+/*
+ * JIT64 bug The bug is triggered by a pattern of loops over arrays of medium sized structs (between 4
+ * and ~32 bytes), but those are not the only cases that might hit it, just the easiest to describe
+ * (and maybe most likely?). In this case the last part of the trigger was that on array was offset
+ * from the other:
+ * batch[i] = keys[batchIndex + i];
+ * OsrApplyReductions and OsrGroupIVsByStride had a very similar loop, but with one notable difference.
+ * The former had a call to OsrRemoveGCCandidates, but the later did not. If OsrRemvoeGCCandidates
+ * walked across a multiply, it would change the stride, which would make a given candidate no longer
+ * fit in the stride group it was placed in. This bug has existed since 2003 when ltaylors first wrote
+ * these routines. I believe the fix is to add the call to OsrGroupIVsByStride so the loops match.
+ */
+
+using System;
+
+struct VT
+{
+ public double vt1;
+ public double vt2;
+ public double vt3;
+
+ public VT(double d1, double d2, double d3)
+ {
+ vt1 = d1; vt2 = d2; vt3 = d3;
+ }
+
+}
+
+
+class DblArray3
+{
+
+ // instance field of valuetype
+ public static void f4(VT[] keys, uint m_ReadMultipleMaxBatchSize)
+ {
+
+ // Create first batch.
+ // Should have incoming m_ReadMultipleMaxBatchSize less than keys.length
+ VT[] batch = keys;
+ if (keys.Length > m_ReadMultipleMaxBatchSize)
+ {
+ batch = new VT[m_ReadMultipleMaxBatchSize];
+ }
+
+ int batchIndex = 0;
+ do
+ {
+ if (batch != keys)
+ {
+ // Multiple batches case.
+
+ // If new batch should be smaller, create a new array.
+ // Otherwise, reuse the old one.
+ if (keys.Length < batchIndex + m_ReadMultipleMaxBatchSize)
+ {
+ batch = new VT[keys.Length - batchIndex];
+ }
+
+ // Copy keys to the batch array.
+ for (int i = 0; i < batch.Length; i++)
+ {
+ batch[i] = keys[batchIndex + i];
+ }
+ }
+
+ // Process the current batch and move to the next one.
+ batchIndex += batch.Length;
+ }
+ while (batchIndex < keys.Length);
+ }
+
+
+
+ public static int Main()
+ {
+ try
+ {
+ VT[] keys = new VT[10];
+ for (uint ii = 0; ii < keys.Length; ii++)
+ keys[ii] = new VT(0xf, 0x4, 0xe);
+ f4(keys, 5);
+ }
+ catch (Exception e)
+ {
+ Console.WriteLine(e.Message);
+ Console.WriteLine("FAILED");
+ Console.WriteLine();
+ Console.WriteLine(@"//
+// The bug is triggered by a pattern of loops over arrays of medium sized structs (between 4 and ~32 bytes), but those are not the only cases that might hit it, just the easiest to describe (and maybe most likely?). In this case the last part of the trigger was that on array was offset from the other:
+// batch[i] = keys[batchIndex + i];"
+ );
+ return -1;
+ }
+ Console.WriteLine("PASSED");
+ return 100;
+ }
+
+}
diff --git a/tests/src/JIT/Regression/Dev11/dev10_94677/packages.config b/tests/src/JIT/Regression/Dev11/dev10_94677/packages.config
new file mode 100644
index 0000000000..8f8ccd47d6
--- /dev/null
+++ b/tests/src/JIT/Regression/Dev11/dev10_94677/packages.config
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8"?>
+<packages>
+ <package id="System.Console" version="4.0.0-beta-22405" />
+ <package id="System.Runtime" version="4.0.20-beta-22405" />
+ <package id="System.Runtime.Extensions" version="4.0.10-beta-22412" />
+ <package id="System.Threading" version="4.0.0-beta-22412" />
+ <package id="System.Threading.Thread" version="4.0.0-beta-22512" />
+</packages>
diff --git a/tests/src/JIT/Regression/Dev11/dev11_13912/app.config b/tests/src/JIT/Regression/Dev11/dev11_13912/app.config
new file mode 100644
index 0000000000..62803f5972
--- /dev/null
+++ b/tests/src/JIT/Regression/Dev11/dev11_13912/app.config
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+<configuration>
+ <runtime>
+ <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
+ <dependentAssembly>
+ <assemblyIdentity name="System.Runtime" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.20.0" newVersion="4.0.20.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Text.Encoding" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Threading.Tasks" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.IO" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Reflection" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ </assemblyBinding>
+ </runtime>
+</configuration> \ No newline at end of file
diff --git a/tests/src/JIT/Regression/Dev11/dev11_13912/cs_template.proj b/tests/src/JIT/Regression/Dev11/dev11_13912/cs_template.proj
new file mode 100644
index 0000000000..adc2f21e14
--- /dev/null
+++ b/tests/src/JIT/Regression/Dev11/dev11_13912/cs_template.proj
@@ -0,0 +1,42 @@
+<?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>$(AssemblyName1)</AssemblyName>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{95DFC527-4DC1-495E-97D7-E94EE1F7140D}</ProjectGuid>
+ <OutputType>Exe</OutputType>
+ <AppDesignerFolder>Properties</AppDesignerFolder>
+ <FileAlignment>512</FileAlignment>
+ <ProjectTypeGuids>{786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
+ <ReferencePath>$(ProgramFiles)\Common Files\microsoft shared\VSTT\11.0\UITestExtensionPackages</ReferencePath>
+ <SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\..\</SolutionDir>
+ <RestorePackages>true</RestorePackages>
+ <NuGetPackageImportStamp>7a9bfb7d</NuGetPackageImportStamp>
+ </PropertyGroup>
+ <!-- Default configurations to help VS understand the configurations -->
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ </PropertyGroup>
+ <ItemGroup>
+ <CodeAnalysisDependentAssemblyPaths Condition=" '$(VS100COMNTOOLS)' != '' " Include="$(VS100COMNTOOLS)..\IDE\PrivateAssemblies">
+ <Visible>False</Visible>
+ </CodeAnalysisDependentAssemblyPaths>
+ </ItemGroup>
+ <ItemGroup>
+ <Compile Include="$(AssemblyName1).cs" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="packages.config" />
+ <None Include="app.config" />
+ </ItemGroup>
+ <ItemGroup>
+ <Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />
+ </ItemGroup>
+ <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
+ <PropertyGroup Condition=" '$(MsBuildProjectDirOverride)' != '' ">
+ </PropertyGroup>
+</Project>
diff --git a/tests/src/JIT/Regression/Dev11/dev11_13912/dev11_13912.cs b/tests/src/JIT/Regression/Dev11/dev11_13912/dev11_13912.cs
new file mode 100644
index 0000000000..24b4fc8692
--- /dev/null
+++ b/tests/src/JIT/Regression/Dev11/dev11_13912/dev11_13912.cs
@@ -0,0 +1,46 @@
+// Copyright (c) Microsoft. All rights reserved.
+// Licensed under the MIT license. See LICENSE file in the project root for full license information.
+//
+
+using System;
+
+public class P
+{
+ public static int Main()
+ {
+ // This bug is caused by a broken flowgraph due to a return from
+ // a try inside a catch block
+
+ TestCatchReturn();
+
+ // Successfully jitted a return from a try inside a catch block
+ return 100;
+ }
+
+ public static void TestCatchReturn()
+ {
+ try
+ {
+ }
+ catch (Exception)
+ {
+ try
+ {
+ try
+ {
+ return;
+ }
+ catch
+ {
+ return;
+ }
+ finally
+ {
+ }
+ }
+ catch (Exception)
+ {
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/tests/src/JIT/Regression/Dev11/dev11_13912/dev11_13912.csproj b/tests/src/JIT/Regression/Dev11/dev11_13912/dev11_13912.csproj
new file mode 100644
index 0000000000..33b2928ebc
--- /dev/null
+++ b/tests/src/JIT/Regression/Dev11/dev11_13912/dev11_13912.csproj
@@ -0,0 +1,19 @@
+<?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" />
+ <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
+ <!-- Default configurations to help VS understand the configurations -->
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'">
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'">
+ </PropertyGroup>
+ <Target Name="Build">
+ <ItemGroup>
+ <AllSourceFiles Include="$(MSBuildProjectDirectory)\*.cs" />
+ </ItemGroup>
+ <PropertyGroup>
+ <GenerateRunScript>false</GenerateRunScript>
+ </PropertyGroup>
+ <MSBuild Projects="cs_template.proj" Properties="AssemblyName1=%(AllSourceFiles.FileName);AllowUnsafeBlocks=True;IntermediateOutputPath=$(IntermediateOutputPath)\%(AllSourceFiles.FileName)\" />
+ </Target>
+</Project>
diff --git a/tests/src/JIT/Regression/Dev11/dev11_13912/packages.config b/tests/src/JIT/Regression/Dev11/dev11_13912/packages.config
new file mode 100644
index 0000000000..8f8ccd47d6
--- /dev/null
+++ b/tests/src/JIT/Regression/Dev11/dev11_13912/packages.config
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8"?>
+<packages>
+ <package id="System.Console" version="4.0.0-beta-22405" />
+ <package id="System.Runtime" version="4.0.20-beta-22405" />
+ <package id="System.Runtime.Extensions" version="4.0.10-beta-22412" />
+ <package id="System.Threading" version="4.0.0-beta-22412" />
+ <package id="System.Threading.Thread" version="4.0.0-beta-22512" />
+</packages>
diff --git a/tests/src/JIT/Regression/Dev11/dev11_165544/app.config b/tests/src/JIT/Regression/Dev11/dev11_165544/app.config
new file mode 100644
index 0000000000..62803f5972
--- /dev/null
+++ b/tests/src/JIT/Regression/Dev11/dev11_165544/app.config
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+<configuration>
+ <runtime>
+ <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
+ <dependentAssembly>
+ <assemblyIdentity name="System.Runtime" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.20.0" newVersion="4.0.20.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Text.Encoding" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Threading.Tasks" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.IO" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Reflection" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ </assemblyBinding>
+ </runtime>
+</configuration> \ No newline at end of file
diff --git a/tests/src/JIT/Regression/Dev11/dev11_165544/cs_template.proj b/tests/src/JIT/Regression/Dev11/dev11_165544/cs_template.proj
new file mode 100644
index 0000000000..adc2f21e14
--- /dev/null
+++ b/tests/src/JIT/Regression/Dev11/dev11_165544/cs_template.proj
@@ -0,0 +1,42 @@
+<?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>$(AssemblyName1)</AssemblyName>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{95DFC527-4DC1-495E-97D7-E94EE1F7140D}</ProjectGuid>
+ <OutputType>Exe</OutputType>
+ <AppDesignerFolder>Properties</AppDesignerFolder>
+ <FileAlignment>512</FileAlignment>
+ <ProjectTypeGuids>{786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
+ <ReferencePath>$(ProgramFiles)\Common Files\microsoft shared\VSTT\11.0\UITestExtensionPackages</ReferencePath>
+ <SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\..\</SolutionDir>
+ <RestorePackages>true</RestorePackages>
+ <NuGetPackageImportStamp>7a9bfb7d</NuGetPackageImportStamp>
+ </PropertyGroup>
+ <!-- Default configurations to help VS understand the configurations -->
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ </PropertyGroup>
+ <ItemGroup>
+ <CodeAnalysisDependentAssemblyPaths Condition=" '$(VS100COMNTOOLS)' != '' " Include="$(VS100COMNTOOLS)..\IDE\PrivateAssemblies">
+ <Visible>False</Visible>
+ </CodeAnalysisDependentAssemblyPaths>
+ </ItemGroup>
+ <ItemGroup>
+ <Compile Include="$(AssemblyName1).cs" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="packages.config" />
+ <None Include="app.config" />
+ </ItemGroup>
+ <ItemGroup>
+ <Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />
+ </ItemGroup>
+ <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
+ <PropertyGroup Condition=" '$(MsBuildProjectDirOverride)' != '' ">
+ </PropertyGroup>
+</Project>
diff --git a/tests/src/JIT/Regression/Dev11/dev11_165544/dev11_165544.csproj b/tests/src/JIT/Regression/Dev11/dev11_165544/dev11_165544.csproj
new file mode 100644
index 0000000000..33b2928ebc
--- /dev/null
+++ b/tests/src/JIT/Regression/Dev11/dev11_165544/dev11_165544.csproj
@@ -0,0 +1,19 @@
+<?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" />
+ <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
+ <!-- Default configurations to help VS understand the configurations -->
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'">
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'">
+ </PropertyGroup>
+ <Target Name="Build">
+ <ItemGroup>
+ <AllSourceFiles Include="$(MSBuildProjectDirectory)\*.cs" />
+ </ItemGroup>
+ <PropertyGroup>
+ <GenerateRunScript>false</GenerateRunScript>
+ </PropertyGroup>
+ <MSBuild Projects="cs_template.proj" Properties="AssemblyName1=%(AllSourceFiles.FileName);AllowUnsafeBlocks=True;IntermediateOutputPath=$(IntermediateOutputPath)\%(AllSourceFiles.FileName)\" />
+ </Target>
+</Project>
diff --git a/tests/src/JIT/Regression/Dev11/dev11_165544/packages.config b/tests/src/JIT/Regression/Dev11/dev11_165544/packages.config
new file mode 100644
index 0000000000..8f8ccd47d6
--- /dev/null
+++ b/tests/src/JIT/Regression/Dev11/dev11_165544/packages.config
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8"?>
+<packages>
+ <package id="System.Console" version="4.0.0-beta-22405" />
+ <package id="System.Runtime" version="4.0.20-beta-22405" />
+ <package id="System.Runtime.Extensions" version="4.0.10-beta-22412" />
+ <package id="System.Threading" version="4.0.0-beta-22412" />
+ <package id="System.Threading.Thread" version="4.0.0-beta-22512" />
+</packages>
diff --git a/tests/src/JIT/Regression/Dev11/dev11_165544/seqpts.cs b/tests/src/JIT/Regression/Dev11/dev11_165544/seqpts.cs
new file mode 100644
index 0000000000..745e969432
--- /dev/null
+++ b/tests/src/JIT/Regression/Dev11/dev11_165544/seqpts.cs
@@ -0,0 +1,51 @@
+// Copyright (c) Microsoft. All rights reserved.
+// Licensed under the MIT license. See LICENSE file in the project root for full license information.
+//
+
+/*
+ * Ensure that for start of sequence points that are also start of NOGC interrupt regions, an interruptible NOP is placed in front for the sequence point.
+ *
+ * The test does not check for the above in the JIT tree but only functional correctness.
+ */
+// csc /o- /debug+
+using System;
+
+struct BigCopy
+{
+ public long l1, l2, l3;
+ public object gc;
+ public override string ToString()
+ {
+ return string.Format("l1 = {0}, l2 = {1}, l3 = {2}", l1, l2, l3);
+ }
+ public static BigCopy operator +(BigCopy c, long l)
+ {
+ c.l1 += l;
+ c.l2 += l;
+ c.l3 += l;
+ return c;
+ }
+}
+
+static class Repro
+{
+ static int Main(string[] args)
+ {
+ BigCopy b1, b2, b3;
+ b1.gc = "me";
+ b1.l1 = 1;
+ b1.l2 = 2;
+ b1.l3 = 3;
+ b2 = b1;
+ b2 += 3;
+ b3 = b2;
+ b3 += 3;
+ Console.WriteLine("b1 = {0}", b1);
+ Console.WriteLine("b2 = {0}", b2);
+ Console.WriteLine("b3 = {0}", b3);
+ if (b1.l1 == 1 && b1.l2 == 2 && b1.l3 == 3 &&
+ b2.l1 == 4 && b2.l2 == 5 && b2.l3 == 6 &&
+ b3.l1 == 7 && b3.l2 == 8 && b3.l3 == 9) return 100;
+ return 101;
+ }
+}
diff --git a/tests/src/JIT/Regression/Dev14/DevDiv_876169/DevDiv_876169.cs b/tests/src/JIT/Regression/Dev14/DevDiv_876169/DevDiv_876169.cs
new file mode 100644
index 0000000000..11c26f0222
--- /dev/null
+++ b/tests/src/JIT/Regression/Dev14/DevDiv_876169/DevDiv_876169.cs
@@ -0,0 +1,23 @@
+// Copyright (c) Microsoft. All rights reserved.
+// Licensed under the MIT license. See LICENSE file in the project root for full license information.
+//
+
+using System;
+
+class Repro
+{
+ static int Main()
+ {
+ //We used to incorrectly generate an infinite loop by
+ //emitting a jump instruction to itself
+ //The correct behaviour would be to immediately exit the loop
+
+ int i = 0;
+ while (i < 0 || i < 1)
+ {
+ i++;
+ }
+ Console.WriteLine("PASS!");
+ return 100;
+ }
+}
diff --git a/tests/src/JIT/Regression/Dev14/DevDiv_876169/DevDiv_876169.csproj b/tests/src/JIT/Regression/Dev14/DevDiv_876169/DevDiv_876169.csproj
new file mode 100644
index 0000000000..33b2928ebc
--- /dev/null
+++ b/tests/src/JIT/Regression/Dev14/DevDiv_876169/DevDiv_876169.csproj
@@ -0,0 +1,19 @@
+<?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" />
+ <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
+ <!-- Default configurations to help VS understand the configurations -->
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'">
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'">
+ </PropertyGroup>
+ <Target Name="Build">
+ <ItemGroup>
+ <AllSourceFiles Include="$(MSBuildProjectDirectory)\*.cs" />
+ </ItemGroup>
+ <PropertyGroup>
+ <GenerateRunScript>false</GenerateRunScript>
+ </PropertyGroup>
+ <MSBuild Projects="cs_template.proj" Properties="AssemblyName1=%(AllSourceFiles.FileName);AllowUnsafeBlocks=True;IntermediateOutputPath=$(IntermediateOutputPath)\%(AllSourceFiles.FileName)\" />
+ </Target>
+</Project>
diff --git a/tests/src/JIT/Regression/Dev14/DevDiv_876169/app.config b/tests/src/JIT/Regression/Dev14/DevDiv_876169/app.config
new file mode 100644
index 0000000000..62803f5972
--- /dev/null
+++ b/tests/src/JIT/Regression/Dev14/DevDiv_876169/app.config
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+<configuration>
+ <runtime>
+ <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
+ <dependentAssembly>
+ <assemblyIdentity name="System.Runtime" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.20.0" newVersion="4.0.20.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Text.Encoding" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Threading.Tasks" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.IO" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Reflection" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ </assemblyBinding>
+ </runtime>
+</configuration> \ No newline at end of file
diff --git a/tests/src/JIT/Regression/Dev14/DevDiv_876169/cs_template.proj b/tests/src/JIT/Regression/Dev14/DevDiv_876169/cs_template.proj
new file mode 100644
index 0000000000..adc2f21e14
--- /dev/null
+++ b/tests/src/JIT/Regression/Dev14/DevDiv_876169/cs_template.proj
@@ -0,0 +1,42 @@
+<?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>$(AssemblyName1)</AssemblyName>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{95DFC527-4DC1-495E-97D7-E94EE1F7140D}</ProjectGuid>
+ <OutputType>Exe</OutputType>
+ <AppDesignerFolder>Properties</AppDesignerFolder>
+ <FileAlignment>512</FileAlignment>
+ <ProjectTypeGuids>{786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
+ <ReferencePath>$(ProgramFiles)\Common Files\microsoft shared\VSTT\11.0\UITestExtensionPackages</ReferencePath>
+ <SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\..\</SolutionDir>
+ <RestorePackages>true</RestorePackages>
+ <NuGetPackageImportStamp>7a9bfb7d</NuGetPackageImportStamp>
+ </PropertyGroup>
+ <!-- Default configurations to help VS understand the configurations -->
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ </PropertyGroup>
+ <ItemGroup>
+ <CodeAnalysisDependentAssemblyPaths Condition=" '$(VS100COMNTOOLS)' != '' " Include="$(VS100COMNTOOLS)..\IDE\PrivateAssemblies">
+ <Visible>False</Visible>
+ </CodeAnalysisDependentAssemblyPaths>
+ </ItemGroup>
+ <ItemGroup>
+ <Compile Include="$(AssemblyName1).cs" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="packages.config" />
+ <None Include="app.config" />
+ </ItemGroup>
+ <ItemGroup>
+ <Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />
+ </ItemGroup>
+ <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
+ <PropertyGroup Condition=" '$(MsBuildProjectDirOverride)' != '' ">
+ </PropertyGroup>
+</Project>
diff --git a/tests/src/JIT/Regression/Dev14/DevDiv_876169/packages.config b/tests/src/JIT/Regression/Dev14/DevDiv_876169/packages.config
new file mode 100644
index 0000000000..8f8ccd47d6
--- /dev/null
+++ b/tests/src/JIT/Regression/Dev14/DevDiv_876169/packages.config
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8"?>
+<packages>
+ <package id="System.Console" version="4.0.0-beta-22405" />
+ <package id="System.Runtime" version="4.0.20-beta-22405" />
+ <package id="System.Runtime.Extensions" version="4.0.10-beta-22412" />
+ <package id="System.Threading" version="4.0.0-beta-22412" />
+ <package id="System.Threading.Thread" version="4.0.0-beta-22512" />
+</packages>
diff --git a/tests/src/JIT/Regression/JitBlue/DevDiv_794115/DevDiv_794115.cs b/tests/src/JIT/Regression/JitBlue/DevDiv_794115/DevDiv_794115.cs
new file mode 100644
index 0000000000..4ddba5aa98
--- /dev/null
+++ b/tests/src/JIT/Regression/JitBlue/DevDiv_794115/DevDiv_794115.cs
@@ -0,0 +1,26 @@
+// Copyright (c) Microsoft. All rights reserved.
+// Licensed under the MIT license. See LICENSE file in the project root for full license information.
+//
+
+using System;
+
+class Repro
+{
+ static int Main()
+ {
+ // This testcase ensures that we correctly handle static field
+ // reads of different size than the destination for mul
+
+ if (Three * 3 != 9)
+ {
+ Console.WriteLine("FAIL!");
+ Console.WriteLine(Three * 3);
+ return 101;
+ }
+ Console.WriteLine("PASS!");
+ return 100;
+ }
+
+ static short Three = 3;
+ static short Dummy = -1;
+} \ No newline at end of file
diff --git a/tests/src/JIT/Regression/JitBlue/DevDiv_794115/DevDiv_794115.csproj b/tests/src/JIT/Regression/JitBlue/DevDiv_794115/DevDiv_794115.csproj
new file mode 100644
index 0000000000..33b2928ebc
--- /dev/null
+++ b/tests/src/JIT/Regression/JitBlue/DevDiv_794115/DevDiv_794115.csproj
@@ -0,0 +1,19 @@
+<?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" />
+ <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
+ <!-- Default configurations to help VS understand the configurations -->
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'">
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'">
+ </PropertyGroup>
+ <Target Name="Build">
+ <ItemGroup>
+ <AllSourceFiles Include="$(MSBuildProjectDirectory)\*.cs" />
+ </ItemGroup>
+ <PropertyGroup>
+ <GenerateRunScript>false</GenerateRunScript>
+ </PropertyGroup>
+ <MSBuild Projects="cs_template.proj" Properties="AssemblyName1=%(AllSourceFiles.FileName);AllowUnsafeBlocks=True;IntermediateOutputPath=$(IntermediateOutputPath)\%(AllSourceFiles.FileName)\" />
+ </Target>
+</Project>
diff --git a/tests/src/JIT/Regression/JitBlue/DevDiv_794115/app.config b/tests/src/JIT/Regression/JitBlue/DevDiv_794115/app.config
new file mode 100644
index 0000000000..62803f5972
--- /dev/null
+++ b/tests/src/JIT/Regression/JitBlue/DevDiv_794115/app.config
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+<configuration>
+ <runtime>
+ <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
+ <dependentAssembly>
+ <assemblyIdentity name="System.Runtime" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.20.0" newVersion="4.0.20.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Text.Encoding" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Threading.Tasks" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.IO" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Reflection" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ </assemblyBinding>
+ </runtime>
+</configuration> \ No newline at end of file
diff --git a/tests/src/JIT/Regression/JitBlue/DevDiv_794115/cs_template.proj b/tests/src/JIT/Regression/JitBlue/DevDiv_794115/cs_template.proj
new file mode 100644
index 0000000000..adc2f21e14
--- /dev/null
+++ b/tests/src/JIT/Regression/JitBlue/DevDiv_794115/cs_template.proj
@@ -0,0 +1,42 @@
+<?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>$(AssemblyName1)</AssemblyName>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{95DFC527-4DC1-495E-97D7-E94EE1F7140D}</ProjectGuid>
+ <OutputType>Exe</OutputType>
+ <AppDesignerFolder>Properties</AppDesignerFolder>
+ <FileAlignment>512</FileAlignment>
+ <ProjectTypeGuids>{786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
+ <ReferencePath>$(ProgramFiles)\Common Files\microsoft shared\VSTT\11.0\UITestExtensionPackages</ReferencePath>
+ <SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\..\</SolutionDir>
+ <RestorePackages>true</RestorePackages>
+ <NuGetPackageImportStamp>7a9bfb7d</NuGetPackageImportStamp>
+ </PropertyGroup>
+ <!-- Default configurations to help VS understand the configurations -->
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ </PropertyGroup>
+ <ItemGroup>
+ <CodeAnalysisDependentAssemblyPaths Condition=" '$(VS100COMNTOOLS)' != '' " Include="$(VS100COMNTOOLS)..\IDE\PrivateAssemblies">
+ <Visible>False</Visible>
+ </CodeAnalysisDependentAssemblyPaths>
+ </ItemGroup>
+ <ItemGroup>
+ <Compile Include="$(AssemblyName1).cs" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="packages.config" />
+ <None Include="app.config" />
+ </ItemGroup>
+ <ItemGroup>
+ <Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />
+ </ItemGroup>
+ <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
+ <PropertyGroup Condition=" '$(MsBuildProjectDirOverride)' != '' ">
+ </PropertyGroup>
+</Project>
diff --git a/tests/src/JIT/Regression/JitBlue/DevDiv_794115/packages.config b/tests/src/JIT/Regression/JitBlue/DevDiv_794115/packages.config
new file mode 100644
index 0000000000..8f8ccd47d6
--- /dev/null
+++ b/tests/src/JIT/Regression/JitBlue/DevDiv_794115/packages.config
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8"?>
+<packages>
+ <package id="System.Console" version="4.0.0-beta-22405" />
+ <package id="System.Runtime" version="4.0.20-beta-22405" />
+ <package id="System.Runtime.Extensions" version="4.0.10-beta-22412" />
+ <package id="System.Threading" version="4.0.0-beta-22412" />
+ <package id="System.Threading.Thread" version="4.0.0-beta-22512" />
+</packages>
diff --git a/tests/src/JIT/Regression/JitBlue/DevDiv_794631/DevDiv_794631.cs b/tests/src/JIT/Regression/JitBlue/DevDiv_794631/DevDiv_794631.cs
new file mode 100644
index 0000000000..731eb09d39
--- /dev/null
+++ b/tests/src/JIT/Regression/JitBlue/DevDiv_794631/DevDiv_794631.cs
@@ -0,0 +1,45 @@
+// Copyright (c) Microsoft. All rights reserved.
+// Licensed under the MIT license. See LICENSE file in the project root for full license information.
+//
+
+using System;
+
+class Repro
+{
+ static int Main()
+ {
+ //This testcase ensures that we correctly generate one ReadUInt16() call
+ //instead of two due to a bug in fgmorph which transformed a call result
+ //as an index of an array incorrectly resulting in an unexpected index
+
+ U1[] u1 = new U1[1];
+ U2[] u2 = new U2[2];
+ u2[1] = new U2();
+ U1 obj = u1[ReadUInt16()];
+
+ if (obj == null)
+ {
+ Console.WriteLine("PASS!");
+ return 100;
+ }
+ else
+ {
+ Console.WriteLine("FAIL!");
+ Console.WriteLine("obj is not null.");
+ return 101;
+ }
+ }
+
+ static byte[] buf = new byte[] { 0, 0, 0, 6 };
+ static int pos;
+
+ static ushort ReadUInt16()
+ {
+ ushort s = (ushort)((buf[pos] << 8) + buf[pos + 1]);
+ pos += 2;
+ return s;
+ }
+
+ class U1 { }
+ class U2 { }
+}
diff --git a/tests/src/JIT/Regression/JitBlue/DevDiv_794631/DevDiv_794631.csproj b/tests/src/JIT/Regression/JitBlue/DevDiv_794631/DevDiv_794631.csproj
new file mode 100644
index 0000000000..33b2928ebc
--- /dev/null
+++ b/tests/src/JIT/Regression/JitBlue/DevDiv_794631/DevDiv_794631.csproj
@@ -0,0 +1,19 @@
+<?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" />
+ <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
+ <!-- Default configurations to help VS understand the configurations -->
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'">
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'">
+ </PropertyGroup>
+ <Target Name="Build">
+ <ItemGroup>
+ <AllSourceFiles Include="$(MSBuildProjectDirectory)\*.cs" />
+ </ItemGroup>
+ <PropertyGroup>
+ <GenerateRunScript>false</GenerateRunScript>
+ </PropertyGroup>
+ <MSBuild Projects="cs_template.proj" Properties="AssemblyName1=%(AllSourceFiles.FileName);AllowUnsafeBlocks=True;IntermediateOutputPath=$(IntermediateOutputPath)\%(AllSourceFiles.FileName)\" />
+ </Target>
+</Project>
diff --git a/tests/src/JIT/Regression/JitBlue/DevDiv_794631/app.config b/tests/src/JIT/Regression/JitBlue/DevDiv_794631/app.config
new file mode 100644
index 0000000000..62803f5972
--- /dev/null
+++ b/tests/src/JIT/Regression/JitBlue/DevDiv_794631/app.config
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+<configuration>
+ <runtime>
+ <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
+ <dependentAssembly>
+ <assemblyIdentity name="System.Runtime" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.20.0" newVersion="4.0.20.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Text.Encoding" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Threading.Tasks" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.IO" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Reflection" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ </assemblyBinding>
+ </runtime>
+</configuration> \ No newline at end of file
diff --git a/tests/src/JIT/Regression/JitBlue/DevDiv_794631/cs_template.proj b/tests/src/JIT/Regression/JitBlue/DevDiv_794631/cs_template.proj
new file mode 100644
index 0000000000..adc2f21e14
--- /dev/null
+++ b/tests/src/JIT/Regression/JitBlue/DevDiv_794631/cs_template.proj
@@ -0,0 +1,42 @@
+<?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>$(AssemblyName1)</AssemblyName>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{95DFC527-4DC1-495E-97D7-E94EE1F7140D}</ProjectGuid>
+ <OutputType>Exe</OutputType>
+ <AppDesignerFolder>Properties</AppDesignerFolder>
+ <FileAlignment>512</FileAlignment>
+ <ProjectTypeGuids>{786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
+ <ReferencePath>$(ProgramFiles)\Common Files\microsoft shared\VSTT\11.0\UITestExtensionPackages</ReferencePath>
+ <SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\..\</SolutionDir>
+ <RestorePackages>true</RestorePackages>
+ <NuGetPackageImportStamp>7a9bfb7d</NuGetPackageImportStamp>
+ </PropertyGroup>
+ <!-- Default configurations to help VS understand the configurations -->
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ </PropertyGroup>
+ <ItemGroup>
+ <CodeAnalysisDependentAssemblyPaths Condition=" '$(VS100COMNTOOLS)' != '' " Include="$(VS100COMNTOOLS)..\IDE\PrivateAssemblies">
+ <Visible>False</Visible>
+ </CodeAnalysisDependentAssemblyPaths>
+ </ItemGroup>
+ <ItemGroup>
+ <Compile Include="$(AssemblyName1).cs" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="packages.config" />
+ <None Include="app.config" />
+ </ItemGroup>
+ <ItemGroup>
+ <Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />
+ </ItemGroup>
+ <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
+ <PropertyGroup Condition=" '$(MsBuildProjectDirOverride)' != '' ">
+ </PropertyGroup>
+</Project>
diff --git a/tests/src/JIT/Regression/JitBlue/DevDiv_794631/packages.config b/tests/src/JIT/Regression/JitBlue/DevDiv_794631/packages.config
new file mode 100644
index 0000000000..8f8ccd47d6
--- /dev/null
+++ b/tests/src/JIT/Regression/JitBlue/DevDiv_794631/packages.config
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8"?>
+<packages>
+ <package id="System.Console" version="4.0.0-beta-22405" />
+ <package id="System.Runtime" version="4.0.20-beta-22405" />
+ <package id="System.Runtime.Extensions" version="4.0.10-beta-22412" />
+ <package id="System.Threading" version="4.0.0-beta-22412" />
+ <package id="System.Threading.Thread" version="4.0.0-beta-22512" />
+</packages>
diff --git a/tests/src/JIT/Regression/JitBlue/DevDiv_815940/DevDiv_815940.cs b/tests/src/JIT/Regression/JitBlue/DevDiv_815940/DevDiv_815940.cs
new file mode 100644
index 0000000000..a4b798002e
--- /dev/null
+++ b/tests/src/JIT/Regression/JitBlue/DevDiv_815940/DevDiv_815940.cs
@@ -0,0 +1,28 @@
+// Copyright (c) Microsoft. All rights reserved.
+// Licensed under the MIT license. See LICENSE file in the project root for full license information.
+//
+
+using System;
+
+class Repro
+{
+ static char c1 = (char)32768;
+ static char c2 = (char)0;
+
+ static int Main()
+ {
+ //This testcase ensures that we correctly generate character comparisons
+
+ if (c1 < c2)
+ {
+ Console.WriteLine("FAIL!");
+ Console.WriteLine("Incorrect character comparison.");
+ return 101;
+ }
+ else
+ {
+ Console.WriteLine("PASS!");
+ return 100;
+ }
+ }
+}
diff --git a/tests/src/JIT/Regression/JitBlue/DevDiv_815940/DevDiv_815940.csproj b/tests/src/JIT/Regression/JitBlue/DevDiv_815940/DevDiv_815940.csproj
new file mode 100644
index 0000000000..33b2928ebc
--- /dev/null
+++ b/tests/src/JIT/Regression/JitBlue/DevDiv_815940/DevDiv_815940.csproj
@@ -0,0 +1,19 @@
+<?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" />
+ <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
+ <!-- Default configurations to help VS understand the configurations -->
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'">
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'">
+ </PropertyGroup>
+ <Target Name="Build">
+ <ItemGroup>
+ <AllSourceFiles Include="$(MSBuildProjectDirectory)\*.cs" />
+ </ItemGroup>
+ <PropertyGroup>
+ <GenerateRunScript>false</GenerateRunScript>
+ </PropertyGroup>
+ <MSBuild Projects="cs_template.proj" Properties="AssemblyName1=%(AllSourceFiles.FileName);AllowUnsafeBlocks=True;IntermediateOutputPath=$(IntermediateOutputPath)\%(AllSourceFiles.FileName)\" />
+ </Target>
+</Project>
diff --git a/tests/src/JIT/Regression/JitBlue/DevDiv_815940/app.config b/tests/src/JIT/Regression/JitBlue/DevDiv_815940/app.config
new file mode 100644
index 0000000000..62803f5972
--- /dev/null
+++ b/tests/src/JIT/Regression/JitBlue/DevDiv_815940/app.config
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+<configuration>
+ <runtime>
+ <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
+ <dependentAssembly>
+ <assemblyIdentity name="System.Runtime" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.20.0" newVersion="4.0.20.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Text.Encoding" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Threading.Tasks" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.IO" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Reflection" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ </assemblyBinding>
+ </runtime>
+</configuration> \ No newline at end of file
diff --git a/tests/src/JIT/Regression/JitBlue/DevDiv_815940/cs_template.proj b/tests/src/JIT/Regression/JitBlue/DevDiv_815940/cs_template.proj
new file mode 100644
index 0000000000..adc2f21e14
--- /dev/null
+++ b/tests/src/JIT/Regression/JitBlue/DevDiv_815940/cs_template.proj
@@ -0,0 +1,42 @@
+<?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>$(AssemblyName1)</AssemblyName>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{95DFC527-4DC1-495E-97D7-E94EE1F7140D}</ProjectGuid>
+ <OutputType>Exe</OutputType>
+ <AppDesignerFolder>Properties</AppDesignerFolder>
+ <FileAlignment>512</FileAlignment>
+ <ProjectTypeGuids>{786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
+ <ReferencePath>$(ProgramFiles)\Common Files\microsoft shared\VSTT\11.0\UITestExtensionPackages</ReferencePath>
+ <SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\..\</SolutionDir>
+ <RestorePackages>true</RestorePackages>
+ <NuGetPackageImportStamp>7a9bfb7d</NuGetPackageImportStamp>
+ </PropertyGroup>
+ <!-- Default configurations to help VS understand the configurations -->
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ </PropertyGroup>
+ <ItemGroup>
+ <CodeAnalysisDependentAssemblyPaths Condition=" '$(VS100COMNTOOLS)' != '' " Include="$(VS100COMNTOOLS)..\IDE\PrivateAssemblies">
+ <Visible>False</Visible>
+ </CodeAnalysisDependentAssemblyPaths>
+ </ItemGroup>
+ <ItemGroup>
+ <Compile Include="$(AssemblyName1).cs" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="packages.config" />
+ <None Include="app.config" />
+ </ItemGroup>
+ <ItemGroup>
+ <Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />
+ </ItemGroup>
+ <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
+ <PropertyGroup Condition=" '$(MsBuildProjectDirOverride)' != '' ">
+ </PropertyGroup>
+</Project>
diff --git a/tests/src/JIT/Regression/JitBlue/DevDiv_815940/packages.config b/tests/src/JIT/Regression/JitBlue/DevDiv_815940/packages.config
new file mode 100644
index 0000000000..8f8ccd47d6
--- /dev/null
+++ b/tests/src/JIT/Regression/JitBlue/DevDiv_815940/packages.config
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8"?>
+<packages>
+ <package id="System.Console" version="4.0.0-beta-22405" />
+ <package id="System.Runtime" version="4.0.20-beta-22405" />
+ <package id="System.Runtime.Extensions" version="4.0.10-beta-22412" />
+ <package id="System.Threading" version="4.0.0-beta-22412" />
+ <package id="System.Threading.Thread" version="4.0.0-beta-22512" />
+</packages>
diff --git a/tests/src/JIT/Regression/JitBlue/DevDiv_816617/DevDiv_816617.cs b/tests/src/JIT/Regression/JitBlue/DevDiv_816617/DevDiv_816617.cs
new file mode 100644
index 0000000000..f6412d63b2
--- /dev/null
+++ b/tests/src/JIT/Regression/JitBlue/DevDiv_816617/DevDiv_816617.cs
@@ -0,0 +1,31 @@
+// Copyright (c) Microsoft. All rights reserved.
+// Licensed under the MIT license. See LICENSE file in the project root for full license information.
+//
+
+using System;
+
+static class Repro
+{
+ static double NegativeZero = -0.0;
+
+ static int Main()
+ {
+ // This testcase ensures that we explicitly add Negative zero
+ // and Positive Zero producing Positive Zero(0x00000000 000000000)
+ // and converting it to Int64 bits results in zero
+
+ Int64 value = BitConverter.DoubleToInt64Bits(NegativeZero + 0.0);
+
+ if (value == 0)
+ {
+ Console.WriteLine("PASS!");
+ return 100;
+ }
+ else
+ {
+ Console.WriteLine("FAIL!");
+ Console.WriteLine("(-0.0 + 0.0) != 0.0");
+ return 101;
+ }
+ }
+}
diff --git a/tests/src/JIT/Regression/JitBlue/DevDiv_816617/DevDiv_816617.csproj b/tests/src/JIT/Regression/JitBlue/DevDiv_816617/DevDiv_816617.csproj
new file mode 100644
index 0000000000..33b2928ebc
--- /dev/null
+++ b/tests/src/JIT/Regression/JitBlue/DevDiv_816617/DevDiv_816617.csproj
@@ -0,0 +1,19 @@
+<?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" />
+ <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
+ <!-- Default configurations to help VS understand the configurations -->
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'">
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'">
+ </PropertyGroup>
+ <Target Name="Build">
+ <ItemGroup>
+ <AllSourceFiles Include="$(MSBuildProjectDirectory)\*.cs" />
+ </ItemGroup>
+ <PropertyGroup>
+ <GenerateRunScript>false</GenerateRunScript>
+ </PropertyGroup>
+ <MSBuild Projects="cs_template.proj" Properties="AssemblyName1=%(AllSourceFiles.FileName);AllowUnsafeBlocks=True;IntermediateOutputPath=$(IntermediateOutputPath)\%(AllSourceFiles.FileName)\" />
+ </Target>
+</Project>
diff --git a/tests/src/JIT/Regression/JitBlue/DevDiv_816617/app.config b/tests/src/JIT/Regression/JitBlue/DevDiv_816617/app.config
new file mode 100644
index 0000000000..62803f5972
--- /dev/null
+++ b/tests/src/JIT/Regression/JitBlue/DevDiv_816617/app.config
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+<configuration>
+ <runtime>
+ <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
+ <dependentAssembly>
+ <assemblyIdentity name="System.Runtime" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.20.0" newVersion="4.0.20.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Text.Encoding" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Threading.Tasks" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.IO" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Reflection" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ </assemblyBinding>
+ </runtime>
+</configuration> \ No newline at end of file
diff --git a/tests/src/JIT/Regression/JitBlue/DevDiv_816617/cs_template.proj b/tests/src/JIT/Regression/JitBlue/DevDiv_816617/cs_template.proj
new file mode 100644
index 0000000000..adc2f21e14
--- /dev/null
+++ b/tests/src/JIT/Regression/JitBlue/DevDiv_816617/cs_template.proj
@@ -0,0 +1,42 @@
+<?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>$(AssemblyName1)</AssemblyName>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{95DFC527-4DC1-495E-97D7-E94EE1F7140D}</ProjectGuid>
+ <OutputType>Exe</OutputType>
+ <AppDesignerFolder>Properties</AppDesignerFolder>
+ <FileAlignment>512</FileAlignment>
+ <ProjectTypeGuids>{786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
+ <ReferencePath>$(ProgramFiles)\Common Files\microsoft shared\VSTT\11.0\UITestExtensionPackages</ReferencePath>
+ <SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\..\</SolutionDir>
+ <RestorePackages>true</RestorePackages>
+ <NuGetPackageImportStamp>7a9bfb7d</NuGetPackageImportStamp>
+ </PropertyGroup>
+ <!-- Default configurations to help VS understand the configurations -->
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ </PropertyGroup>
+ <ItemGroup>
+ <CodeAnalysisDependentAssemblyPaths Condition=" '$(VS100COMNTOOLS)' != '' " Include="$(VS100COMNTOOLS)..\IDE\PrivateAssemblies">
+ <Visible>False</Visible>
+ </CodeAnalysisDependentAssemblyPaths>
+ </ItemGroup>
+ <ItemGroup>
+ <Compile Include="$(AssemblyName1).cs" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="packages.config" />
+ <None Include="app.config" />
+ </ItemGroup>
+ <ItemGroup>
+ <Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />
+ </ItemGroup>
+ <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
+ <PropertyGroup Condition=" '$(MsBuildProjectDirOverride)' != '' ">
+ </PropertyGroup>
+</Project>
diff --git a/tests/src/JIT/Regression/JitBlue/DevDiv_816617/packages.config b/tests/src/JIT/Regression/JitBlue/DevDiv_816617/packages.config
new file mode 100644
index 0000000000..8f8ccd47d6
--- /dev/null
+++ b/tests/src/JIT/Regression/JitBlue/DevDiv_816617/packages.config
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8"?>
+<packages>
+ <package id="System.Console" version="4.0.0-beta-22405" />
+ <package id="System.Runtime" version="4.0.20-beta-22405" />
+ <package id="System.Runtime.Extensions" version="4.0.10-beta-22412" />
+ <package id="System.Threading" version="4.0.0-beta-22412" />
+ <package id="System.Threading.Thread" version="4.0.0-beta-22512" />
+</packages>
diff --git a/tests/src/JIT/Regression/clr-x64-JIT/v4.0/DevDiv34372/DevDiv34372.csproj b/tests/src/JIT/Regression/clr-x64-JIT/v4.0/DevDiv34372/DevDiv34372.csproj
new file mode 100644
index 0000000000..33b2928ebc
--- /dev/null
+++ b/tests/src/JIT/Regression/clr-x64-JIT/v4.0/DevDiv34372/DevDiv34372.csproj
@@ -0,0 +1,19 @@
+<?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" />
+ <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
+ <!-- Default configurations to help VS understand the configurations -->
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'">
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'">
+ </PropertyGroup>
+ <Target Name="Build">
+ <ItemGroup>
+ <AllSourceFiles Include="$(MSBuildProjectDirectory)\*.cs" />
+ </ItemGroup>
+ <PropertyGroup>
+ <GenerateRunScript>false</GenerateRunScript>
+ </PropertyGroup>
+ <MSBuild Projects="cs_template.proj" Properties="AssemblyName1=%(AllSourceFiles.FileName);AllowUnsafeBlocks=True;IntermediateOutputPath=$(IntermediateOutputPath)\%(AllSourceFiles.FileName)\" />
+ </Target>
+</Project>
diff --git a/tests/src/JIT/Regression/clr-x64-JIT/v4.0/DevDiv34372/app.config b/tests/src/JIT/Regression/clr-x64-JIT/v4.0/DevDiv34372/app.config
new file mode 100644
index 0000000000..62803f5972
--- /dev/null
+++ b/tests/src/JIT/Regression/clr-x64-JIT/v4.0/DevDiv34372/app.config
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+<configuration>
+ <runtime>
+ <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
+ <dependentAssembly>
+ <assemblyIdentity name="System.Runtime" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.20.0" newVersion="4.0.20.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Text.Encoding" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Threading.Tasks" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.IO" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Reflection" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-4.0.10.0" newVersion="4.0.10.0" />
+ </dependentAssembly>
+ </assemblyBinding>
+ </runtime>
+</configuration> \ No newline at end of file
diff --git a/tests/src/JIT/Regression/clr-x64-JIT/v4.0/DevDiv34372/cs_template.proj b/tests/src/JIT/Regression/clr-x64-JIT/v4.0/DevDiv34372/cs_template.proj
new file mode 100644
index 0000000000..adc2f21e14
--- /dev/null
+++ b/tests/src/JIT/Regression/clr-x64-JIT/v4.0/DevDiv34372/cs_template.proj
@@ -0,0 +1,42 @@
+<?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>$(AssemblyName1)</AssemblyName>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{95DFC527-4DC1-495E-97D7-E94EE1F7140D}</ProjectGuid>
+ <OutputType>Exe</OutputType>
+ <AppDesignerFolder>Properties</AppDesignerFolder>
+ <FileAlignment>512</FileAlignment>
+ <ProjectTypeGuids>{786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
+ <ReferencePath>$(ProgramFiles)\Common Files\microsoft shared\VSTT\11.0\UITestExtensionPackages</ReferencePath>
+ <SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\..\</SolutionDir>
+ <RestorePackages>true</RestorePackages>
+ <NuGetPackageImportStamp>7a9bfb7d</NuGetPackageImportStamp>
+ </PropertyGroup>
+ <!-- Default configurations to help VS understand the configurations -->
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ </PropertyGroup>
+ <ItemGroup>
+ <CodeAnalysisDependentAssemblyPaths Condition=" '$(VS100COMNTOOLS)' != '' " Include="$(VS100COMNTOOLS)..\IDE\PrivateAssemblies">
+ <Visible>False</Visible>
+ </CodeAnalysisDependentAssemblyPaths>
+ </ItemGroup>
+ <ItemGroup>
+ <Compile Include="$(AssemblyName1).cs" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="packages.config" />
+ <None Include="app.config" />
+ </ItemGroup>
+ <ItemGroup>
+ <Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />
+ </ItemGroup>
+ <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
+ <PropertyGroup Condition=" '$(MsBuildProjectDirOverride)' != '' ">
+ </PropertyGroup>
+</Project>
diff --git a/tests/src/JIT/Regression/clr-x64-JIT/v4.0/DevDiv34372/overRepLocalOpt.cs b/tests/src/JIT/Regression/clr-x64-JIT/v4.0/DevDiv34372/overRepLocalOpt.cs
new file mode 100644
index 0000000000..4a686196ef
--- /dev/null
+++ b/tests/src/JIT/Regression/clr-x64-JIT/v4.0/DevDiv34372/overRepLocalOpt.cs
@@ -0,0 +1,67 @@
+// Copyright (c) Microsoft. All rights reserved.
+// Licensed under the MIT license. See LICENSE file in the project root for full license information.
+//
+
+using System;
+using System.Runtime.CompilerServices;
+
+static class DeadEH
+{
+
+ // This is the method that exposes the JIT bug
+ // #1 - We have a 'live' parameter (i.e. it has real uses)
+ // #2 - All EH is unreachable, but it requires some
+ // some optimization to discover (in sccprop.cpp)
+ // #3 - There is at least on use of the parameter in the EH
+ // #4 - All other uses of parameter are enregisterable
+ [MethodImpl(MethodImplOptions.NoInlining)]
+ static void Foo(object o)
+ {
+ // Use outside EH, that can be enregistered
+ Console.WriteLine(o);
+ bool bad = false;
+ if (bad)
+ {
+ // Unreachable EH
+ try
+ {
+ Console.WriteLine("in try");
+ }
+ catch
+ {
+ // Use inside handler
+ Console.WriteLine("in handler");
+ Console.WriteLine(o);
+ }
+ }
+ // This goes boom
+ GC.Collect();
+ Console.WriteLine("almost done");
+ Console.WriteLine(o);
+ }
+
+ // This is simply here so we can write something to the stack
+ [MethodImpl(MethodImplOptions.NoInlining)]
+ static void Bar(long l)
+ {
+ Console.WriteLine(l.ToString());
+ }
+
+ [MethodImpl(MethodImplOptions.NoInlining)]
+ static void DoIt()
+ {
+ // Put a non-GC pointer in the to-be-mis-reported slot
+ Bar(0x5a5a5a5a5a5a5a5aL);
+ // Expose the bug
+ Foo("testing");
+ }
+
+ // Get everything jitted before we call
+ static int Main()
+ {
+ Foo("prep");
+ Bar(0);
+ DoIt();
+ return 100;
+ }
+}
diff --git a/tests/src/JIT/Regression/clr-x64-JIT/v4.0/DevDiv34372/packages.config b/tests/src/JIT/Regression/clr-x64-JIT/v4.0/DevDiv34372/packages.config
new file mode 100644
index 0000000000..8f8ccd47d6
--- /dev/null
+++ b/tests/src/JIT/Regression/clr-x64-JIT/v4.0/DevDiv34372/packages.config
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8"?>
+<packages>
+ <package id="System.Console" version="4.0.0-beta-22405" />
+ <package id="System.Runtime" version="4.0.20-beta-22405" />
+ <package id="System.Runtime.Extensions" version="4.0.10-beta-22412" />
+ <package id="System.Threading" version="4.0.0-beta-22412" />
+ <package id="System.Threading.Thread" version="4.0.0-beta-22512" />
+</packages>