diff options
Diffstat (limited to 'tests/src/JIT/Methodical/refany')
42 files changed, 4924 insertions, 54 deletions
diff --git a/tests/src/JIT/Methodical/refany/_dbggcreport.csproj b/tests/src/JIT/Methodical/refany/_dbggcreport.csproj index a28d47dc2c..bd8d7fbe62 100644 --- a/tests/src/JIT/Methodical/refany/_dbggcreport.csproj +++ b/tests/src/JIT/Methodical/refany/_dbggcreport.csproj @@ -1,4 +1,4 @@ -<?xml version="1.0" encoding="utf-8"?> +<?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> @@ -27,7 +27,7 @@ </CodeAnalysisDependentAssemblyPaths> </ItemGroup> <PropertyGroup> - <DebugType></DebugType> + <DebugType>Full</DebugType> <Optimize></Optimize> </PropertyGroup> <ItemGroup> diff --git a/tests/src/JIT/Methodical/refany/_dbgnative.csproj b/tests/src/JIT/Methodical/refany/_dbgnative.csproj index 92bd40e3ee..0522cf1df0 100644 --- a/tests/src/JIT/Methodical/refany/_dbgnative.csproj +++ b/tests/src/JIT/Methodical/refany/_dbgnative.csproj @@ -1,4 +1,4 @@ -<?xml version="1.0" encoding="utf-8"?> +<?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> @@ -27,7 +27,7 @@ </CodeAnalysisDependentAssemblyPaths> </ItemGroup> <PropertyGroup> - <DebugType></DebugType> + <DebugType>Full</DebugType> <Optimize></Optimize> </PropertyGroup> <ItemGroup> diff --git a/tests/src/JIT/Methodical/refany/_dbgstress1.csproj b/tests/src/JIT/Methodical/refany/_dbgstress1.csproj index 46e2684b87..6b720d456c 100644 --- a/tests/src/JIT/Methodical/refany/_dbgstress1.csproj +++ b/tests/src/JIT/Methodical/refany/_dbgstress1.csproj @@ -1,4 +1,4 @@ -<?xml version="1.0" encoding="utf-8"?> +<?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> @@ -27,7 +27,7 @@ </CodeAnalysisDependentAssemblyPaths> </ItemGroup> <PropertyGroup> - <DebugType></DebugType> + <DebugType>Full</DebugType> <Optimize></Optimize> </PropertyGroup> <ItemGroup> diff --git a/tests/src/JIT/Methodical/refany/_dbgstress3.csproj b/tests/src/JIT/Methodical/refany/_dbgstress3.csproj index da6d17ea5f..55413c7b60 100644 --- a/tests/src/JIT/Methodical/refany/_dbgstress3.csproj +++ b/tests/src/JIT/Methodical/refany/_dbgstress3.csproj @@ -1,4 +1,4 @@ -<?xml version="1.0" encoding="utf-8"?> +<?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> @@ -27,7 +27,7 @@ </CodeAnalysisDependentAssemblyPaths> </ItemGroup> <PropertyGroup> - <DebugType></DebugType> + <DebugType>Full</DebugType> <Optimize></Optimize> </PropertyGroup> <ItemGroup> diff --git a/tests/src/JIT/Methodical/refany/_dbgvirtcall.csproj b/tests/src/JIT/Methodical/refany/_dbgvirtcall.csproj index a079ac238f..8a34ba4cef 100644 --- a/tests/src/JIT/Methodical/refany/_dbgvirtcall.csproj +++ b/tests/src/JIT/Methodical/refany/_dbgvirtcall.csproj @@ -1,4 +1,4 @@ -<?xml version="1.0" encoding="utf-8"?> +<?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> @@ -27,7 +27,7 @@ </CodeAnalysisDependentAssemblyPaths> </ItemGroup> <PropertyGroup> - <DebugType></DebugType> + <DebugType>Full</DebugType> <Optimize></Optimize> </PropertyGroup> <ItemGroup> diff --git a/tests/src/JIT/Methodical/refany/_il_dbgformat.ilproj b/tests/src/JIT/Methodical/refany/_il_dbgformat.ilproj new file mode 100644 index 0000000000..7d57e60acd --- /dev/null +++ b/tests/src/JIT/Methodical/refany/_il_dbgformat.ilproj @@ -0,0 +1,49 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.props))\dir.props" /> + <PropertyGroup> + <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> + <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> + <AssemblyName>$(MSBuildProjectName)</AssemblyName> + <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> + <PropertyGroup> + <DebugType>Full</DebugType> + </PropertyGroup> + <ItemGroup> + <Compile Include="format.il" /> + </ItemGroup> + <ItemGroup> + <None Include="$(JitPackagesConfigFileDirectory)minimal\project.json" /> + <None Include="app.config" /> + </ItemGroup> + <ItemGroup> + <Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" /> + </ItemGroup> + <PropertyGroup> + <ProjectJson>$(JitPackagesConfigFileDirectory)minimal\project.json</ProjectJson> + <ProjectLockJson>$(JitPackagesConfigFileDirectory)minimal\project.lock.json</ProjectLockJson> + </PropertyGroup> + <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" /> + <PropertyGroup Condition=" '$(MsBuildProjectDirOverride)' != '' "> + </PropertyGroup> +</Project>
\ No newline at end of file diff --git a/tests/src/JIT/Methodical/refany/_il_dbgindcall.ilproj b/tests/src/JIT/Methodical/refany/_il_dbgindcall.ilproj new file mode 100644 index 0000000000..6d973264f2 --- /dev/null +++ b/tests/src/JIT/Methodical/refany/_il_dbgindcall.ilproj @@ -0,0 +1,49 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.props))\dir.props" /> + <PropertyGroup> + <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> + <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> + <AssemblyName>$(MSBuildProjectName)</AssemblyName> + <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> + <PropertyGroup> + <DebugType>Full</DebugType> + </PropertyGroup> + <ItemGroup> + <Compile Include="indcall.il" /> + </ItemGroup> + <ItemGroup> + <None Include="$(JitPackagesConfigFileDirectory)minimal\project.json" /> + <None Include="app.config" /> + </ItemGroup> + <ItemGroup> + <Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" /> + </ItemGroup> + <PropertyGroup> + <ProjectJson>$(JitPackagesConfigFileDirectory)minimal\project.json</ProjectJson> + <ProjectLockJson>$(JitPackagesConfigFileDirectory)minimal\project.lock.json</ProjectLockJson> + </PropertyGroup> + <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" /> + <PropertyGroup Condition=" '$(MsBuildProjectDirOverride)' != '' "> + </PropertyGroup> +</Project>
\ No newline at end of file diff --git a/tests/src/JIT/Methodical/refany/_il_dbglcs.ilproj b/tests/src/JIT/Methodical/refany/_il_dbglcs.ilproj new file mode 100644 index 0000000000..3c1de4821b --- /dev/null +++ b/tests/src/JIT/Methodical/refany/_il_dbglcs.ilproj @@ -0,0 +1,49 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.props))\dir.props" /> + <PropertyGroup> + <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> + <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> + <AssemblyName>$(MSBuildProjectName)</AssemblyName> + <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> + <PropertyGroup> + <DebugType>Full</DebugType> + </PropertyGroup> + <ItemGroup> + <Compile Include="lcs.il" /> + </ItemGroup> + <ItemGroup> + <None Include="$(JitPackagesConfigFileDirectory)minimal\project.json" /> + <None Include="app.config" /> + </ItemGroup> + <ItemGroup> + <Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" /> + </ItemGroup> + <PropertyGroup> + <ProjectJson>$(JitPackagesConfigFileDirectory)minimal\project.json</ProjectJson> + <ProjectLockJson>$(JitPackagesConfigFileDirectory)minimal\project.lock.json</ProjectLockJson> + </PropertyGroup> + <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" /> + <PropertyGroup Condition=" '$(MsBuildProjectDirOverride)' != '' "> + </PropertyGroup> +</Project>
\ No newline at end of file diff --git a/tests/src/JIT/Methodical/refany/_il_dbglongsig.ilproj b/tests/src/JIT/Methodical/refany/_il_dbglongsig.ilproj new file mode 100644 index 0000000000..158b761ac4 --- /dev/null +++ b/tests/src/JIT/Methodical/refany/_il_dbglongsig.ilproj @@ -0,0 +1,49 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.props))\dir.props" /> + <PropertyGroup> + <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> + <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> + <AssemblyName>$(MSBuildProjectName)</AssemblyName> + <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> + <PropertyGroup> + <DebugType>Full</DebugType> + </PropertyGroup> + <ItemGroup> + <Compile Include="longsig.il" /> + </ItemGroup> + <ItemGroup> + <None Include="$(JitPackagesConfigFileDirectory)minimal\project.json" /> + <None Include="app.config" /> + </ItemGroup> + <ItemGroup> + <Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" /> + </ItemGroup> + <PropertyGroup> + <ProjectJson>$(JitPackagesConfigFileDirectory)minimal\project.json</ProjectJson> + <ProjectLockJson>$(JitPackagesConfigFileDirectory)minimal\project.lock.json</ProjectLockJson> + </PropertyGroup> + <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" /> + <PropertyGroup Condition=" '$(MsBuildProjectDirOverride)' != '' "> + </PropertyGroup> +</Project>
\ No newline at end of file diff --git a/tests/src/JIT/Methodical/refany/_il_dbgshortsig.ilproj b/tests/src/JIT/Methodical/refany/_il_dbgshortsig.ilproj new file mode 100644 index 0000000000..8a873da9c2 --- /dev/null +++ b/tests/src/JIT/Methodical/refany/_il_dbgshortsig.ilproj @@ -0,0 +1,49 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.props))\dir.props" /> + <PropertyGroup> + <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> + <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> + <AssemblyName>$(MSBuildProjectName)</AssemblyName> + <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> + <PropertyGroup> + <DebugType>Full</DebugType> + </PropertyGroup> + <ItemGroup> + <Compile Include="shortsig.il" /> + </ItemGroup> + <ItemGroup> + <None Include="$(JitPackagesConfigFileDirectory)minimal\project.json" /> + <None Include="app.config" /> + </ItemGroup> + <ItemGroup> + <Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" /> + </ItemGroup> + <PropertyGroup> + <ProjectJson>$(JitPackagesConfigFileDirectory)minimal\project.json</ProjectJson> + <ProjectLockJson>$(JitPackagesConfigFileDirectory)minimal\project.lock.json</ProjectLockJson> + </PropertyGroup> + <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" /> + <PropertyGroup Condition=" '$(MsBuildProjectDirOverride)' != '' "> + </PropertyGroup> +</Project>
\ No newline at end of file diff --git a/tests/src/JIT/Methodical/refany/_il_relarray1.ilproj b/tests/src/JIT/Methodical/refany/_il_relarray1.ilproj index af25cf21a5..817ef88058 100644 --- a/tests/src/JIT/Methodical/refany/_il_relarray1.ilproj +++ b/tests/src/JIT/Methodical/refany/_il_relarray1.ilproj @@ -1,4 +1,4 @@ -<?xml version="1.0" encoding="utf-8"?> +<?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> @@ -26,7 +26,7 @@ </CodeAnalysisDependentAssemblyPaths> </ItemGroup> <PropertyGroup> - <DebugType></DebugType> + </PropertyGroup> <ItemGroup> <Compile Include="array1.il" /> diff --git a/tests/src/JIT/Methodical/refany/_il_relarray2.ilproj b/tests/src/JIT/Methodical/refany/_il_relarray2.ilproj index e1bc35f775..d80db04e48 100644 --- a/tests/src/JIT/Methodical/refany/_il_relarray2.ilproj +++ b/tests/src/JIT/Methodical/refany/_il_relarray2.ilproj @@ -1,4 +1,4 @@ -<?xml version="1.0" encoding="utf-8"?> +<?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> @@ -26,7 +26,7 @@ </CodeAnalysisDependentAssemblyPaths> </ItemGroup> <PropertyGroup> - <DebugType></DebugType> + </PropertyGroup> <ItemGroup> <Compile Include="array2.il" /> diff --git a/tests/src/JIT/Methodical/refany/_il_relarray3.ilproj b/tests/src/JIT/Methodical/refany/_il_relarray3.ilproj index 30b97b21f7..2379317471 100644 --- a/tests/src/JIT/Methodical/refany/_il_relarray3.ilproj +++ b/tests/src/JIT/Methodical/refany/_il_relarray3.ilproj @@ -1,4 +1,4 @@ -<?xml version="1.0" encoding="utf-8"?> +<?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> @@ -26,7 +26,7 @@ </CodeAnalysisDependentAssemblyPaths> </ItemGroup> <PropertyGroup> - <DebugType></DebugType> + </PropertyGroup> <ItemGroup> <Compile Include="array3.il" /> diff --git a/tests/src/JIT/Methodical/refany/_il_relformat.ilproj b/tests/src/JIT/Methodical/refany/_il_relformat.ilproj new file mode 100644 index 0000000000..2cdea74593 --- /dev/null +++ b/tests/src/JIT/Methodical/refany/_il_relformat.ilproj @@ -0,0 +1,49 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.props))\dir.props" /> + <PropertyGroup> + <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> + <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> + <AssemblyName>$(MSBuildProjectName)</AssemblyName> + <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> + <PropertyGroup> + + </PropertyGroup> + <ItemGroup> + <Compile Include="format.il" /> + </ItemGroup> + <ItemGroup> + <None Include="$(JitPackagesConfigFileDirectory)minimal\project.json" /> + <None Include="app.config" /> + </ItemGroup> + <ItemGroup> + <Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" /> + </ItemGroup> + <PropertyGroup> + <ProjectJson>$(JitPackagesConfigFileDirectory)minimal\project.json</ProjectJson> + <ProjectLockJson>$(JitPackagesConfigFileDirectory)minimal\project.lock.json</ProjectLockJson> + </PropertyGroup> + <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" /> + <PropertyGroup Condition=" '$(MsBuildProjectDirOverride)' != '' "> + </PropertyGroup> +</Project>
\ No newline at end of file diff --git a/tests/src/JIT/Methodical/refany/_il_relindcall.ilproj b/tests/src/JIT/Methodical/refany/_il_relindcall.ilproj new file mode 100644 index 0000000000..5357729b9e --- /dev/null +++ b/tests/src/JIT/Methodical/refany/_il_relindcall.ilproj @@ -0,0 +1,49 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.props))\dir.props" /> + <PropertyGroup> + <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> + <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> + <AssemblyName>$(MSBuildProjectName)</AssemblyName> + <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> + <PropertyGroup> + + </PropertyGroup> + <ItemGroup> + <Compile Include="indcall.il" /> + </ItemGroup> + <ItemGroup> + <None Include="$(JitPackagesConfigFileDirectory)minimal\project.json" /> + <None Include="app.config" /> + </ItemGroup> + <ItemGroup> + <Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" /> + </ItemGroup> + <PropertyGroup> + <ProjectJson>$(JitPackagesConfigFileDirectory)minimal\project.json</ProjectJson> + <ProjectLockJson>$(JitPackagesConfigFileDirectory)minimal\project.lock.json</ProjectLockJson> + </PropertyGroup> + <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" /> + <PropertyGroup Condition=" '$(MsBuildProjectDirOverride)' != '' "> + </PropertyGroup> +</Project>
\ No newline at end of file diff --git a/tests/src/JIT/Methodical/refany/_il_rellcs.ilproj b/tests/src/JIT/Methodical/refany/_il_rellcs.ilproj new file mode 100644 index 0000000000..3e75c6b167 --- /dev/null +++ b/tests/src/JIT/Methodical/refany/_il_rellcs.ilproj @@ -0,0 +1,49 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.props))\dir.props" /> + <PropertyGroup> + <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> + <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> + <AssemblyName>$(MSBuildProjectName)</AssemblyName> + <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> + <PropertyGroup> + + </PropertyGroup> + <ItemGroup> + <Compile Include="lcs.il" /> + </ItemGroup> + <ItemGroup> + <None Include="$(JitPackagesConfigFileDirectory)minimal\project.json" /> + <None Include="app.config" /> + </ItemGroup> + <ItemGroup> + <Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" /> + </ItemGroup> + <PropertyGroup> + <ProjectJson>$(JitPackagesConfigFileDirectory)minimal\project.json</ProjectJson> + <ProjectLockJson>$(JitPackagesConfigFileDirectory)minimal\project.lock.json</ProjectLockJson> + </PropertyGroup> + <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" /> + <PropertyGroup Condition=" '$(MsBuildProjectDirOverride)' != '' "> + </PropertyGroup> +</Project>
\ No newline at end of file diff --git a/tests/src/JIT/Methodical/refany/_il_rellongsig.ilproj b/tests/src/JIT/Methodical/refany/_il_rellongsig.ilproj new file mode 100644 index 0000000000..8d49a4040e --- /dev/null +++ b/tests/src/JIT/Methodical/refany/_il_rellongsig.ilproj @@ -0,0 +1,49 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.props))\dir.props" /> + <PropertyGroup> + <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> + <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> + <AssemblyName>$(MSBuildProjectName)</AssemblyName> + <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> + <PropertyGroup> + + </PropertyGroup> + <ItemGroup> + <Compile Include="longsig.il" /> + </ItemGroup> + <ItemGroup> + <None Include="$(JitPackagesConfigFileDirectory)minimal\project.json" /> + <None Include="app.config" /> + </ItemGroup> + <ItemGroup> + <Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" /> + </ItemGroup> + <PropertyGroup> + <ProjectJson>$(JitPackagesConfigFileDirectory)minimal\project.json</ProjectJson> + <ProjectLockJson>$(JitPackagesConfigFileDirectory)minimal\project.lock.json</ProjectLockJson> + </PropertyGroup> + <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" /> + <PropertyGroup Condition=" '$(MsBuildProjectDirOverride)' != '' "> + </PropertyGroup> +</Project>
\ No newline at end of file diff --git a/tests/src/JIT/Methodical/refany/_il_relnative.ilproj b/tests/src/JIT/Methodical/refany/_il_relnative.ilproj index 775f1701a3..ed89025217 100644 --- a/tests/src/JIT/Methodical/refany/_il_relnative.ilproj +++ b/tests/src/JIT/Methodical/refany/_il_relnative.ilproj @@ -1,4 +1,4 @@ -<?xml version="1.0" encoding="utf-8"?> +<?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> @@ -26,7 +26,7 @@ </CodeAnalysisDependentAssemblyPaths> </ItemGroup> <PropertyGroup> - <DebugType></DebugType> + </PropertyGroup> <ItemGroup> <Compile Include="native.il" /> diff --git a/tests/src/JIT/Methodical/refany/_il_relseq.ilproj b/tests/src/JIT/Methodical/refany/_il_relseq.ilproj index 0503d9fae5..2144f1f012 100644 --- a/tests/src/JIT/Methodical/refany/_il_relseq.ilproj +++ b/tests/src/JIT/Methodical/refany/_il_relseq.ilproj @@ -1,4 +1,4 @@ -<?xml version="1.0" encoding="utf-8"?> +<?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> @@ -26,7 +26,7 @@ </CodeAnalysisDependentAssemblyPaths> </ItemGroup> <PropertyGroup> - <DebugType></DebugType> + </PropertyGroup> <ItemGroup> <Compile Include="seq.il" /> diff --git a/tests/src/JIT/Methodical/refany/_il_relshortsig.ilproj b/tests/src/JIT/Methodical/refany/_il_relshortsig.ilproj new file mode 100644 index 0000000000..880400caad --- /dev/null +++ b/tests/src/JIT/Methodical/refany/_il_relshortsig.ilproj @@ -0,0 +1,49 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.props))\dir.props" /> + <PropertyGroup> + <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> + <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> + <AssemblyName>$(MSBuildProjectName)</AssemblyName> + <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> + <PropertyGroup> + + </PropertyGroup> + <ItemGroup> + <Compile Include="shortsig.il" /> + </ItemGroup> + <ItemGroup> + <None Include="$(JitPackagesConfigFileDirectory)minimal\project.json" /> + <None Include="app.config" /> + </ItemGroup> + <ItemGroup> + <Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" /> + </ItemGroup> + <PropertyGroup> + <ProjectJson>$(JitPackagesConfigFileDirectory)minimal\project.json</ProjectJson> + <ProjectLockJson>$(JitPackagesConfigFileDirectory)minimal\project.lock.json</ProjectLockJson> + </PropertyGroup> + <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" /> + <PropertyGroup Condition=" '$(MsBuildProjectDirOverride)' != '' "> + </PropertyGroup> +</Project>
\ No newline at end of file diff --git a/tests/src/JIT/Methodical/refany/_il_relstress2.ilproj b/tests/src/JIT/Methodical/refany/_il_relstress2.ilproj index 9fca21f25f..bdcc87fc66 100644 --- a/tests/src/JIT/Methodical/refany/_il_relstress2.ilproj +++ b/tests/src/JIT/Methodical/refany/_il_relstress2.ilproj @@ -1,4 +1,4 @@ -<?xml version="1.0" encoding="utf-8"?> +<?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> @@ -26,7 +26,7 @@ </CodeAnalysisDependentAssemblyPaths> </ItemGroup> <PropertyGroup> - <DebugType></DebugType> + </PropertyGroup> <ItemGroup> <Compile Include="stress2.il" /> diff --git a/tests/src/JIT/Methodical/refany/_il_relu_native.ilproj b/tests/src/JIT/Methodical/refany/_il_relu_native.ilproj index d4f487d6fd..b60197b532 100644 --- a/tests/src/JIT/Methodical/refany/_il_relu_native.ilproj +++ b/tests/src/JIT/Methodical/refany/_il_relu_native.ilproj @@ -1,4 +1,4 @@ -<?xml version="1.0" encoding="utf-8"?> +<?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> @@ -26,7 +26,7 @@ </CodeAnalysisDependentAssemblyPaths> </ItemGroup> <PropertyGroup> - <DebugType></DebugType> + </PropertyGroup> <ItemGroup> <Compile Include="u_native.il" /> diff --git a/tests/src/JIT/Methodical/refany/_relgcreport.csproj b/tests/src/JIT/Methodical/refany/_relgcreport.csproj index a28d47dc2c..c55d563d1f 100644 --- a/tests/src/JIT/Methodical/refany/_relgcreport.csproj +++ b/tests/src/JIT/Methodical/refany/_relgcreport.csproj @@ -1,4 +1,4 @@ -<?xml version="1.0" encoding="utf-8"?> +<?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> @@ -27,7 +27,7 @@ </CodeAnalysisDependentAssemblyPaths> </ItemGroup> <PropertyGroup> - <DebugType></DebugType> + <DebugType>None</DebugType> <Optimize></Optimize> </PropertyGroup> <ItemGroup> diff --git a/tests/src/JIT/Methodical/refany/_relnative.csproj b/tests/src/JIT/Methodical/refany/_relnative.csproj index 92bd40e3ee..e5b54f5eb2 100644 --- a/tests/src/JIT/Methodical/refany/_relnative.csproj +++ b/tests/src/JIT/Methodical/refany/_relnative.csproj @@ -1,4 +1,4 @@ -<?xml version="1.0" encoding="utf-8"?> +<?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> @@ -27,7 +27,7 @@ </CodeAnalysisDependentAssemblyPaths> </ItemGroup> <PropertyGroup> - <DebugType></DebugType> + <DebugType>None</DebugType> <Optimize></Optimize> </PropertyGroup> <ItemGroup> diff --git a/tests/src/JIT/Methodical/refany/_relstress1.csproj b/tests/src/JIT/Methodical/refany/_relstress1.csproj index 46e2684b87..056c79c80a 100644 --- a/tests/src/JIT/Methodical/refany/_relstress1.csproj +++ b/tests/src/JIT/Methodical/refany/_relstress1.csproj @@ -1,4 +1,4 @@ -<?xml version="1.0" encoding="utf-8"?> +<?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> @@ -27,7 +27,7 @@ </CodeAnalysisDependentAssemblyPaths> </ItemGroup> <PropertyGroup> - <DebugType></DebugType> + <DebugType>None</DebugType> <Optimize></Optimize> </PropertyGroup> <ItemGroup> diff --git a/tests/src/JIT/Methodical/refany/_relstress3.csproj b/tests/src/JIT/Methodical/refany/_relstress3.csproj index da6d17ea5f..9b66fe08ba 100644 --- a/tests/src/JIT/Methodical/refany/_relstress3.csproj +++ b/tests/src/JIT/Methodical/refany/_relstress3.csproj @@ -1,4 +1,4 @@ -<?xml version="1.0" encoding="utf-8"?> +<?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> @@ -27,7 +27,7 @@ </CodeAnalysisDependentAssemblyPaths> </ItemGroup> <PropertyGroup> - <DebugType></DebugType> + <DebugType>None</DebugType> <Optimize></Optimize> </PropertyGroup> <ItemGroup> diff --git a/tests/src/JIT/Methodical/refany/_relvirtcall.csproj b/tests/src/JIT/Methodical/refany/_relvirtcall.csproj index a079ac238f..c6a300dbff 100644 --- a/tests/src/JIT/Methodical/refany/_relvirtcall.csproj +++ b/tests/src/JIT/Methodical/refany/_relvirtcall.csproj @@ -1,4 +1,4 @@ -<?xml version="1.0" encoding="utf-8"?> +<?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> @@ -27,7 +27,7 @@ </CodeAnalysisDependentAssemblyPaths> </ItemGroup> <PropertyGroup> - <DebugType></DebugType> + <DebugType>None</DebugType> <Optimize></Optimize> </PropertyGroup> <ItemGroup> diff --git a/tests/src/JIT/Methodical/refany/_speed_dbggcreport.csproj b/tests/src/JIT/Methodical/refany/_speed_dbggcreport.csproj index 542121257d..b48b1d03eb 100644 --- a/tests/src/JIT/Methodical/refany/_speed_dbggcreport.csproj +++ b/tests/src/JIT/Methodical/refany/_speed_dbggcreport.csproj @@ -1,4 +1,4 @@ -<?xml version="1.0" encoding="utf-8"?> +<?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> @@ -27,7 +27,7 @@ </CodeAnalysisDependentAssemblyPaths> </ItemGroup> <PropertyGroup> - <DebugType></DebugType> + <DebugType>Full</DebugType> <Optimize>True</Optimize> </PropertyGroup> <ItemGroup> diff --git a/tests/src/JIT/Methodical/refany/_speed_dbgnative.csproj b/tests/src/JIT/Methodical/refany/_speed_dbgnative.csproj index 3e78776889..7a9791bad4 100644 --- a/tests/src/JIT/Methodical/refany/_speed_dbgnative.csproj +++ b/tests/src/JIT/Methodical/refany/_speed_dbgnative.csproj @@ -1,4 +1,4 @@ -<?xml version="1.0" encoding="utf-8"?> +<?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> @@ -27,7 +27,7 @@ </CodeAnalysisDependentAssemblyPaths> </ItemGroup> <PropertyGroup> - <DebugType></DebugType> + <DebugType>Full</DebugType> <Optimize>True</Optimize> </PropertyGroup> <ItemGroup> diff --git a/tests/src/JIT/Methodical/refany/_speed_dbgstress1.csproj b/tests/src/JIT/Methodical/refany/_speed_dbgstress1.csproj index b9e6a91c01..f880240acc 100644 --- a/tests/src/JIT/Methodical/refany/_speed_dbgstress1.csproj +++ b/tests/src/JIT/Methodical/refany/_speed_dbgstress1.csproj @@ -1,4 +1,4 @@ -<?xml version="1.0" encoding="utf-8"?> +<?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> @@ -27,7 +27,7 @@ </CodeAnalysisDependentAssemblyPaths> </ItemGroup> <PropertyGroup> - <DebugType></DebugType> + <DebugType>Full</DebugType> <Optimize>True</Optimize> </PropertyGroup> <ItemGroup> diff --git a/tests/src/JIT/Methodical/refany/_speed_dbgstress3.csproj b/tests/src/JIT/Methodical/refany/_speed_dbgstress3.csproj index 160a990725..cc06e1153b 100644 --- a/tests/src/JIT/Methodical/refany/_speed_dbgstress3.csproj +++ b/tests/src/JIT/Methodical/refany/_speed_dbgstress3.csproj @@ -1,4 +1,4 @@ -<?xml version="1.0" encoding="utf-8"?> +<?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> @@ -27,7 +27,7 @@ </CodeAnalysisDependentAssemblyPaths> </ItemGroup> <PropertyGroup> - <DebugType></DebugType> + <DebugType>Full</DebugType> <Optimize>True</Optimize> </PropertyGroup> <ItemGroup> diff --git a/tests/src/JIT/Methodical/refany/_speed_dbgvirtcall.csproj b/tests/src/JIT/Methodical/refany/_speed_dbgvirtcall.csproj index 0a4d2604b3..b4ea92509e 100644 --- a/tests/src/JIT/Methodical/refany/_speed_dbgvirtcall.csproj +++ b/tests/src/JIT/Methodical/refany/_speed_dbgvirtcall.csproj @@ -1,4 +1,4 @@ -<?xml version="1.0" encoding="utf-8"?> +<?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> @@ -27,7 +27,7 @@ </CodeAnalysisDependentAssemblyPaths> </ItemGroup> <PropertyGroup> - <DebugType></DebugType> + <DebugType>Full</DebugType> <Optimize>True</Optimize> </PropertyGroup> <ItemGroup> diff --git a/tests/src/JIT/Methodical/refany/_speed_relgcreport.csproj b/tests/src/JIT/Methodical/refany/_speed_relgcreport.csproj index 542121257d..8fdb206051 100644 --- a/tests/src/JIT/Methodical/refany/_speed_relgcreport.csproj +++ b/tests/src/JIT/Methodical/refany/_speed_relgcreport.csproj @@ -1,4 +1,4 @@ -<?xml version="1.0" encoding="utf-8"?> +<?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> @@ -27,7 +27,7 @@ </CodeAnalysisDependentAssemblyPaths> </ItemGroup> <PropertyGroup> - <DebugType></DebugType> + <DebugType>None</DebugType> <Optimize>True</Optimize> </PropertyGroup> <ItemGroup> diff --git a/tests/src/JIT/Methodical/refany/_speed_relnative.csproj b/tests/src/JIT/Methodical/refany/_speed_relnative.csproj index 3e78776889..7ed01a6c87 100644 --- a/tests/src/JIT/Methodical/refany/_speed_relnative.csproj +++ b/tests/src/JIT/Methodical/refany/_speed_relnative.csproj @@ -1,4 +1,4 @@ -<?xml version="1.0" encoding="utf-8"?> +<?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> @@ -27,7 +27,7 @@ </CodeAnalysisDependentAssemblyPaths> </ItemGroup> <PropertyGroup> - <DebugType></DebugType> + <DebugType>None</DebugType> <Optimize>True</Optimize> </PropertyGroup> <ItemGroup> diff --git a/tests/src/JIT/Methodical/refany/_speed_relstress1.csproj b/tests/src/JIT/Methodical/refany/_speed_relstress1.csproj index b9e6a91c01..9c686325e5 100644 --- a/tests/src/JIT/Methodical/refany/_speed_relstress1.csproj +++ b/tests/src/JIT/Methodical/refany/_speed_relstress1.csproj @@ -1,4 +1,4 @@ -<?xml version="1.0" encoding="utf-8"?> +<?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> @@ -27,7 +27,7 @@ </CodeAnalysisDependentAssemblyPaths> </ItemGroup> <PropertyGroup> - <DebugType></DebugType> + <DebugType>None</DebugType> <Optimize>True</Optimize> </PropertyGroup> <ItemGroup> diff --git a/tests/src/JIT/Methodical/refany/_speed_relstress3.csproj b/tests/src/JIT/Methodical/refany/_speed_relstress3.csproj index 160a990725..923a823775 100644 --- a/tests/src/JIT/Methodical/refany/_speed_relstress3.csproj +++ b/tests/src/JIT/Methodical/refany/_speed_relstress3.csproj @@ -1,4 +1,4 @@ -<?xml version="1.0" encoding="utf-8"?> +<?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> @@ -27,7 +27,7 @@ </CodeAnalysisDependentAssemblyPaths> </ItemGroup> <PropertyGroup> - <DebugType></DebugType> + <DebugType>None</DebugType> <Optimize>True</Optimize> </PropertyGroup> <ItemGroup> diff --git a/tests/src/JIT/Methodical/refany/_speed_relvirtcall.csproj b/tests/src/JIT/Methodical/refany/_speed_relvirtcall.csproj index 0a4d2604b3..8322e96936 100644 --- a/tests/src/JIT/Methodical/refany/_speed_relvirtcall.csproj +++ b/tests/src/JIT/Methodical/refany/_speed_relvirtcall.csproj @@ -1,4 +1,4 @@ -<?xml version="1.0" encoding="utf-8"?> +<?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> @@ -27,7 +27,7 @@ </CodeAnalysisDependentAssemblyPaths> </ItemGroup> <PropertyGroup> - <DebugType></DebugType> + <DebugType>None</DebugType> <Optimize>True</Optimize> </PropertyGroup> <ItemGroup> diff --git a/tests/src/JIT/Methodical/refany/format.il b/tests/src/JIT/Methodical/refany/format.il new file mode 100644 index 0000000000..8b6595bb0d --- /dev/null +++ b/tests/src/JIT/Methodical/refany/format.il @@ -0,0 +1,1177 @@ +// Copyright (c) Microsoft. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +.assembly extern System.Console +{ + .publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) + .ver 4:0:0:0 +} + +.assembly extern mscorlib +{ +} +.assembly format// as "format" +{ +} +.module format.exe +.namespace JitTest +{ + .class value private auto ansi serializable sealed Mood + extends [mscorlib]System.Enum + { + .field public specialname rtspecialname int32 value__ + .field public static literal value class JitTest.Mood good = int32(0x00000000) + .field public static literal value class JitTest.Mood bad = int32(0x00000001) + .field public static literal value class JitTest.Mood worse = int32(0x00000002) + } // end of class Mood + + .class private auto ansi TestClass + extends [mscorlib]System.Object + { + .field private int32 m_d + .field private static unsigned int32 m_u + .field private int64 m_l + .field private static unsigned int64 m_ul + .field private float32 m_f + .field private float64 m_dbl + .field private bool m_b + .field private static value class [mscorlib]System.DateTime m_t + .field private value class [mscorlib]System.PlatformID m_pid + .field private value class JitTest.Mood m_mood + .method private hidebysig static string + Format(typedref format, + typedref _ref) il managed + { + .maxstack 3 + .locals (int32 V_0, + wchar[] V_1, + string V_2, + int32 V_3, + int32 V_4, + bool V_5, + bool V_6, + typedref V_7, + wchar V_8, + value class JitTest.Mood V_9) + IL_0000: ldarg.0 + IL_0001: refanyval [mscorlib]System.String + IL_0006: ldind.ref + IL_0007: call instance int32 [mscorlib]System.String::get_Length() + IL_000c: stloc.0 + IL_000d: ldarg.0 + IL_000e: refanyval [mscorlib]System.String + IL_0013: ldind.ref + IL_0014: call instance wchar[] [mscorlib]System.String::ToCharArray() + IL_0019: stloc.1 + IL_001a: ldstr "" + IL_001f: stloc.2 + IL_0020: ldc.i4.0 + IL_0021: stloc.3 + IL_0022: ldc.i4.0 + IL_0023: stloc.s V_4 + IL_0025: br IL_03d4 + + IL_002a: ldloc.1 + IL_002b: ldloc.s V_4 + IL_002d: ldelem.u2 + IL_002e: ldc.i4.s 37 + IL_0030: beq.s IL_004b + + IL_0032: ldloc.2 + IL_0033: ldloc.1 + IL_0034: ldloc.s V_4 + IL_0036: ldelem.u2 + IL_003b: box [mscorlib]System.Char + IL_0040: call string [mscorlib]System.String::Concat(class [mscorlib]System.Object, + class [mscorlib]System.Object) + IL_0045: stloc.2 + IL_0046: br IL_03ce + + IL_004b: ldloc.s V_4 + IL_004d: ldc.i4.1 + IL_004e: add + IL_004f: stloc.s V_4 + IL_0051: ldloc.s V_4 + IL_0053: ldloc.0 + IL_0054: blt.s IL_005c + + IL_0056: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_005b: throw + + IL_005c: ldc.i4.0 + IL_005d: stloc.s V_5 + IL_005f: ldc.i4.1 + IL_0060: stloc.s V_6 + IL_0062: ldloca.s V_5 + IL_0064: mkrefany [mscorlib]System.Boolean + IL_0069: stloc.s V_7 + IL_006b: ldloc.1 + IL_006c: ldloc.s V_4 + IL_006e: ldelem.u2 + IL_006f: ldc.i4.s 108 + IL_0071: bne.un.s IL_008d + + IL_0073: ldloca.s V_6 + IL_0075: mkrefany [mscorlib]System.Boolean + IL_007a: stloc.s V_7 + IL_007c: ldloc.s V_4 + IL_007e: ldc.i4.1 + IL_007f: add + IL_0080: stloc.s V_4 + IL_0082: ldloc.s V_4 + IL_0084: ldloc.0 + IL_0085: blt.s IL_008d + + IL_0087: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_008c: throw + + IL_008d: ldloc.3 + IL_008e: dup + IL_008f: ldc.i4.1 + IL_0090: add + IL_0091: stloc.3 + IL_0092: ldc.i4.1 + IL_0093: bne.un.s IL_009b + + IL_0095: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_009a: throw + + IL_009b: ldloc.1 + IL_009c: ldloc.s V_4 + IL_009e: ldelem.u2 + IL_009f: stloc.s V_8 + IL_00a1: ldloc.s V_8 + IL_00a3: ldc.i4.s 98 + IL_00a5: sub + IL_00a6: switch ( + IL_00e6, + IL_03c8, + IL_013b, + IL_0350, + IL_0213) + IL_00bf: ldloc.s V_8 + IL_00c1: ldc.i4.s 112 + IL_00c3: sub + IL_00c4: switch ( + IL_030d, + IL_03c8, + IL_03c8, + IL_027f, + IL_02cc, + IL_01a7) + IL_00e1: br IL_03c8 + + IL_00e6: ldloc.s V_7 + IL_00e8: refanyval [mscorlib]System.Boolean + IL_00ed: ldind.i1 + IL_00ee: brfalse.s IL_00f6 + + IL_00f0: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_00f5: throw + + IL_00f6: ldarg.1 + IL_00f7: refanytype + IL_00f9: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_00fe: ldtoken [mscorlib]System.Boolean + IL_0103: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_0108: beq.s IL_0110 + + IL_010a: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_010f: throw + + IL_0110: ldarg.1 + IL_0111: refanyval [mscorlib]System.Boolean + IL_0116: ldind.i1 + IL_0117: brfalse.s IL_012a + + IL_0119: ldloc.2 + IL_011a: ldstr "true" + IL_011f: call string [mscorlib]System.String::Concat(string, + string) + IL_0124: stloc.2 + IL_0125: br IL_03ce + + IL_012a: ldloc.2 + IL_012b: ldstr "false" + IL_0130: call string [mscorlib]System.String::Concat(string, + string) + IL_0135: stloc.2 + IL_0136: br IL_03ce + + IL_013b: ldloc.s V_7 + IL_013d: refanyval [mscorlib]System.Boolean + IL_0142: ldind.i1 + IL_0143: brfalse.s IL_0176 + + IL_0145: ldarg.1 + IL_0146: refanytype + IL_0148: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_014d: ldtoken [mscorlib]System.Int64 + IL_0152: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_0157: beq.s IL_015f + + IL_0159: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_015e: throw + + IL_015f: ldloc.2 + IL_0160: ldarg.1 + IL_0161: refanyval [mscorlib]System.Int64 + IL_0166: call instance string [mscorlib]System.Int64::ToString() + IL_016b: call string [mscorlib]System.String::Concat(string, + string) + IL_0170: stloc.2 + IL_0171: br IL_03ce + + IL_0176: ldarg.1 + IL_0177: refanytype + IL_0179: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_017e: ldtoken [mscorlib]System.Int32 + IL_0183: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_0188: beq.s IL_0190 + + IL_018a: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_018f: throw + + IL_0190: ldloc.2 + IL_0191: ldarg.1 + IL_0192: refanyval [mscorlib]System.Int32 + IL_0197: call instance string [mscorlib]System.Int32::ToString() + IL_019c: call string [mscorlib]System.String::Concat(string, + string) + IL_01a1: stloc.2 + IL_01a2: br IL_03ce + + IL_01a7: ldloc.s V_7 + IL_01a9: refanyval [mscorlib]System.Boolean + IL_01ae: ldind.i1 + IL_01af: brfalse.s IL_01e2 + + IL_01b1: ldarg.1 + IL_01b2: refanytype + IL_01b4: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_01b9: ldtoken [mscorlib]System.UInt64 + IL_01be: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_01c3: beq.s IL_01cb + + IL_01c5: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_01ca: throw + + IL_01cb: ldloc.2 + IL_01cc: ldarg.1 + IL_01cd: refanyval [mscorlib]System.UInt64 + IL_01d2: call instance string [mscorlib]System.UInt64::ToString() + IL_01d7: call string [mscorlib]System.String::Concat(string, + string) + IL_01dc: stloc.2 + IL_01dd: br IL_03ce + + IL_01e2: ldarg.1 + IL_01e3: refanytype + IL_01e5: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_01ea: ldtoken [mscorlib]System.UInt32 + IL_01ef: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_01f4: beq.s IL_01fc + + IL_01f6: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_01fb: throw + + IL_01fc: ldloc.2 + IL_01fd: ldarg.1 + IL_01fe: refanyval [mscorlib]System.UInt32 + IL_0203: call instance string [mscorlib]System.UInt32::ToString() + IL_0208: call string [mscorlib]System.String::Concat(string, + string) + IL_020d: stloc.2 + IL_020e: br IL_03ce + + IL_0213: ldloc.s V_7 + IL_0215: refanyval [mscorlib]System.Boolean + IL_021a: ldind.i1 + IL_021b: brfalse.s IL_024e + + IL_021d: ldarg.1 + IL_021e: refanytype + IL_0220: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_0225: ldtoken [mscorlib]System.Double + IL_022a: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_022f: beq.s IL_0237 + + IL_0231: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_0236: throw + + IL_0237: ldloc.2 + IL_0238: ldarg.1 + IL_0239: refanyval [mscorlib]System.Double + IL_023e: call instance string [mscorlib]System.Double::ToString() + IL_0243: call string [mscorlib]System.String::Concat(string, + string) + IL_0248: stloc.2 + IL_0249: br IL_03ce + + IL_024e: ldarg.1 + IL_024f: refanytype + IL_0251: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_0256: ldtoken [mscorlib]System.Single + IL_025b: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_0260: beq.s IL_0268 + + IL_0262: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_0267: throw + + IL_0268: ldloc.2 + IL_0269: ldarg.1 + IL_026a: refanyval [mscorlib]System.Single + IL_026f: call instance string [mscorlib]System.Single::ToString() + IL_0274: call string [mscorlib]System.String::Concat(string, + string) + IL_0279: stloc.2 + IL_027a: br IL_03ce + + IL_027f: ldloc.s V_7 + IL_0281: refanyval [mscorlib]System.Boolean + IL_0286: ldind.i1 + IL_0287: brfalse.s IL_028f + + IL_0289: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_028e: throw + + IL_028f: ldarg.1 + IL_0290: refanytype + IL_0292: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_0297: ldtoken [mscorlib]System.String + IL_029c: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_02a1: beq.s IL_02a9 + + IL_02a3: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_02a8: throw + + IL_02a9: ldloc.2 + IL_02aa: ldarg.1 + IL_02ab: refanyval [mscorlib]System.String + IL_02b0: ldind.ref + IL_02b1: brtrue.s IL_02ba + + IL_02b3: ldstr "(null)" + IL_02b8: br.s IL_02c1 + + IL_02ba: ldarg.1 + IL_02bb: refanyval [mscorlib]System.String + IL_02c0: ldind.ref + IL_02c1: call string [mscorlib]System.String::Concat(string, + string) + IL_02c6: stloc.2 + IL_02c7: br IL_03ce + + IL_02cc: ldloc.s V_7 + IL_02ce: refanyval [mscorlib]System.Boolean + IL_02d3: ldind.i1 + IL_02d4: brfalse.s IL_02dc + + IL_02d6: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_02db: throw + + IL_02dc: ldarg.1 + IL_02dd: refanytype + IL_02df: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_02e4: ldtoken [mscorlib]System.DateTime + IL_02e9: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_02ee: beq.s IL_02f6 + + IL_02f0: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_02f5: throw + + IL_02f6: ldloc.2 + IL_02f7: ldarg.1 + IL_02f8: refanyval [mscorlib]System.DateTime + IL_02fd: call instance string [mscorlib]System.DateTime::ToString() + IL_0302: call string [mscorlib]System.String::Concat(string, + string) + IL_0307: stloc.2 + IL_0308: br IL_03ce + + IL_030d: ldloc.s V_7 + IL_030f: refanyval [mscorlib]System.Boolean + IL_0314: ldind.i1 + IL_0315: brfalse.s IL_031d + + IL_0317: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_031c: throw + + IL_031d: ldarg.1 + IL_031e: refanytype + IL_0320: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_0325: ldtoken [mscorlib]System.PlatformID + IL_032a: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_032f: beq.s IL_0337 + + IL_0331: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_0336: throw + + IL_0337: ldloc.2 + IL_0338: ldarg.1 + IL_0339: refanyval [mscorlib]System.PlatformID + ldobj [mscorlib]System.PlatformID + IL_033e: box [mscorlib]System.PlatformID + IL_0343: call instance string [mscorlib]System.Enum::ToString() + IL_0348: call string [mscorlib]System.String::Concat(string, + string) + IL_034d: stloc.2 + IL_034e: br.s IL_03ce + + IL_0350: ldloc.s V_7 + IL_0352: refanyval [mscorlib]System.Boolean + IL_0357: ldind.i1 + IL_0358: brfalse.s IL_0360 + + IL_035a: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_035f: throw + + IL_0360: ldarg.1 + IL_0361: refanytype + IL_0363: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_0368: ldtoken JitTest.Mood + IL_036d: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_0372: beq.s IL_037a + + IL_0374: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_0379: throw + + IL_037a: ldarg.1 + IL_037b: refanyval JitTest.Mood + IL_0380: ldind.i4 + IL_0381: stloc.s V_9 + IL_0383: ldloc.s V_9 + IL_0385: switch ( + IL_0398, + IL_03a6, + IL_03b4) + IL_0396: br.s IL_03c2 + + IL_0398: ldloc.2 + IL_0399: ldstr "good" + IL_039e: call string [mscorlib]System.String::Concat(string, + string) + IL_03a3: stloc.2 + IL_03a4: br.s IL_03ce + + IL_03a6: ldloc.2 + IL_03a7: ldstr "bad" + IL_03ac: call string [mscorlib]System.String::Concat(string, + string) + IL_03b1: stloc.2 + IL_03b2: br.s IL_03ce + + IL_03b4: ldloc.2 + IL_03b5: ldstr "worse" + IL_03ba: call string [mscorlib]System.String::Concat(string, + string) + IL_03bf: stloc.2 + IL_03c0: br.s IL_03ce + + IL_03c2: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_03c7: throw + + IL_03c8: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_03cd: throw + + IL_03ce: ldloc.s V_4 + IL_03d0: ldc.i4.1 + IL_03d1: add + IL_03d2: stloc.s V_4 + IL_03d4: ldloc.s V_4 + IL_03d6: ldloc.0 + IL_03d7: blt IL_002a + + IL_03dc: ldloc.2 + IL_03dd: ret + } // end of method TestClass::Format + + .method private hidebysig static void + Test(string format, + typedref arg, + string result) il managed + { + .maxstack 3 + .locals (string V_0, + string[] V_1) + IL_0000: ldarga.s format + IL_0002: mkrefany [mscorlib]System.String + IL_0007: ldarg.1 + IL_0008: call string JitTest.TestClass::Format(typedref, + typedref) + IL_000d: stloc.0 + IL_000e: ldloc.0 + IL_000f: ldarg.2 + IL_0010: call bool [mscorlib]System.String::Equals(string, + string) + IL_0015: brtrue.s IL_004f + + IL_0017: ldc.i4.5 + IL_0018: newarr [mscorlib]System.String + IL_001d: stloc.1 + IL_001e: ldloc.1 + IL_001f: ldc.i4.0 + IL_0020: ldstr "WRONG! expected: '" + IL_0025: stelem.ref + IL_0026: ldloc.1 + IL_0027: ldc.i4.1 + IL_0028: ldarg.2 + IL_0029: stelem.ref + IL_002a: ldloc.1 + IL_002b: ldc.i4.2 + IL_002c: ldstr "', got '" + IL_0031: stelem.ref + IL_0032: ldloc.1 + IL_0033: ldc.i4.3 + IL_0034: ldloc.0 + IL_0035: stelem.ref + IL_0036: ldloc.1 + IL_0037: ldc.i4.4 + IL_0038: ldstr "'" + IL_003d: stelem.ref + IL_003e: ldloc.1 + IL_003f: call string [mscorlib]System.String::Concat(string[]) + IL_0044: call void [System.Console]System.Console::WriteLine(string) + IL_0049: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_004e: throw + + IL_004f: ret + } // end of method TestClass::Test + + .method private hidebysig static void + TestLocals() il managed + { + .maxstack 5 + .locals (int32 V_0, + unsigned int32 V_1, + int64 V_2, + unsigned int64 V_3, + float32 V_4, + float64 V_5, + bool V_6, + value class [mscorlib]System.DateTime V_7, + value class [mscorlib]System.PlatformID V_8, + value class JitTest.Mood V_9) + IL_0000: ldc.i4.s 10 + IL_0002: stloc.0 + IL_0003: ldc.i4.s 11 + IL_0005: stloc.1 + IL_0006: ldc.i4.s 12 + IL_0008: conv.i8 + IL_0009: stloc.2 + IL_000a: ldc.i4.s 13 + IL_000c: conv.i8 + IL_000d: stloc.3 + IL_000e: ldc.r4 14. + IL_0013: stloc.s V_4 + IL_0015: ldc.r8 15. + IL_001e: stloc.s V_5 + IL_0020: ldc.i4.1 + IL_0021: stloc.s V_6 + IL_0023: ldloca.s V_7 + IL_0025: ldc.i4.s 100 + IL_0027: ldc.i4.s 10 + IL_0029: ldc.i4.1 + IL_002a: call instance void [mscorlib]System.DateTime::.ctor(int32, + int32, + int32) + IL_002f: ldc.i4.2 + IL_0030: stloc.s V_8 + IL_0032: ldc.i4.0 + IL_0033: stloc.s V_9 + IL_0035: ldstr "{%d}" + IL_003a: ldloca.s V_0 + IL_003c: mkrefany [mscorlib]System.Int32 + IL_0041: ldstr "{10}" + IL_0046: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_004b: ldstr "{%u}" + IL_0050: ldloca.s V_1 + IL_0052: mkrefany [mscorlib]System.UInt32 + IL_0057: ldstr "{11}" + IL_005c: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_0061: ldstr "{%ld}" + IL_0066: ldloca.s V_2 + IL_0068: mkrefany [mscorlib]System.Int64 + IL_006d: ldstr "{12}" + IL_0072: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_0077: ldstr "{%lu}" + IL_007c: ldloca.s V_3 + IL_007e: mkrefany [mscorlib]System.UInt64 + IL_0083: ldstr "{13}" + IL_0088: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_008d: ldstr "{%f}" + IL_0092: ldloca.s V_4 + IL_0094: mkrefany [mscorlib]System.Single + IL_0099: ldstr "{14}" + IL_009e: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_00a3: ldstr "{%lf}" + IL_00a8: ldloca.s V_5 + IL_00aa: mkrefany [mscorlib]System.Double + IL_00af: ldstr "{15}" + IL_00b4: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_00b9: ldstr "{%b}" + IL_00be: ldloca.s V_6 + IL_00c0: mkrefany [mscorlib]System.Boolean + IL_00c5: ldstr "{true}" + IL_00ca: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_00cf: ldstr "{%t}" + IL_00d4: ldloca.s V_7 + IL_00d6: mkrefany [mscorlib]System.DateTime + IL_00db: ldstr "{" + IL_00e0: ldloca.s V_7 + IL_00e2: call instance string [mscorlib]System.DateTime::ToString() + IL_00e7: ldstr "}" + IL_00ec: call string [mscorlib]System.String::Concat(string, + string, + string) + IL_00f1: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_00f6: ldstr "{%p}" + IL_00fb: ldloca.s V_8 + IL_00fd: mkrefany [mscorlib]System.PlatformID + IL_0102: ldstr "{Win32NT}" + IL_0107: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_010c: ldstr "{%e}" + IL_0111: ldloca.s V_9 + IL_0113: mkrefany JitTest.Mood + IL_0118: ldstr "{good}" + IL_011d: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_0122: ret + } // end of method TestClass::TestLocals + + .method private hidebysig instance void + TestFields() il managed + { + .maxstack 5 + IL_0000: ldstr "{%d}" + IL_0005: ldarg.0 + IL_0006: ldflda int32 JitTest.TestClass::m_d + IL_000b: mkrefany [mscorlib]System.Int32 + IL_0010: ldstr "{20}" + IL_0015: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_001a: ldstr "{%u}" + IL_001f: ldsflda unsigned int32 JitTest.TestClass::m_u + IL_0024: mkrefany [mscorlib]System.UInt32 + IL_0029: ldstr "{21}" + IL_002e: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_0033: ldstr "{%ld}" + IL_0038: ldarg.0 + IL_0039: ldflda int64 JitTest.TestClass::m_l + IL_003e: mkrefany [mscorlib]System.Int64 + IL_0043: ldstr "{22}" + IL_0048: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_004d: ldstr "{%lu}" + IL_0052: ldsflda unsigned int64 JitTest.TestClass::m_ul + IL_0057: mkrefany [mscorlib]System.UInt64 + IL_005c: ldstr "{23}" + IL_0061: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_0066: ldstr "{%f}" + IL_006b: ldarg.0 + IL_006c: ldflda float32 JitTest.TestClass::m_f + IL_0071: mkrefany [mscorlib]System.Single + IL_0076: ldstr "{24}" + IL_007b: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_0080: ldstr "{%lf}" + IL_0085: ldarg.0 + IL_0086: ldflda float64 JitTest.TestClass::m_dbl + IL_008b: mkrefany [mscorlib]System.Double + IL_0090: ldstr "{25}" + IL_0095: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_009a: ldstr "{%b}" + IL_009f: ldarg.0 + IL_00a0: ldflda bool JitTest.TestClass::m_b + IL_00a5: mkrefany [mscorlib]System.Boolean + IL_00aa: ldstr "{false}" + IL_00af: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_00b4: ldstr "{%t}" + IL_00b9: ldsflda value class [mscorlib]System.DateTime JitTest.TestClass::m_t + IL_00be: mkrefany [mscorlib]System.DateTime + IL_00c3: ldstr "{" + IL_00c8: ldsflda value class [mscorlib]System.DateTime JitTest.TestClass::m_t + IL_00cd: call instance string [mscorlib]System.DateTime::ToString() + IL_00d2: ldstr "}" + IL_00d7: call string [mscorlib]System.String::Concat(string, + string, + string) + IL_00dc: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_00e1: ldstr "{%p}" + IL_00e6: ldarg.0 + IL_00e7: ldflda value class [mscorlib]System.PlatformID JitTest.TestClass::m_pid + IL_00ec: mkrefany [mscorlib]System.PlatformID + IL_00f1: ldstr "{Win32NT}" + IL_00f6: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_00fb: ldstr "{%e}" + IL_0100: ldarg.0 + IL_0101: ldflda value class JitTest.Mood JitTest.TestClass::m_mood + IL_0106: mkrefany JitTest.Mood + IL_010b: ldstr "{good}" + IL_0110: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_0115: ret + } // end of method TestClass::TestFields + + .method private hidebysig static void + DoTestArgSlots(int32& d, + unsigned int32& u, + int64& l, + unsigned int64& ul, + float32& f, + float64& dbl, + bool& b, + value class [mscorlib]System.DateTime& t, + value class [mscorlib]System.PlatformID& pid) il managed + { + .maxstack 5 + IL_0000: ldstr "{%d}" + IL_0005: ldarg.0 + IL_0006: mkrefany [mscorlib]System.Int32 + IL_000b: ldstr "{20}" + IL_0010: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_0015: ldstr "{%u}" + IL_001a: ldarg.1 + IL_001b: mkrefany [mscorlib]System.UInt32 + IL_0020: ldstr "{21}" + IL_0025: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_002a: ldstr "{%ld}" + IL_002f: ldarg.2 + IL_0030: mkrefany [mscorlib]System.Int64 + IL_0035: ldstr "{22}" + IL_003a: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_003f: ldstr "{%lu}" + IL_0044: ldarg.3 + IL_0045: mkrefany [mscorlib]System.UInt64 + IL_004a: ldstr "{23}" + IL_004f: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_0054: ldstr "{%f}" + IL_0059: ldarg.s f + IL_005b: mkrefany [mscorlib]System.Single + IL_0060: ldstr "{24}" + IL_0065: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_006a: ldstr "{%lf}" + IL_006f: ldarg.s dbl + IL_0071: mkrefany [mscorlib]System.Double + IL_0076: ldstr "{25}" + IL_007b: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_0080: ldstr "{%b}" + IL_0085: ldarg.s b + IL_0087: mkrefany [mscorlib]System.Boolean + IL_008c: ldstr "{false}" + IL_0091: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_0096: ldstr "{%t}" + IL_009b: ldarg.s t + IL_009d: mkrefany [mscorlib]System.DateTime + IL_00a2: ldstr "{" + IL_00a7: ldarg.s t + IL_00a9: call instance string [mscorlib]System.DateTime::ToString() + IL_00ae: ldstr "}" + IL_00b3: call string [mscorlib]System.String::Concat(string, + string, + string) + IL_00b8: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_00bd: ldstr "{%p}" + IL_00c2: ldarg.s pid + IL_00c4: mkrefany [mscorlib]System.PlatformID + IL_00c9: ldstr "{Win32NT}" + IL_00ce: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_00d3: ret + } // end of method TestClass::DoTestArgSlots + + .method private hidebysig static void + TestArgSlots() il managed + { + .maxstack 9 + .locals (int32 V_0, + unsigned int32 V_1, + int64 V_2, + unsigned int64 V_3, + float32 V_4, + float64 V_5, + bool V_6, + value class [mscorlib]System.DateTime V_7, + value class [mscorlib]System.PlatformID V_8) + IL_0000: ldc.i4.s 20 + IL_0002: stloc.0 + IL_0003: ldc.i4.s 21 + IL_0005: stloc.1 + IL_0006: ldc.i4.s 22 + IL_0008: conv.i8 + IL_0009: stloc.2 + IL_000a: ldc.i4.s 23 + IL_000c: conv.i8 + IL_000d: stloc.3 + IL_000e: ldc.r4 24. + IL_0013: stloc.s V_4 + IL_0015: ldc.r8 25. + IL_001e: stloc.s V_5 + IL_0020: ldc.i4.0 + IL_0021: stloc.s V_6 + IL_0023: ldloca.s V_7 + IL_0025: ldc.i4.s 100 + IL_0027: ldc.i4.s 10 + IL_0029: ldc.i4.1 + IL_002a: call instance void [mscorlib]System.DateTime::.ctor(int32, + int32, + int32) + IL_002f: ldc.i4.2 + IL_0030: stloc.s V_8 + IL_0032: ldloca.s V_0 + IL_0034: ldloca.s V_1 + IL_0036: ldloca.s V_2 + IL_0038: ldloca.s V_3 + IL_003a: ldloca.s V_4 + IL_003c: ldloca.s V_5 + IL_003e: ldloca.s V_6 + IL_0040: ldloca.s V_7 + IL_0042: ldloca.s V_8 + IL_0044: call void JitTest.TestClass::DoTestArgSlots(int32&, + unsigned int32&, + int64&, + unsigned int64&, + float32&, + float64&, + bool&, + value class [mscorlib]System.DateTime&, + value class [mscorlib]System.PlatformID&) + IL_0049: ret + } // end of method TestClass::TestArgSlots + + .method private hidebysig static void + TestArrayElem() il managed + { + .maxstack 5 + .locals (int32[] V_0, + unsigned int32[] V_1, + int64[] V_2, + unsigned int64[] V_3, + float32[] V_4, + float64[] V_5, + bool[] V_6, + value class [mscorlib]System.DateTime[] V_7, + value class [mscorlib]System.PlatformID[] V_8, + value class JitTest.Mood[] V_9, + int32[] V_10, + unsigned int32[] V_11, + int64[] V_12, + unsigned int64[] V_13, + float32[] V_14, + float64[] V_15, + bool[] V_16, + value class [mscorlib]System.PlatformID[] V_17, + value class JitTest.Mood[] V_18) + IL_0000: ldc.i4.1 + IL_0001: newarr [mscorlib]System.Int32 + IL_0006: stloc.s V_10 + IL_0008: ldloc.s V_10 + IL_000a: ldc.i4.0 + IL_000b: ldc.i4.s 10 + IL_000d: stelem.i4 + IL_000e: ldloc.s V_10 + IL_0010: stloc.0 + IL_0011: ldc.i4.1 + IL_0012: newarr [mscorlib]System.UInt32 + IL_0017: stloc.s V_11 + IL_0019: ldloc.s V_11 + IL_001b: ldc.i4.0 + IL_001c: ldc.i4.s 11 + IL_001e: stelem.i4 + IL_001f: ldloc.s V_11 + IL_0021: stloc.1 + IL_0022: ldc.i4.1 + IL_0023: newarr [mscorlib]System.Int64 + IL_0028: stloc.s V_12 + IL_002a: ldloc.s V_12 + IL_002c: ldc.i4.0 + IL_002d: ldc.i4.s 12 + IL_002f: conv.i8 + IL_0030: stelem.i8 + IL_0031: ldloc.s V_12 + IL_0033: stloc.2 + IL_0034: ldc.i4.1 + IL_0035: newarr [mscorlib]System.UInt64 + IL_003a: stloc.s V_13 + IL_003c: ldloc.s V_13 + IL_003e: ldc.i4.0 + IL_003f: ldc.i4.s 13 + IL_0041: conv.i8 + IL_0042: stelem.i8 + IL_0043: ldloc.s V_13 + IL_0045: stloc.3 + IL_0046: ldc.i4.1 + IL_0047: newarr [mscorlib]System.Single + IL_004c: stloc.s V_14 + IL_004e: ldloc.s V_14 + IL_0050: ldc.i4.0 + IL_0051: ldc.r4 14. + IL_0056: stelem.r4 + IL_0057: ldloc.s V_14 + IL_0059: stloc.s V_4 + IL_005b: ldc.i4.1 + IL_005c: newarr [mscorlib]System.Double + IL_0061: stloc.s V_15 + IL_0063: ldloc.s V_15 + IL_0065: ldc.i4.0 + IL_0066: ldc.r8 15. + IL_006f: stelem.r8 + IL_0070: ldloc.s V_15 + IL_0072: stloc.s V_5 + IL_0074: ldc.i4.1 + IL_0075: newarr [mscorlib]System.Boolean + IL_007a: stloc.s V_16 + IL_007c: ldloc.s V_16 + IL_007e: ldc.i4.0 + IL_007f: ldc.i4.1 + IL_0080: stelem.i1 + IL_0081: ldloc.s V_16 + IL_0083: stloc.s V_6 + IL_0085: ldc.i4 0xc8 + IL_008a: newarr [mscorlib]System.DateTime + IL_008f: stloc.s V_7 + IL_0091: ldloc.s V_7 + IL_0093: ldc.i4.1 + IL_0094: ldelema [mscorlib]System.DateTime + IL_0099: ldc.i4.s 100 + IL_009b: ldc.i4.s 10 + IL_009d: ldc.i4.1 + IL_009e: call instance void [mscorlib]System.DateTime::.ctor(int32, + int32, + int32) + IL_00a3: ldc.i4.1 + IL_00a4: newarr [mscorlib]System.PlatformID + IL_00a9: stloc.s V_17 + IL_00ab: ldloc.s V_17 + IL_00ad: ldc.i4.0 + IL_00ae: ldc.i4.2 + IL_00af: stelem.i4 + IL_00b0: ldloc.s V_17 + IL_00b2: stloc.s V_8 + IL_00b4: ldc.i4.1 + IL_00b5: newarr JitTest.Mood + IL_00ba: stloc.s V_18 + IL_00bc: ldloc.s V_18 + IL_00be: stloc.s V_9 + IL_00c0: ldstr "{%d}" + IL_00c5: ldloc.0 + IL_00c6: ldc.i4.0 + IL_00c7: ldelema [mscorlib]System.Int32 + IL_00cc: mkrefany [mscorlib]System.Int32 + IL_00d1: ldstr "{10}" + IL_00d6: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_00db: ldstr "{%u}" + IL_00e0: ldloc.1 + IL_00e1: ldc.i4.0 + IL_00e2: ldelema [mscorlib]System.UInt32 + IL_00e7: mkrefany [mscorlib]System.UInt32 + IL_00ec: ldstr "{11}" + IL_00f1: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_00f6: ldstr "{%ld}" + IL_00fb: ldloc.2 + IL_00fc: ldc.i4.0 + IL_00fd: ldelema [mscorlib]System.Int64 + IL_0102: mkrefany [mscorlib]System.Int64 + IL_0107: ldstr "{12}" + IL_010c: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_0111: ldstr "{%lu}" + IL_0116: ldloc.3 + IL_0117: ldc.i4.0 + IL_0118: ldelema [mscorlib]System.UInt64 + IL_011d: mkrefany [mscorlib]System.UInt64 + IL_0122: ldstr "{13}" + IL_0127: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_012c: ldstr "{%f}" + IL_0131: ldloc.s V_4 + IL_0133: ldc.i4.0 + IL_0134: ldelema [mscorlib]System.Single + IL_0139: mkrefany [mscorlib]System.Single + IL_013e: ldstr "{14}" + IL_0143: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_0148: ldstr "{%lf}" + IL_014d: ldloc.s V_5 + IL_014f: ldc.i4.0 + IL_0150: ldelema [mscorlib]System.Double + IL_0155: mkrefany [mscorlib]System.Double + IL_015a: ldstr "{15}" + IL_015f: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_0164: ldstr "{%b}" + IL_0169: ldloc.s V_6 + IL_016b: ldc.i4.0 + IL_016c: ldelema [mscorlib]System.Boolean + IL_0171: mkrefany [mscorlib]System.Boolean + IL_0176: ldstr "{true}" + IL_017b: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_0180: ldstr "{%t}" + IL_0185: ldloc.s V_7 + IL_0187: ldc.i4.1 + IL_0188: ldelema [mscorlib]System.DateTime + IL_018d: mkrefany [mscorlib]System.DateTime + IL_0192: ldstr "{" + IL_0197: ldloc.s V_7 + IL_0199: ldc.i4.1 + IL_019a: ldelema [mscorlib]System.DateTime + IL_019f: call instance string [mscorlib]System.DateTime::ToString() + IL_01a4: ldstr "}" + IL_01a9: call string [mscorlib]System.String::Concat(string, + string, + string) + IL_01ae: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_01b3: ldstr "{%p}" + IL_01b8: ldloc.s V_8 + IL_01ba: ldc.i4.0 + IL_01bb: ldelema [mscorlib]System.PlatformID + IL_01c0: mkrefany [mscorlib]System.PlatformID + IL_01c5: ldstr "{Win32NT}" + IL_01ca: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_01cf: ldstr "{%e}" + IL_01d4: ldloc.s V_9 + IL_01d6: ldc.i4.0 + IL_01d7: ldelema JitTest.Mood + IL_01dc: mkrefany JitTest.Mood + IL_01e1: ldstr "{good}" + IL_01e6: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_01eb: ret + } // end of method TestClass::TestArrayElem + + .method private hidebysig static int32 + Main() il managed + { + .entrypoint + .maxstack 8 + IL_0000: call void JitTest.TestClass::TestLocals() + IL_0005: newobj instance void JitTest.TestClass::.ctor() + IL_000a: call instance void JitTest.TestClass::TestFields() + IL_000f: call void JitTest.TestClass::TestArrayElem() + IL_0014: ldstr "*** passed ***" + IL_0019: call void [System.Console]System.Console::WriteLine(string) + IL_001e: ldc.i4 100 + IL_001f: ret + } // end of method TestClass::Main + + .method public hidebysig specialname rtspecialname static + void .cctor() il managed + { + .maxstack 8 + IL_0000: ldc.i4.s 21 + IL_0002: stsfld unsigned int32 JitTest.TestClass::m_u + IL_0007: ldc.i4.s 23 + IL_0009: conv.i8 + IL_000a: stsfld unsigned int64 JitTest.TestClass::m_ul + IL_000f: ldsflda value class [mscorlib]System.DateTime JitTest.TestClass::m_t + IL_0014: ldc.i4.s 100 + IL_0016: ldc.i4.s 10 + IL_0018: ldc.i4.1 + IL_0019: call instance void [mscorlib]System.DateTime::.ctor(int32, + int32, + int32) + IL_001e: ret + } // end of method TestClass::.cctor + + .method public hidebysig specialname rtspecialname + instance void .ctor() il managed + { + .maxstack 2 + IL_0000: ldarg.0 + IL_0001: ldc.i4.s 20 + IL_0003: stfld int32 JitTest.TestClass::m_d + IL_0008: ldarg.0 + IL_0009: ldc.i4.s 22 + IL_000b: conv.i8 + IL_000c: stfld int64 JitTest.TestClass::m_l + IL_0011: ldarg.0 + IL_0012: ldc.r4 24. + IL_0017: stfld float32 JitTest.TestClass::m_f + IL_001c: ldarg.0 + IL_001d: ldc.r8 25. + IL_0026: stfld float64 JitTest.TestClass::m_dbl + IL_002b: ldarg.0 + IL_002c: ldc.i4.0 + IL_002d: stfld bool JitTest.TestClass::m_b + IL_0032: ldarg.0 + IL_0033: ldc.i4.2 + IL_0034: stfld value class [mscorlib]System.PlatformID JitTest.TestClass::m_pid + IL_0039: ldarg.0 + IL_003a: ldc.i4.0 + IL_003b: stfld value class JitTest.Mood JitTest.TestClass::m_mood + IL_0040: ldarg.0 + IL_0041: call instance void [mscorlib]System.Object::.ctor() + IL_0046: ret + } // end of method TestClass::.ctor + + } // end of class TestClass + +} // end of namespace JitTest + diff --git a/tests/src/JIT/Methodical/refany/indcall.il b/tests/src/JIT/Methodical/refany/indcall.il new file mode 100644 index 0000000000..03a4c9bc07 --- /dev/null +++ b/tests/src/JIT/Methodical/refany/indcall.il @@ -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. + + + + + +.assembly extern mscorlib +{ +} +.assembly 'bug' +{ + + + .permission reqmin ['mscorlib']System.Security.Permissions.SecurityPermissionAttribute ( "SkipVerification" = true ) +} +.module 'bug.exe' +.namespace JitTest +{ + .class private auto ansi Test extends ['mscorlib']System.Object + { + .method private hidebysig instance int32 DoStuff(method instance int32 *(refany)) il managed + { + .locals (int32 N) + .maxstack 8 + ldarg.0 + ldc.i4.7 + stloc N + ldloca N + mkrefany [mscorlib]System.Int32 + ldarg.1 + calli instance int32(refany) + ret + } // end of method 'Test::DoStuff' + .method private hidebysig instance int32 DummyMethod(refany) il managed + { + .maxstack 8 + ldarg.1 + refanytype + call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle ) + ldtoken [mscorlib]System.Int32 + call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle ) + ceq + brtrue OK + newobj instance void [mscorlib]System.ApplicationException::.ctor() + throw + OK: + ldarg.1 + refanyval [mscorlib]System.Int32 + ldind.i4 + ldc.i4.7 + xor + ldc.i4 100 + add + ret + } // end of method 'Test::DoStuff' + + .method private hidebysig static int32 Main() il managed + { + .entrypoint + .maxstack 6 + .locals (int32 V_0, int32) + newobj instance void JitTest.Test::.ctor() + ldftn instance int32 JitTest.Test::DummyMethod(refany) + ldftn instance int32 JitTest.Test::DoStuff(method instance int32 *(refany)) + tail. calli instance int32 (method instance int32 *(refany)) + ret + } // end of method 'Test::Main' + + .method public hidebysig specialname rtspecialname instance void .ctor() il managed + { + .maxstack 8 + IL_0000: ldarg.0 + IL_0001: call instance void ['mscorlib']System.Object::.ctor() + IL_0006: ret + } // end of method 'Test::.ctor' + + } // end of class 'Test' + +} // end of namespace 'JitTest' diff --git a/tests/src/JIT/Methodical/refany/lcs.il b/tests/src/JIT/Methodical/refany/lcs.il new file mode 100644 index 0000000000..ca3fdb8b43 --- /dev/null +++ b/tests/src/JIT/Methodical/refany/lcs.il @@ -0,0 +1,770 @@ +// Copyright (c) Microsoft. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + + + + + +.assembly extern System.Console +{ + .publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) + .ver 4:0:0:0 +} + +.assembly extern mscorlib +{ +} +.assembly lcs// as "lcs" +{ +} +.module lcs.exe +.namespace JitTest +{ + .class private auto ansi LCS + extends [mscorlib]System.Object + { + .field private static literal int32 RANK = int32(0x00000004) + .method private hidebysig static string + buildLCS(typedref _b, + typedref _X, + typedref _ind) il managed + { + .maxstack 6 + .locals (int32 V_0, + typedref V_1, + int32 V_2, + typedref V_3, + int32 V_4, + int32[] V_5, + int32 V_6) + IL_0000: ldc.i4.0 + IL_0001: stloc.0 + IL_0002: ldloca.s V_0 + IL_0004: mkrefany [mscorlib]System.Int32 + IL_0009: stloc.1 + IL_000a: br.s IL_0027 + + IL_000c: ldarg.2 + IL_000d: refanyval int32[] + IL_0012: ldind.ref + IL_0013: ldloc.1 + IL_0014: refanyval [mscorlib]System.Int32 + IL_0019: ldind.i4 + IL_001a: ldelem.i4 + IL_001b: brtrue.s IL_0023 + + IL_001d: ldstr "" + IL_0022: ret + + IL_0023: ldloc.0 + IL_0024: ldc.i4.1 + IL_0025: add + IL_0026: stloc.0 + IL_0027: ldloc.1 + IL_0028: refanyval [mscorlib]System.Int32 + IL_002d: ldind.i4 + IL_002e: ldc.i4.4 + IL_002f: blt.s IL_000c + + IL_0031: ldarg.0 + IL_0032: refanyval int32[0...,0...,0...,0...] + IL_0037: ldind.ref + IL_0038: ldarg.2 + IL_0039: refanyval int32[] + IL_003e: ldind.ref + IL_003f: ldc.i4.0 + IL_0040: ldelem.i4 + IL_0041: ldarg.2 + IL_0042: refanyval int32[] + IL_0047: ldind.ref + IL_0048: ldc.i4.1 + IL_0049: ldelem.i4 + IL_004a: ldarg.2 + IL_004b: refanyval int32[] + IL_0050: ldind.ref + IL_0051: ldc.i4.2 + IL_0052: ldelem.i4 + IL_0053: ldarg.2 + IL_0054: refanyval int32[] + IL_0059: ldind.ref + IL_005a: ldc.i4.3 + IL_005b: ldelem.i4 + IL_005c: call instance int32 int32[0...,0...,0...,0...]::Get(int32, + int32, + int32, + int32) + IL_0061: stloc.2 + IL_0062: ldloc.2 + IL_0063: ldc.i4.4 + IL_0064: bne.un.s IL_00c8 + + IL_0066: ldc.i4.0 + IL_0067: stloc.0 + IL_0068: ldloca.s V_0 + IL_006a: mkrefany [mscorlib]System.Int32 + IL_006f: stloc.3 + IL_0070: br.s IL_0092 + + IL_0072: ldarg.2 + IL_0073: refanyval int32[] + IL_0078: ldind.ref + IL_0079: dup + IL_007a: stloc.s V_5 + IL_007c: ldloc.3 + IL_007d: refanyval [mscorlib]System.Int32 + IL_0082: ldind.i4 + IL_0083: dup + IL_0084: stloc.s V_6 + IL_0086: ldloc.s V_5 + IL_0088: ldloc.s V_6 + IL_008a: ldelem.i4 + IL_008b: ldc.i4.1 + IL_008c: sub + IL_008d: stelem.i4 + IL_008e: ldloc.0 + IL_008f: ldc.i4.1 + IL_0090: add + IL_0091: stloc.0 + IL_0092: ldloc.3 + IL_0093: refanyval [mscorlib]System.Int32 + IL_0098: ldind.i4 + IL_0099: ldc.i4.4 + IL_009a: blt.s IL_0072 + + IL_009c: ldarg.2 + IL_009d: refanyval int32[] + IL_00a2: ldind.ref + IL_00a3: ldc.i4.0 + IL_00a4: ldelem.i4 + IL_00a5: stloc.s V_4 + IL_00a7: ldarg.0 + IL_00a8: ldarg.1 + IL_00a9: ldarg.2 + IL_00aa: call string JitTest.LCS::buildLCS(typedref, + typedref, + typedref) + IL_00af: ldarg.1 + IL_00b0: refanyval wchar[] + IL_00b5: ldind.ref + IL_00b6: ldloc.s V_4 + IL_00b8: ldelem.u2 + IL_00bd: box [mscorlib]System.Char + IL_00c2: call string [mscorlib]System.String::Concat(class [mscorlib]System.Object, + class [mscorlib]System.Object) + IL_00c7: ret + + IL_00c8: ldloc.2 + IL_00c9: ldc.i4.0 + IL_00ca: blt.s IL_00ef + + IL_00cc: ldloc.2 + IL_00cd: ldc.i4.4 + IL_00ce: bge.s IL_00ef + + IL_00d0: ldarg.2 + IL_00d1: refanyval int32[] + IL_00d6: ldind.ref + IL_00d7: dup + IL_00d8: stloc.s V_5 + IL_00da: ldloc.2 + IL_00db: dup + IL_00dc: stloc.s V_6 + IL_00de: ldloc.s V_5 + IL_00e0: ldloc.s V_6 + IL_00e2: ldelem.i4 + IL_00e3: ldc.i4.1 + IL_00e4: sub + IL_00e5: stelem.i4 + IL_00e6: ldarg.0 + IL_00e7: ldarg.1 + IL_00e8: ldarg.2 + IL_00e9: call string JitTest.LCS::buildLCS(typedref, + typedref, + typedref) + IL_00ee: ret + + IL_00ef: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_00f4: throw + } // end of method LCS::buildLCS + + .method private hidebysig static void + findLCS(typedref _c, + typedref _b, + typedref _seq, + typedref _len) il managed + { + .maxstack 11 + .locals (int32[] V_0, + bool V_1, + int32 V_2, + int32 V_3, + int32 V_4, + int32 V_5, + int32[] V_6, + int32 V_7) + + ldarg.0 refanytype + call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle ) + ldarg.1 refanytype + call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle ) + ldarg.2 refanytype + call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle ) + ldarg.3 refanytype + call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle ) + ceq + ceq + ceq + pop + + + IL_0000: ldc.i4.4 + IL_0001: newarr [mscorlib]System.Int32 + IL_0006: stloc.0 + IL_0007: ldloc.0 + IL_0008: ldc.i4.0 + IL_0009: ldc.i4.1 + IL_000a: stelem.i4 + IL_000b: br IL_01d1 + + IL_0010: ldloc.0 + IL_0011: ldc.i4.1 + IL_0012: ldc.i4.1 + IL_0013: stelem.i4 + IL_0014: br IL_01b4 + + IL_0019: ldloc.0 + IL_001a: ldc.i4.2 + IL_001b: ldc.i4.1 + IL_001c: stelem.i4 + IL_001d: br IL_0197 + + IL_0022: ldloc.0 + IL_0023: ldc.i4.3 + IL_0024: ldc.i4.1 + IL_0025: stelem.i4 + IL_0026: br IL_017a + + IL_002b: ldc.i4.1 + IL_002c: stloc.1 + IL_002d: ldc.i4.1 + IL_002e: stloc.2 + IL_002f: br.s IL_005d + + IL_0031: ldarg.2 + IL_0032: refanyval wchar[][] + IL_0037: ldind.ref + IL_0038: ldloc.2 + IL_0039: ldelem.ref + IL_003a: ldloc.0 + IL_003b: ldloc.2 + IL_003c: ldelem.i4 + IL_003d: ldc.i4.1 + IL_003e: sub + IL_003f: ldelem.u2 + IL_0040: ldarg.2 + IL_0041: refanyval wchar[][] + IL_0046: ldind.ref + IL_0047: ldloc.2 + IL_0048: ldc.i4.1 + IL_0049: sub + IL_004a: ldelem.ref + IL_004b: ldloc.0 + IL_004c: ldloc.2 + IL_004d: ldc.i4.1 + IL_004e: sub + IL_004f: ldelem.i4 + IL_0050: ldc.i4.1 + IL_0051: sub + IL_0052: ldelem.u2 + IL_0053: beq.s IL_0059 + + IL_0055: ldc.i4.0 + IL_0056: stloc.1 + IL_0057: br.s IL_0061 + + IL_0059: ldloc.2 + IL_005a: ldc.i4.1 + IL_005b: add + IL_005c: stloc.2 + IL_005d: ldloc.2 + IL_005e: ldc.i4.4 + IL_005f: blt.s IL_0031 + + IL_0061: ldloc.1 + IL_0062: brfalse.s IL_00bc + + IL_0064: ldarg.0 + IL_0065: refanyval int32[0...,0...,0...,0...] + IL_006a: ldind.ref + IL_006b: ldloc.0 + IL_006c: ldc.i4.0 + IL_006d: ldelem.i4 + IL_006e: ldloc.0 + IL_006f: ldc.i4.1 + IL_0070: ldelem.i4 + IL_0071: ldloc.0 + IL_0072: ldc.i4.2 + IL_0073: ldelem.i4 + IL_0074: ldloc.0 + IL_0075: ldc.i4.3 + IL_0076: ldelem.i4 + IL_0077: ldarg.0 + IL_0078: refanyval int32[0...,0...,0...,0...] + IL_007d: ldind.ref + IL_007e: ldloc.0 + IL_007f: ldc.i4.0 + IL_0080: ldelem.i4 + IL_0081: ldc.i4.1 + IL_0082: sub + IL_0083: ldloc.0 + IL_0084: ldc.i4.1 + IL_0085: ldelem.i4 + IL_0086: ldc.i4.1 + IL_0087: sub + IL_0088: ldloc.0 + IL_0089: ldc.i4.2 + IL_008a: ldelem.i4 + IL_008b: ldc.i4.1 + IL_008c: sub + IL_008d: ldloc.0 + IL_008e: ldc.i4.3 + IL_008f: ldelem.i4 + IL_0090: ldc.i4.1 + IL_0091: sub + IL_0092: call instance int32 int32[0...,0...,0...,0...]::Get(int32, + int32, + int32, + int32) + IL_0097: ldc.i4.1 + IL_0098: add + IL_0099: call instance void int32[0...,0...,0...,0...]::Set(int32, + int32, + int32, + int32, + int32) + IL_009e: ldarg.1 + IL_009f: refanyval int32[0...,0...,0...,0...] + IL_00a4: ldind.ref + IL_00a5: ldloc.0 + IL_00a6: ldc.i4.0 + IL_00a7: ldelem.i4 + IL_00a8: ldloc.0 + IL_00a9: ldc.i4.1 + IL_00aa: ldelem.i4 + IL_00ab: ldloc.0 + IL_00ac: ldc.i4.2 + IL_00ad: ldelem.i4 + IL_00ae: ldloc.0 + IL_00af: ldc.i4.3 + IL_00b0: ldelem.i4 + IL_00b1: ldc.i4.4 + IL_00b2: call instance void int32[0...,0...,0...,0...]::Set(int32, + int32, + int32, + int32, + int32) + IL_00b7: br IL_016e + + IL_00bc: ldc.i4.m1 + IL_00bd: stloc.3 + IL_00be: ldc.i4.m1 + IL_00bf: stloc.s V_4 + IL_00c1: ldc.i4.0 + IL_00c2: stloc.s V_5 + IL_00c4: br.s IL_0127 + + IL_00c6: ldloc.0 + IL_00c7: dup + IL_00c8: stloc.s V_6 + IL_00ca: ldloc.s V_5 + IL_00cc: dup + IL_00cd: stloc.s V_7 + IL_00cf: ldloc.s V_6 + IL_00d1: ldloc.s V_7 + IL_00d3: ldelem.i4 + IL_00d4: ldc.i4.1 + IL_00d5: sub + IL_00d6: stelem.i4 + IL_00d7: ldarg.0 + IL_00d8: refanyval int32[0...,0...,0...,0...] + IL_00dd: ldind.ref + IL_00de: ldloc.0 + IL_00df: ldc.i4.0 + IL_00e0: ldelem.i4 + IL_00e1: ldloc.0 + IL_00e2: ldc.i4.1 + IL_00e3: ldelem.i4 + IL_00e4: ldloc.0 + IL_00e5: ldc.i4.2 + IL_00e6: ldelem.i4 + IL_00e7: ldloc.0 + IL_00e8: ldc.i4.3 + IL_00e9: ldelem.i4 + IL_00ea: call instance int32 int32[0...,0...,0...,0...]::Get(int32, + int32, + int32, + int32) + IL_00ef: ldloc.s V_4 + IL_00f1: ble.s IL_0110 + + IL_00f3: ldloc.s V_5 + IL_00f5: stloc.3 + IL_00f6: ldarg.0 + IL_00f7: refanyval int32[0...,0...,0...,0...] + IL_00fc: ldind.ref + IL_00fd: ldloc.0 + IL_00fe: ldc.i4.0 + IL_00ff: ldelem.i4 + IL_0100: ldloc.0 + IL_0101: ldc.i4.1 + IL_0102: ldelem.i4 + IL_0103: ldloc.0 + IL_0104: ldc.i4.2 + IL_0105: ldelem.i4 + IL_0106: ldloc.0 + IL_0107: ldc.i4.3 + IL_0108: ldelem.i4 + IL_0109: call instance int32 int32[0...,0...,0...,0...]::Get(int32, + int32, + int32, + int32) + IL_010e: stloc.s V_4 + IL_0110: ldloc.0 + IL_0111: dup + IL_0112: stloc.s V_6 + IL_0114: ldloc.s V_5 + IL_0116: dup + IL_0117: stloc.s V_7 + IL_0119: ldloc.s V_6 + IL_011b: ldloc.s V_7 + IL_011d: ldelem.i4 + IL_011e: ldc.i4.1 + IL_011f: add + IL_0120: stelem.i4 + IL_0121: ldloc.s V_5 + IL_0123: ldc.i4.1 + IL_0124: add + IL_0125: stloc.s V_5 + IL_0127: ldloc.s V_5 + IL_0129: ldc.i4.4 + IL_012a: blt.s IL_00c6 + + IL_012c: ldloc.3 + IL_012d: ldc.i4.0 + IL_012e: blt.s IL_0135 + + IL_0130: ldloc.s V_4 + IL_0132: ldc.i4.0 + IL_0133: bge.s IL_013b + + IL_0135: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_013a: throw + + IL_013b: ldarg.0 + IL_013c: refanyval int32[0...,0...,0...,0...] + IL_0141: ldind.ref + IL_0142: ldloc.0 + IL_0143: ldc.i4.0 + IL_0144: ldelem.i4 + IL_0145: ldloc.0 + IL_0146: ldc.i4.1 + IL_0147: ldelem.i4 + IL_0148: ldloc.0 + IL_0149: ldc.i4.2 + IL_014a: ldelem.i4 + IL_014b: ldloc.0 + IL_014c: ldc.i4.3 + IL_014d: ldelem.i4 + IL_014e: ldloc.s V_4 + IL_0150: call instance void int32[0...,0...,0...,0...]::Set(int32, + int32, + int32, + int32, + int32) + IL_0155: ldarg.1 + IL_0156: refanyval int32[0...,0...,0...,0...] + IL_015b: ldind.ref + IL_015c: ldloc.0 + IL_015d: ldc.i4.0 + IL_015e: ldelem.i4 + IL_015f: ldloc.0 + IL_0160: ldc.i4.1 + IL_0161: ldelem.i4 + IL_0162: ldloc.0 + IL_0163: ldc.i4.2 + IL_0164: ldelem.i4 + IL_0165: ldloc.0 + IL_0166: ldc.i4.3 + IL_0167: ldelem.i4 + IL_0168: ldloc.3 + IL_0169: call instance void int32[0...,0...,0...,0...]::Set(int32, + int32, + int32, + int32, + int32) + IL_016e: ldloc.0 + IL_016f: dup + IL_0170: stloc.s V_6 + IL_0172: ldc.i4.3 + IL_0173: ldloc.s V_6 + IL_0175: ldc.i4.3 + IL_0176: ldelem.i4 + IL_0177: ldc.i4.1 + IL_0178: add + IL_0179: stelem.i4 + IL_017a: ldloc.0 + IL_017b: ldc.i4.3 + IL_017c: ldelem.i4 + IL_017d: ldarg.3 + IL_017e: refanyval int32[] + IL_0183: ldind.ref + IL_0184: ldc.i4.3 + IL_0185: ldelem.i4 + IL_0186: blt IL_002b + + IL_018b: ldloc.0 + IL_018c: dup + IL_018d: stloc.s V_6 + IL_018f: ldc.i4.2 + IL_0190: ldloc.s V_6 + IL_0192: ldc.i4.2 + IL_0193: ldelem.i4 + IL_0194: ldc.i4.1 + IL_0195: add + IL_0196: stelem.i4 + IL_0197: ldloc.0 + IL_0198: ldc.i4.2 + IL_0199: ldelem.i4 + IL_019a: ldarg.3 + IL_019b: refanyval int32[] + IL_01a0: ldind.ref + IL_01a1: ldc.i4.2 + IL_01a2: ldelem.i4 + IL_01a3: blt IL_0022 + + IL_01a8: ldloc.0 + IL_01a9: dup + IL_01aa: stloc.s V_6 + IL_01ac: ldc.i4.1 + IL_01ad: ldloc.s V_6 + IL_01af: ldc.i4.1 + IL_01b0: ldelem.i4 + IL_01b1: ldc.i4.1 + IL_01b2: add + IL_01b3: stelem.i4 + IL_01b4: ldloc.0 + IL_01b5: ldc.i4.1 + IL_01b6: ldelem.i4 + IL_01b7: ldarg.3 + IL_01b8: refanyval int32[] + IL_01bd: ldind.ref + IL_01be: ldc.i4.1 + IL_01bf: ldelem.i4 + IL_01c0: blt IL_0019 + + IL_01c5: ldloc.0 + IL_01c6: dup + IL_01c7: stloc.s V_6 + IL_01c9: ldc.i4.0 + IL_01ca: ldloc.s V_6 + IL_01cc: ldc.i4.0 + IL_01cd: ldelem.i4 + IL_01ce: ldc.i4.1 + IL_01cf: add + IL_01d0: stelem.i4 + IL_01d1: ldloc.0 + IL_01d2: ldc.i4.0 + IL_01d3: ldelem.i4 + IL_01d4: ldarg.3 + IL_01d5: refanyval int32[] + IL_01da: ldind.ref + IL_01db: ldc.i4.0 + IL_01dc: ldelem.i4 + IL_01dd: blt IL_0010 + + IL_01e2: ret + } // end of method LCS::findLCS + + .method private hidebysig static int32 + Main() il managed + { + .entrypoint + .maxstack 5 + .locals (string[] V_0, + int32[] V_1, + wchar[][] V_2, + int32 V_3, + int32[0...,0...,0...,0...] V_4, + int32[0...,0...,0...,0...] V_5, + int32 V_6, + string[] V_7, + int32[] V_8, + int32 V_9) + IL_0000: ldstr "Test searches for longest common subsequence of 4 " + + "strings\n\n" + IL_0005: call void [System.Console]System.Console::WriteLine(string) + IL_000a: ldc.i4.4 + IL_000b: newarr [mscorlib]System.String + IL_0010: stloc.s V_7 + IL_0012: ldloc.s V_7 + IL_0014: ldc.i4.0 + IL_0015: ldstr "The Sun has left" + IL_001a: stelem.ref + IL_001b: ldloc.s V_7 + IL_001d: ldc.i4.1 + IL_001e: ldstr "his blackness and" + IL_0023: stelem.ref + IL_0024: ldloc.s V_7 + IL_0026: ldc.i4.2 + IL_0027: ldstr "has found a fresher" + IL_002c: stelem.ref + IL_002d: ldloc.s V_7 + IL_002f: ldc.i4.3 + IL_0030: ldstr "morning and the fair Moon" + IL_0035: stelem.ref + IL_0036: ldloc.s V_7 + IL_0038: stloc.0 + IL_0039: ldc.i4.4 + IL_003a: newarr [mscorlib]System.Int32 + IL_003f: stloc.1 + IL_0040: ldc.i4.4 + IL_0041: newarr wchar[] + IL_0046: stloc.2 + IL_0047: ldc.i4.0 + IL_0048: stloc.3 + IL_0049: br.s IL_0067 + + IL_004b: ldloc.1 + IL_004c: ldloc.3 + IL_004d: ldloc.0 + IL_004e: ldloc.3 + IL_004f: ldelem.ref + IL_0050: call instance int32 [mscorlib]System.String::get_Length() + IL_0055: ldc.i4.1 + IL_0056: add + IL_0057: stelem.i4 + IL_0058: ldloc.2 + IL_0059: ldloc.3 + IL_005a: ldloc.0 + IL_005b: ldloc.3 + IL_005c: ldelem.ref + IL_005d: call instance wchar[] [mscorlib]System.String::ToCharArray() + IL_0062: stelem.ref + IL_0063: ldloc.3 + IL_0064: ldc.i4.1 + IL_0065: add + IL_0066: stloc.3 + IL_0067: ldloc.3 + IL_0068: ldc.i4.4 + IL_0069: blt.s IL_004b + + IL_006b: ldloc.1 + IL_006c: ldc.i4.0 + IL_006d: ldelem.i4 + IL_006e: ldloc.1 + IL_006f: ldc.i4.1 + IL_0070: ldelem.i4 + IL_0071: ldloc.1 + IL_0072: ldc.i4.2 + IL_0073: ldelem.i4 + IL_0074: ldloc.1 + IL_0075: ldc.i4.3 + IL_0076: ldelem.i4 + IL_0077: newobj instance void int32[0...,0...,0...,0...]::.ctor(int32, + int32, + int32, + int32) + IL_007c: stloc.s V_4 + IL_007e: ldloc.1 + IL_007f: ldc.i4.0 + IL_0080: ldelem.i4 + IL_0081: ldloc.1 + IL_0082: ldc.i4.1 + IL_0083: ldelem.i4 + IL_0084: ldloc.1 + IL_0085: ldc.i4.2 + IL_0086: ldelem.i4 + IL_0087: ldloc.1 + IL_0088: ldc.i4.3 + IL_0089: ldelem.i4 + IL_008a: newobj instance void int32[0...,0...,0...,0...]::.ctor(int32, + int32, + int32, + int32) + IL_008f: stloc.s V_5 + IL_0091: ldloca.s V_4 + IL_0093: mkrefany int32[0...,0...,0...,0...] + IL_0098: ldloca.s V_5 + IL_009a: mkrefany int32[0...,0...,0...,0...] + IL_009f: ldloca.s V_2 + IL_00a1: mkrefany wchar[][] + IL_00a6: ldloca.s V_1 + IL_00a8: mkrefany int32[] + IL_00ad: call void JitTest.LCS::findLCS(typedref, + typedref, + typedref, + typedref) + IL_00b2: ldc.i4.0 + IL_00b3: stloc.s V_6 + IL_00b5: br.s IL_00ce + + IL_00b7: ldloc.1 + IL_00b8: dup + IL_00b9: stloc.s V_8 + IL_00bb: ldloc.s V_6 + IL_00bd: dup + IL_00be: stloc.s V_9 + IL_00c0: ldloc.s V_8 + IL_00c2: ldloc.s V_9 + IL_00c4: ldelem.i4 + IL_00c5: ldc.i4.1 + IL_00c6: sub + IL_00c7: stelem.i4 + IL_00c8: ldloc.s V_6 + IL_00ca: ldc.i4.1 + IL_00cb: add + IL_00cc: stloc.s V_6 + IL_00ce: ldloc.s V_6 + IL_00d0: ldc.i4.4 + IL_00d1: blt.s IL_00b7 + + IL_00d3: ldstr " n a" + IL_00d8: ldloca.s V_5 + IL_00da: mkrefany int32[0...,0...,0...,0...] + IL_00df: ldloc.2 + IL_00e0: ldc.i4.0 + IL_00e1: ldelema wchar[] + IL_00e6: mkrefany wchar[] + IL_00eb: ldloca.s V_1 + IL_00ed: mkrefany int32[] + IL_00f2: call string JitTest.LCS::buildLCS(typedref, + typedref, + typedref) + IL_00f7: call bool [mscorlib]System.String::Equals(string, + string) + IL_00fc: brfalse.s IL_010a + + IL_00fe: ldstr "Test passed" + IL_0103: call void [System.Console]System.Console::WriteLine(string) + IL_0108: ldc.i4 100 + IL_0109: ret + + IL_010a: ldstr "Test failed." + IL_010f: call void [System.Console]System.Console::WriteLine(string) + IL_0114: ldc.i4.1 + IL_0115: ret + } // end of method LCS::Main + + .method public hidebysig specialname rtspecialname + instance void .ctor() il managed + { + .maxstack 8 + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: ret + } // end of method LCS::.ctor + + } // end of class LCS + +} // end of namespace JitTest + diff --git a/tests/src/JIT/Methodical/refany/longsig.il b/tests/src/JIT/Methodical/refany/longsig.il new file mode 100644 index 0000000000..a4be829e73 --- /dev/null +++ b/tests/src/JIT/Methodical/refany/longsig.il @@ -0,0 +1,1177 @@ +// Copyright (c) Microsoft. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +.assembly extern System.Console +{ + .publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) + .ver 4:0:0:0 +} + +.assembly extern mscorlib +{ +} +.assembly format// as "format" +{ +} +.module format.exe +.namespace JitTest +{ + .class value private auto ansi serializable sealed Mood + extends [mscorlib]System.Enum + { + .field public specialname rtspecialname int32 value__ + .field public static literal value class JitTest.Mood good = int32(0x00000000) + .field public static literal value class JitTest.Mood bad = int32(0x00000001) + .field public static literal value class JitTest.Mood worse = int32(0x00000002) + } // end of class Mood + + .class private auto ansi TestClass + extends [mscorlib]System.Object + { + .field private int32 m_d + .field private static unsigned int32 m_u + .field private int64 m_l + .field private static unsigned int64 m_ul + .field private float32 m_f + .field private float64 m_dbl + .field private bool m_b + .field private static value class [mscorlib]System.DateTime m_t + .field private value class [mscorlib]System.PlatformID m_pid + .field private value class JitTest.Mood m_mood + .method private hidebysig static string + Format(typedref format, + typedref _ref) il managed + { + .maxstack 3 + .locals ([0] int32 V_0, + [1] wchar[] V_1, + [2] string V_2, + [3] int32 V_3, + [4] int32 V_4, + [5] bool V_5, + [6] bool V_6, + [7] typedref V_7, + [8] wchar V_8, + [9] value class JitTest.Mood V_9) + IL_0000: ldarg.0 + IL_0001: refanyval [mscorlib]System.String + IL_0006: ldind.ref + IL_0007: call instance int32 [mscorlib]System.String::get_Length() + IL_000c: stloc.0 + IL_000d: ldarg.0 + IL_000e: refanyval [mscorlib]System.String + IL_0013: ldind.ref + IL_0014: call instance wchar[] [mscorlib]System.String::ToCharArray() + IL_0019: stloc.1 + IL_001a: ldstr "" + IL_001f: stloc.2 + IL_0020: ldc.i4.0 + IL_0021: stloc.3 + IL_0022: ldc.i4.0 + IL_0023: stloc.s V_4 + IL_0025: br IL_03d4 + + IL_002a: ldloc.1 + IL_002b: ldloc.s V_4 + IL_002d: ldelem.u2 + IL_002e: ldc.i4.s 37 + IL_0030: beq.s IL_004b + + IL_0032: ldloc.2 + IL_0033: ldloc.1 + IL_0034: ldloc.s V_4 + IL_0036: ldelem.u2 + IL_003b: box [mscorlib]System.Char + IL_0040: call string [mscorlib]System.String::Concat(class [mscorlib]System.Object, + class [mscorlib]System.Object) + IL_0045: stloc.2 + IL_0046: br IL_03ce + + IL_004b: ldloc.s V_4 + IL_004d: ldc.i4.1 + IL_004e: add + IL_004f: stloc.s V_4 + IL_0051: ldloc.s V_4 + IL_0053: ldloc.0 + IL_0054: blt.s IL_005c + + IL_0056: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_005b: throw + + IL_005c: ldc.i4.0 + IL_005d: stloc.s V_5 + IL_005f: ldc.i4.1 + IL_0060: stloc.s V_6 + IL_0062: ldloca.s V_5 + IL_0064: mkrefany [mscorlib]System.Boolean + IL_0069: stloc.s V_7 + IL_006b: ldloc.1 + IL_006c: ldloc.s V_4 + IL_006e: ldelem.u2 + IL_006f: ldc.i4.s 108 + IL_0071: bne.un.s IL_008d + + IL_0073: ldloca.s V_6 + IL_0075: mkrefany [mscorlib]System.Boolean + IL_007a: stloc.s V_7 + IL_007c: ldloc.s V_4 + IL_007e: ldc.i4.1 + IL_007f: add + IL_0080: stloc.s V_4 + IL_0082: ldloc.s V_4 + IL_0084: ldloc.0 + IL_0085: blt.s IL_008d + + IL_0087: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_008c: throw + + IL_008d: ldloc.3 + IL_008e: dup + IL_008f: ldc.i4.1 + IL_0090: add + IL_0091: stloc.3 + IL_0092: ldc.i4.1 + IL_0093: bne.un.s IL_009b + + IL_0095: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_009a: throw + + IL_009b: ldloc.1 + IL_009c: ldloc.s V_4 + IL_009e: ldelem.u2 + IL_009f: stloc.s V_8 + IL_00a1: ldloc.s V_8 + IL_00a3: ldc.i4.s 98 + IL_00a5: sub + IL_00a6: switch ( + IL_00e6, + IL_03c8, + IL_013b, + IL_0350, + IL_0213) + IL_00bf: ldloc.s V_8 + IL_00c1: ldc.i4.s 112 + IL_00c3: sub + IL_00c4: switch ( + IL_030d, + IL_03c8, + IL_03c8, + IL_027f, + IL_02cc, + IL_01a7) + IL_00e1: br IL_03c8 + + IL_00e6: ldloc.s V_7 + IL_00e8: refanyval [mscorlib]System.Boolean + IL_00ed: ldobj [mscorlib]System.Boolean + IL_00ee: brfalse.s IL_00f6 + + IL_00f0: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_00f5: throw + + IL_00f6: ldarg.1 + IL_00f7: refanytype + IL_00f9: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_00fe: ldtoken [mscorlib]System.Boolean + IL_0103: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_0108: beq.s IL_0110 + + IL_010a: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_010f: throw + + IL_0110: ldarg.1 + IL_0111: refanyval [mscorlib]System.Boolean + IL_0116: ldobj [mscorlib]System.Boolean + IL_0117: brfalse.s IL_012a + + IL_0119: ldloc.2 + IL_011a: ldstr "true" + IL_011f: call string [mscorlib]System.String::Concat(string, + string) + IL_0124: stloc.2 + IL_0125: br IL_03ce + + IL_012a: ldloc.2 + IL_012b: ldstr "false" + IL_0130: call string [mscorlib]System.String::Concat(string, + string) + IL_0135: stloc.2 + IL_0136: br IL_03ce + + IL_013b: ldloc.s V_7 + IL_013d: refanyval [mscorlib]System.Boolean + IL_0142: ldobj [mscorlib]System.Boolean + IL_0143: brfalse.s IL_0176 + + IL_0145: ldarg.1 + IL_0146: refanytype + IL_0148: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_014d: ldtoken [mscorlib]System.Int64 + IL_0152: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_0157: beq.s IL_015f + + IL_0159: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_015e: throw + + IL_015f: ldloc.2 + IL_0160: ldarg.1 + IL_0161: refanyval [mscorlib]System.Int64 + IL_0166: call instance string [mscorlib]System.Int64::ToString() + IL_016b: call string [mscorlib]System.String::Concat(string, + string) + IL_0170: stloc.2 + IL_0171: br IL_03ce + + IL_0176: ldarg.1 + IL_0177: refanytype + IL_0179: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_017e: ldtoken [mscorlib]System.Int32 + IL_0183: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_0188: beq.s IL_0190 + + IL_018a: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_018f: throw + + IL_0190: ldloc.2 + IL_0191: ldarg.1 + IL_0192: refanyval [mscorlib]System.Int32 + IL_0197: call instance string [mscorlib]System.Int32::ToString() + IL_019c: call string [mscorlib]System.String::Concat(string, + string) + IL_01a1: stloc.2 + IL_01a2: br IL_03ce + + IL_01a7: ldloc.s V_7 + IL_01a9: refanyval [mscorlib]System.Boolean + IL_01ae: ldobj [mscorlib]System.Boolean + IL_01af: brfalse.s IL_01e2 + + IL_01b1: ldarg.1 + IL_01b2: refanytype + IL_01b4: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_01b9: ldtoken [mscorlib]System.UInt64 + IL_01be: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_01c3: beq.s IL_01cb + + IL_01c5: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_01ca: throw + + IL_01cb: ldloc.2 + IL_01cc: ldarg.1 + IL_01cd: refanyval [mscorlib]System.UInt64 + IL_01d2: call instance string [mscorlib]System.UInt64::ToString() + IL_01d7: call string [mscorlib]System.String::Concat(string, + string) + IL_01dc: stloc.2 + IL_01dd: br IL_03ce + + IL_01e2: ldarg.1 + IL_01e3: refanytype + IL_01e5: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_01ea: ldtoken [mscorlib]System.UInt32 + IL_01ef: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_01f4: beq.s IL_01fc + + IL_01f6: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_01fb: throw + + IL_01fc: ldloc.2 + IL_01fd: ldarg.1 + IL_01fe: refanyval [mscorlib]System.UInt32 + IL_0203: call instance string [mscorlib]System.UInt32::ToString() + IL_0208: call string [mscorlib]System.String::Concat(string, + string) + IL_020d: stloc.2 + IL_020e: br IL_03ce + + IL_0213: ldloc.s V_7 + IL_0215: refanyval [mscorlib]System.Boolean + IL_021a: ldobj [mscorlib]System.Boolean + IL_021b: brfalse.s IL_024e + + IL_021d: ldarg.1 + IL_021e: refanytype + IL_0220: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_0225: ldtoken [mscorlib]System.Double + IL_022a: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_022f: beq.s IL_0237 + + IL_0231: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_0236: throw + + IL_0237: ldloc.2 + IL_0238: ldarg.1 + IL_0239: refanyval [mscorlib]System.Double + IL_023e: call instance string [mscorlib]System.Double::ToString() + IL_0243: call string [mscorlib]System.String::Concat(string, + string) + IL_0248: stloc.2 + IL_0249: br IL_03ce + + IL_024e: ldarg.1 + IL_024f: refanytype + IL_0251: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_0256: ldtoken [mscorlib]System.Single + IL_025b: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_0260: beq.s IL_0268 + + IL_0262: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_0267: throw + + IL_0268: ldloc.2 + IL_0269: ldarg.1 + IL_026a: refanyval [mscorlib]System.Single + IL_026f: call instance string [mscorlib]System.Single::ToString() + IL_0274: call string [mscorlib]System.String::Concat(string, + string) + IL_0279: stloc.2 + IL_027a: br IL_03ce + + IL_027f: ldloc.s V_7 + IL_0281: refanyval [mscorlib]System.Boolean + IL_0286: ldobj [mscorlib]System.Boolean + IL_0287: brfalse.s IL_028f + + IL_0289: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_028e: throw + + IL_028f: ldarg.1 + IL_0290: refanytype + IL_0292: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_0297: ldtoken [mscorlib]System.String + IL_029c: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_02a1: beq.s IL_02a9 + + IL_02a3: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_02a8: throw + + IL_02a9: ldloc.2 + IL_02aa: ldarg.1 + IL_02ab: refanyval [mscorlib]System.String + IL_02b0: ldind.ref + IL_02b1: brtrue.s IL_02ba + + IL_02b3: ldstr "(null)" + IL_02b8: br.s IL_02c1 + + IL_02ba: ldarg.1 + IL_02bb: refanyval [mscorlib]System.String + IL_02c0: ldind.ref + IL_02c1: call string [mscorlib]System.String::Concat(string, + string) + IL_02c6: stloc.2 + IL_02c7: br IL_03ce + + IL_02cc: ldloc.s V_7 + IL_02ce: refanyval [mscorlib]System.Boolean + IL_02d3: ldobj [mscorlib]System.Boolean + IL_02d4: brfalse.s IL_02dc + + IL_02d6: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_02db: throw + + IL_02dc: ldarg.1 + IL_02dd: refanytype + IL_02df: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_02e4: ldtoken [mscorlib]System.DateTime + IL_02e9: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_02ee: beq.s IL_02f6 + + IL_02f0: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_02f5: throw + + IL_02f6: ldloc.2 + IL_02f7: ldarg.1 + IL_02f8: refanyval [mscorlib]System.DateTime + IL_02fd: call instance string [mscorlib]System.DateTime::ToString() + IL_0302: call string [mscorlib]System.String::Concat(string, + string) + IL_0307: stloc.2 + IL_0308: br IL_03ce + + IL_030d: ldloc.s V_7 + IL_030f: refanyval [mscorlib]System.Boolean + IL_0314: ldobj [mscorlib]System.Boolean + IL_0315: brfalse.s IL_031d + + IL_0317: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_031c: throw + + IL_031d: ldarg.1 + IL_031e: refanytype + IL_0320: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_0325: ldtoken [mscorlib]System.PlatformID + IL_032a: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_032f: beq.s IL_0337 + + IL_0331: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_0336: throw + + IL_0337: ldloc.2 + IL_0338: ldarg.1 + IL_0339: refanyval [mscorlib]System.PlatformID + ldobj [mscorlib]System.PlatformID + IL_033e: box [mscorlib]System.PlatformID + IL_0343: call instance string [mscorlib]System.Enum::ToString() + IL_0348: call string [mscorlib]System.String::Concat(string, + string) + IL_034d: stloc.2 + IL_034e: br IL_03ce + + IL_0350: ldloc.s V_7 + IL_0352: refanyval [mscorlib]System.Boolean + IL_0357: ldobj [mscorlib]System.Boolean + IL_0358: brfalse.s IL_0360 + + IL_035a: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_035f: throw + + IL_0360: ldarg.1 + IL_0361: refanytype + IL_0363: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_0368: ldtoken JitTest.Mood + IL_036d: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_0372: beq.s IL_037a + + IL_0374: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_0379: throw + + IL_037a: ldarg.1 + IL_037b: refanyval JitTest.Mood + IL_0380: ldobj JitTest.Mood + IL_0381: stloc.s V_9 + IL_0383: ldloc.s V_9 + IL_0385: switch ( + IL_0398, + IL_03a6, + IL_03b4) + IL_0396: br.s IL_03c2 + + IL_0398: ldloc.2 + IL_0399: ldstr "good" + IL_039e: call string [mscorlib]System.String::Concat(string, + string) + IL_03a3: stloc.2 + IL_03a4: br IL_03ce + + IL_03a6: ldloc.2 + IL_03a7: ldstr "bad" + IL_03ac: call string [mscorlib]System.String::Concat(string, + string) + IL_03b1: stloc.2 + IL_03b2: br.s IL_03ce + + IL_03b4: ldloc.2 + IL_03b5: ldstr "worse" + IL_03ba: call string [mscorlib]System.String::Concat(string, + string) + IL_03bf: stloc.2 + IL_03c0: br.s IL_03ce + + IL_03c2: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_03c7: throw + + IL_03c8: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_03cd: throw + + IL_03ce: ldloc.s V_4 + IL_03d0: ldc.i4.1 + IL_03d1: add + IL_03d2: stloc.s V_4 + IL_03d4: ldloc.s V_4 + IL_03d6: ldloc.0 + IL_03d7: blt IL_002a + + IL_03dc: ldloc.2 + IL_03dd: ret + } // end of method TestClass::Format + + .method private hidebysig static void + Test(string format, + typedref arg, + string result) il managed + { + .maxstack 3 + .locals ([0] string V_0, + [1] string[] V_1) + IL_0000: ldarga.s format + IL_0002: mkrefany [mscorlib]System.String + IL_0007: ldarg.1 + IL_0008: call string JitTest.TestClass::Format(typedref, + typedref) + IL_000d: stloc.0 + IL_000e: ldloc.0 + IL_000f: ldarg.2 + IL_0010: call bool [mscorlib]System.String::Equals(string, + string) + IL_0015: brtrue.s IL_004f + + IL_0017: ldc.i4.5 + IL_0018: newarr [mscorlib]System.String + IL_001d: stloc.1 + IL_001e: ldloc.1 + IL_001f: ldc.i4.0 + IL_0020: ldstr "WRONG! expected: '" + IL_0025: stelem.ref + IL_0026: ldloc.1 + IL_0027: ldc.i4.1 + IL_0028: ldarg.2 + IL_0029: stelem.ref + IL_002a: ldloc.1 + IL_002b: ldc.i4.2 + IL_002c: ldstr "', got '" + IL_0031: stelem.ref + IL_0032: ldloc.1 + IL_0033: ldc.i4.3 + IL_0034: ldloc.0 + IL_0035: stelem.ref + IL_0036: ldloc.1 + IL_0037: ldc.i4.4 + IL_0038: ldstr "'" + IL_003d: stelem.ref + IL_003e: ldloc.1 + IL_003f: call string [mscorlib]System.String::Concat(string[]) + IL_0044: call void [System.Console]System.Console::WriteLine(string) + IL_0049: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_004e: throw + + IL_004f: ret + } // end of method TestClass::Test + + .method private hidebysig static void + TestLocals() il managed + { + .maxstack 5 + .locals ([0] int32 V_0, + [1] unsigned int32 V_1, + [2] int64 V_2, + [3] unsigned int64 V_3, + [4] float32 V_4, + [5] float64 V_5, + [6] bool V_6, + [7] value class [mscorlib]System.DateTime V_7, + [8] value class [mscorlib]System.PlatformID V_8, + [9] value class JitTest.Mood V_9) + IL_0000: ldc.i4.s 10 + IL_0002: stloc.0 + IL_0003: ldc.i4.s 11 + IL_0005: stloc.1 + IL_0006: ldc.i4.s 12 + IL_0008: conv.i8 + IL_0009: stloc.2 + IL_000a: ldc.i4.s 13 + IL_000c: conv.i8 + IL_000d: stloc.3 + IL_000e: ldc.r4 14. + IL_0013: stloc.s V_4 + IL_0015: ldc.r8 15. + IL_001e: stloc.s V_5 + IL_0020: ldc.i4.1 + IL_0021: stloc.s V_6 + IL_0023: ldloca.s V_7 + IL_0025: ldc.i4.s 100 + IL_0027: ldc.i4.s 10 + IL_0029: ldc.i4.1 + IL_002a: call instance void [mscorlib]System.DateTime::.ctor(int32, + int32, + int32) + IL_002f: ldc.i4.2 + IL_0030: stloc.s V_8 + IL_0032: ldc.i4.0 + IL_0033: stloc.s V_9 + IL_0035: ldstr "{%d}" + IL_003a: ldloca.s V_0 + IL_003c: mkrefany [mscorlib]System.Int32 + IL_0041: ldstr "{10}" + IL_0046: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_004b: ldstr "{%u}" + IL_0050: ldloca.s V_1 + IL_0052: mkrefany [mscorlib]System.UInt32 + IL_0057: ldstr "{11}" + IL_005c: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_0061: ldstr "{%ld}" + IL_0066: ldloca.s V_2 + IL_0068: mkrefany [mscorlib]System.Int64 + IL_006d: ldstr "{12}" + IL_0072: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_0077: ldstr "{%lu}" + IL_007c: ldloca.s V_3 + IL_007e: mkrefany [mscorlib]System.UInt64 + IL_0083: ldstr "{13}" + IL_0088: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_008d: ldstr "{%f}" + IL_0092: ldloca.s V_4 + IL_0094: mkrefany [mscorlib]System.Single + IL_0099: ldstr "{14}" + IL_009e: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_00a3: ldstr "{%lf}" + IL_00a8: ldloca.s V_5 + IL_00aa: mkrefany [mscorlib]System.Double + IL_00af: ldstr "{15}" + IL_00b4: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_00b9: ldstr "{%b}" + IL_00be: ldloca.s V_6 + IL_00c0: mkrefany [mscorlib]System.Boolean + IL_00c5: ldstr "{true}" + IL_00ca: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_00cf: ldstr "{%t}" + IL_00d4: ldloca.s V_7 + IL_00d6: mkrefany [mscorlib]System.DateTime + IL_00db: ldstr "{" + IL_00e0: ldloca.s V_7 + IL_00e2: call instance string [mscorlib]System.DateTime::ToString() + IL_00e7: ldstr "}" + IL_00ec: call string [mscorlib]System.String::Concat(string, + string, + string) + IL_00f1: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_00f6: ldstr "{%p}" + IL_00fb: ldloca.s V_8 + IL_00fd: mkrefany [mscorlib]System.PlatformID + IL_0102: ldstr "{Win32NT}" + IL_0107: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_010c: ldstr "{%e}" + IL_0111: ldloca.s V_9 + IL_0113: mkrefany JitTest.Mood + IL_0118: ldstr "{good}" + IL_011d: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_0122: ret + } // end of method TestClass::TestLocals + + .method private hidebysig instance void + TestFields() il managed + { + .maxstack 5 + IL_0000: ldstr "{%d}" + IL_0005: ldarg.0 + IL_0006: ldflda int32 JitTest.TestClass::m_d + IL_000b: mkrefany [mscorlib]System.Int32 + IL_0010: ldstr "{20}" + IL_0015: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_001a: ldstr "{%u}" + IL_001f: ldsflda unsigned int32 JitTest.TestClass::m_u + IL_0024: mkrefany [mscorlib]System.UInt32 + IL_0029: ldstr "{21}" + IL_002e: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_0033: ldstr "{%ld}" + IL_0038: ldarg.0 + IL_0039: ldflda int64 JitTest.TestClass::m_l + IL_003e: mkrefany [mscorlib]System.Int64 + IL_0043: ldstr "{22}" + IL_0048: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_004d: ldstr "{%lu}" + IL_0052: ldsflda unsigned int64 JitTest.TestClass::m_ul + IL_0057: mkrefany [mscorlib]System.UInt64 + IL_005c: ldstr "{23}" + IL_0061: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_0066: ldstr "{%f}" + IL_006b: ldarg.0 + IL_006c: ldflda float32 JitTest.TestClass::m_f + IL_0071: mkrefany [mscorlib]System.Single + IL_0076: ldstr "{24}" + IL_007b: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_0080: ldstr "{%lf}" + IL_0085: ldarg.0 + IL_0086: ldflda float64 JitTest.TestClass::m_dbl + IL_008b: mkrefany [mscorlib]System.Double + IL_0090: ldstr "{25}" + IL_0095: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_009a: ldstr "{%b}" + IL_009f: ldarg.0 + IL_00a0: ldflda bool JitTest.TestClass::m_b + IL_00a5: mkrefany [mscorlib]System.Boolean + IL_00aa: ldstr "{false}" + IL_00af: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_00b4: ldstr "{%t}" + IL_00b9: ldsflda value class [mscorlib]System.DateTime JitTest.TestClass::m_t + IL_00be: mkrefany [mscorlib]System.DateTime + IL_00c3: ldstr "{" + IL_00c8: ldsflda value class [mscorlib]System.DateTime JitTest.TestClass::m_t + IL_00cd: call instance string [mscorlib]System.DateTime::ToString() + IL_00d2: ldstr "}" + IL_00d7: call string [mscorlib]System.String::Concat(string, + string, + string) + IL_00dc: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_00e1: ldstr "{%p}" + IL_00e6: ldarg.0 + IL_00e7: ldflda value class [mscorlib]System.PlatformID JitTest.TestClass::m_pid + IL_00ec: mkrefany [mscorlib]System.PlatformID + IL_00f1: ldstr "{Win32NT}" + IL_00f6: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_00fb: ldstr "{%e}" + IL_0100: ldarg.0 + IL_0101: ldflda value class JitTest.Mood JitTest.TestClass::m_mood + IL_0106: mkrefany JitTest.Mood + IL_010b: ldstr "{good}" + IL_0110: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_0115: ret + } // end of method TestClass::TestFields + + .method private hidebysig static void + DoTestArgSlots(int32& d, + unsigned int32& u, + int64& l, + unsigned int64& ul, + float32& f, + float64& dbl, + bool& b, + value class [mscorlib]System.DateTime& t, + value class [mscorlib]System.PlatformID& pid) il managed + { + .maxstack 5 + IL_0000: ldstr "{%d}" + IL_0005: ldarg.0 + IL_0006: mkrefany [mscorlib]System.Int32 + IL_000b: ldstr "{20}" + IL_0010: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_0015: ldstr "{%u}" + IL_001a: ldarg.1 + IL_001b: mkrefany [mscorlib]System.UInt32 + IL_0020: ldstr "{21}" + IL_0025: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_002a: ldstr "{%ld}" + IL_002f: ldarg.2 + IL_0030: mkrefany [mscorlib]System.Int64 + IL_0035: ldstr "{22}" + IL_003a: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_003f: ldstr "{%lu}" + IL_0044: ldarg.3 + IL_0045: mkrefany [mscorlib]System.UInt64 + IL_004a: ldstr "{23}" + IL_004f: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_0054: ldstr "{%f}" + IL_0059: ldarg.s f + IL_005b: mkrefany [mscorlib]System.Single + IL_0060: ldstr "{24}" + IL_0065: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_006a: ldstr "{%lf}" + IL_006f: ldarg.s dbl + IL_0071: mkrefany [mscorlib]System.Double + IL_0076: ldstr "{25}" + IL_007b: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_0080: ldstr "{%b}" + IL_0085: ldarg.s b + IL_0087: mkrefany [mscorlib]System.Boolean + IL_008c: ldstr "{false}" + IL_0091: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_0096: ldstr "{%t}" + IL_009b: ldarg.s t + IL_009d: mkrefany [mscorlib]System.DateTime + IL_00a2: ldstr "{" + IL_00a7: ldarg.s t + IL_00a9: call instance string [mscorlib]System.DateTime::ToString() + IL_00ae: ldstr "}" + IL_00b3: call string [mscorlib]System.String::Concat(string, + string, + string) + IL_00b8: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_00bd: ldstr "{%p}" + IL_00c2: ldarg.s pid + IL_00c4: mkrefany [mscorlib]System.PlatformID + IL_00c9: ldstr "{Win32NT}" + IL_00ce: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_00d3: ret + } // end of method TestClass::DoTestArgSlots + + .method private hidebysig static void + TestArgSlots() il managed + { + .maxstack 9 + .locals ([0] int32 V_0, + [1] unsigned int32 V_1, + [2] int64 V_2, + [3] unsigned int64 V_3, + [4] float32 V_4, + [5] float64 V_5, + [6] bool V_6, + [7] value class [mscorlib]System.DateTime V_7, + [8] value class [mscorlib]System.PlatformID V_8) + IL_0000: ldc.i4.s 20 + IL_0002: stloc.0 + IL_0003: ldc.i4.s 21 + IL_0005: stloc.1 + IL_0006: ldc.i4.s 22 + IL_0008: conv.i8 + IL_0009: stloc.2 + IL_000a: ldc.i4.s 23 + IL_000c: conv.i8 + IL_000d: stloc.3 + IL_000e: ldc.r4 24. + IL_0013: stloc.s V_4 + IL_0015: ldc.r8 25. + IL_001e: stloc.s V_5 + IL_0020: ldc.i4.0 + IL_0021: stloc.s V_6 + IL_0023: ldloca.s V_7 + IL_0025: ldc.i4.s 100 + IL_0027: ldc.i4.s 10 + IL_0029: ldc.i4.1 + IL_002a: call instance void [mscorlib]System.DateTime::.ctor(int32, + int32, + int32) + IL_002f: ldc.i4.2 + IL_0030: stloc.s V_8 + IL_0032: ldloca.s V_0 + IL_0034: ldloca.s V_1 + IL_0036: ldloca.s V_2 + IL_0038: ldloca.s V_3 + IL_003a: ldloca.s V_4 + IL_003c: ldloca.s V_5 + IL_003e: ldloca.s V_6 + IL_0040: ldloca.s V_7 + IL_0042: ldloca.s V_8 + IL_0044: call void JitTest.TestClass::DoTestArgSlots(int32&, + unsigned int32&, + int64&, + unsigned int64&, + float32&, + float64&, + bool&, + value class [mscorlib]System.DateTime&, + value class [mscorlib]System.PlatformID&) + IL_0049: ret + } // end of method TestClass::TestArgSlots + + .method private hidebysig static void + TestArrayElem() il managed + { + .maxstack 5 + .locals ([0] int32[] V_0, + [1] unsigned int32[] V_1, + [2] int64[] V_2, + [3] unsigned int64[] V_3, + [4] float32[] V_4, + [5] float64[] V_5, + [6] bool[] V_6, + [7] value class [mscorlib]System.DateTime[] V_7, + [8] value class [mscorlib]System.PlatformID[] V_8, + [9] value class JitTest.Mood[] V_9, + [10] int32[] V_10, + [11] unsigned int32[] V_11, + [12] int64[] V_12, + [13] unsigned int64[] V_13, + [14] float32[] V_14, + [15] float64[] V_15, + [16] bool[] V_16, + [17] value class [mscorlib]System.PlatformID[] V_17, + [18] value class JitTest.Mood[] V_18) + IL_0000: ldc.i4.1 + IL_0001: newarr [mscorlib]System.Int32 + IL_0006: stloc.s V_10 + IL_0008: ldloc.s V_10 + IL_000a: ldc.i4.0 + IL_000b: ldc.i4.s 10 + IL_000d: stelem.i4 + IL_000e: ldloc.s V_10 + IL_0010: stloc.0 + IL_0011: ldc.i4.1 + IL_0012: newarr [mscorlib]System.UInt32 + IL_0017: stloc.s V_11 + IL_0019: ldloc.s V_11 + IL_001b: ldc.i4.0 + IL_001c: ldc.i4.s 11 + IL_001e: stelem.i4 + IL_001f: ldloc.s V_11 + IL_0021: stloc.1 + IL_0022: ldc.i4.1 + IL_0023: newarr [mscorlib]System.Int64 + IL_0028: stloc.s V_12 + IL_002a: ldloc.s V_12 + IL_002c: ldc.i4.0 + IL_002d: ldc.i4.s 12 + IL_002f: conv.i8 + IL_0030: stelem.i8 + IL_0031: ldloc.s V_12 + IL_0033: stloc.2 + IL_0034: ldc.i4.1 + IL_0035: newarr [mscorlib]System.UInt64 + IL_003a: stloc.s V_13 + IL_003c: ldloc.s V_13 + IL_003e: ldc.i4.0 + IL_003f: ldc.i4.s 13 + IL_0041: conv.i8 + IL_0042: stelem.i8 + IL_0043: ldloc.s V_13 + IL_0045: stloc.3 + IL_0046: ldc.i4.1 + IL_0047: newarr [mscorlib]System.Single + IL_004c: stloc.s V_14 + IL_004e: ldloc.s V_14 + IL_0050: ldc.i4.0 + IL_0051: ldc.r4 14. + IL_0056: stelem.r4 + IL_0057: ldloc.s V_14 + IL_0059: stloc.s V_4 + IL_005b: ldc.i4.1 + IL_005c: newarr [mscorlib]System.Double + IL_0061: stloc.s V_15 + IL_0063: ldloc.s V_15 + IL_0065: ldc.i4.0 + IL_0066: ldc.r8 15. + IL_006f: stelem.r8 + IL_0070: ldloc.s V_15 + IL_0072: stloc.s V_5 + IL_0074: ldc.i4.1 + IL_0075: newarr [mscorlib]System.Boolean + IL_007a: stloc.s V_16 + IL_007c: ldloc.s V_16 + IL_007e: ldc.i4.0 + IL_007f: ldc.i4.1 + IL_0080: stelem.i1 + IL_0081: ldloc.s V_16 + IL_0083: stloc.s V_6 + IL_0085: ldc.i4 0xc8 + IL_008a: newarr [mscorlib]System.DateTime + IL_008f: stloc.s V_7 + IL_0091: ldloc.s V_7 + IL_0093: ldc.i4.1 + IL_0094: ldelema [mscorlib]System.DateTime + IL_0099: ldc.i4.s 100 + IL_009b: ldc.i4.s 10 + IL_009d: ldc.i4.1 + IL_009e: call instance void [mscorlib]System.DateTime::.ctor(int32, + int32, + int32) + IL_00a3: ldc.i4.1 + IL_00a4: newarr [mscorlib]System.PlatformID + IL_00a9: stloc.s V_17 + IL_00ab: ldloc.s V_17 + IL_00ad: ldc.i4.0 + IL_00ae: ldc.i4.2 + IL_00af: stelem.i4 + IL_00b0: ldloc.s V_17 + IL_00b2: stloc.s V_8 + IL_00b4: ldc.i4.1 + IL_00b5: newarr JitTest.Mood + IL_00ba: stloc.s V_18 + IL_00bc: ldloc.s V_18 + IL_00be: stloc.s V_9 + IL_00c0: ldstr "{%d}" + IL_00c5: ldloc.0 + IL_00c6: ldc.i4.0 + IL_00c7: ldelema [mscorlib]System.Int32 + IL_00cc: mkrefany [mscorlib]System.Int32 + IL_00d1: ldstr "{10}" + IL_00d6: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_00db: ldstr "{%u}" + IL_00e0: ldloc.1 + IL_00e1: ldc.i4.0 + IL_00e2: ldelema [mscorlib]System.UInt32 + IL_00e7: mkrefany [mscorlib]System.UInt32 + IL_00ec: ldstr "{11}" + IL_00f1: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_00f6: ldstr "{%ld}" + IL_00fb: ldloc.2 + IL_00fc: ldc.i4.0 + IL_00fd: ldelema [mscorlib]System.Int64 + IL_0102: mkrefany [mscorlib]System.Int64 + IL_0107: ldstr "{12}" + IL_010c: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_0111: ldstr "{%lu}" + IL_0116: ldloc.3 + IL_0117: ldc.i4.0 + IL_0118: ldelema [mscorlib]System.UInt64 + IL_011d: mkrefany [mscorlib]System.UInt64 + IL_0122: ldstr "{13}" + IL_0127: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_012c: ldstr "{%f}" + IL_0131: ldloc.s V_4 + IL_0133: ldc.i4.0 + IL_0134: ldelema [mscorlib]System.Single + IL_0139: mkrefany [mscorlib]System.Single + IL_013e: ldstr "{14}" + IL_0143: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_0148: ldstr "{%lf}" + IL_014d: ldloc.s V_5 + IL_014f: ldc.i4.0 + IL_0150: ldelema [mscorlib]System.Double + IL_0155: mkrefany [mscorlib]System.Double + IL_015a: ldstr "{15}" + IL_015f: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_0164: ldstr "{%b}" + IL_0169: ldloc.s V_6 + IL_016b: ldc.i4.0 + IL_016c: ldelema [mscorlib]System.Boolean + IL_0171: mkrefany [mscorlib]System.Boolean + IL_0176: ldstr "{true}" + IL_017b: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_0180: ldstr "{%t}" + IL_0185: ldloc.s V_7 + IL_0187: ldc.i4.1 + IL_0188: ldelema [mscorlib]System.DateTime + IL_018d: mkrefany [mscorlib]System.DateTime + IL_0192: ldstr "{" + IL_0197: ldloc.s V_7 + IL_0199: ldc.i4.1 + IL_019a: ldelema [mscorlib]System.DateTime + IL_019f: call instance string [mscorlib]System.DateTime::ToString() + IL_01a4: ldstr "}" + IL_01a9: call string [mscorlib]System.String::Concat(string, + string, + string) + IL_01ae: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_01b3: ldstr "{%p}" + IL_01b8: ldloc.s V_8 + IL_01ba: ldc.i4.0 + IL_01bb: ldelema [mscorlib]System.PlatformID + IL_01c0: mkrefany [mscorlib]System.PlatformID + IL_01c5: ldstr "{Win32NT}" + IL_01ca: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_01cf: ldstr "{%e}" + IL_01d4: ldloc.s V_9 + IL_01d6: ldc.i4.0 + IL_01d7: ldelema JitTest.Mood + IL_01dc: mkrefany JitTest.Mood + IL_01e1: ldstr "{good}" + IL_01e6: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_01eb: ret + } // end of method TestClass::TestArrayElem + + .method private hidebysig static int32 + Main() il managed + { + .entrypoint + .maxstack 8 + IL_0000: call void JitTest.TestClass::TestLocals() + IL_0005: newobj instance void JitTest.TestClass::.ctor() + IL_000a: call instance void JitTest.TestClass::TestFields() + IL_000f: call void JitTest.TestClass::TestArrayElem() + IL_0014: ldstr "*** passed ***" + IL_0019: call void [System.Console]System.Console::WriteLine(string) + IL_001e: ldc.i4 100 + IL_001f: ret + } // end of method TestClass::Main + + .method public hidebysig specialname rtspecialname static + void .cctor() il managed + { + .maxstack 8 + IL_0000: ldc.i4.s 21 + IL_0002: stsfld unsigned int32 JitTest.TestClass::m_u + IL_0007: ldc.i4.s 23 + IL_0009: conv.i8 + IL_000a: stsfld unsigned int64 JitTest.TestClass::m_ul + IL_000f: ldsflda value class [mscorlib]System.DateTime JitTest.TestClass::m_t + IL_0014: ldc.i4.s 100 + IL_0016: ldc.i4.s 10 + IL_0018: ldc.i4.1 + IL_0019: call instance void [mscorlib]System.DateTime::.ctor(int32, + int32, + int32) + IL_001e: ret + } // end of method TestClass::.cctor + + .method public hidebysig specialname rtspecialname + instance void .ctor() il managed + { + .maxstack 2 + IL_0000: ldarg.0 + IL_0001: ldc.i4.s 20 + IL_0003: stfld int32 JitTest.TestClass::m_d + IL_0008: ldarg.0 + IL_0009: ldc.i4.s 22 + IL_000b: conv.i8 + IL_000c: stfld int64 JitTest.TestClass::m_l + IL_0011: ldarg.0 + IL_0012: ldc.r4 24. + IL_0017: stfld float32 JitTest.TestClass::m_f + IL_001c: ldarg.0 + IL_001d: ldc.r8 25. + IL_0026: stfld float64 JitTest.TestClass::m_dbl + IL_002b: ldarg.0 + IL_002c: ldc.i4.0 + IL_002d: stfld bool JitTest.TestClass::m_b + IL_0032: ldarg.0 + IL_0033: ldc.i4.2 + IL_0034: stfld value class [mscorlib]System.PlatformID JitTest.TestClass::m_pid + IL_0039: ldarg.0 + IL_003a: ldc.i4.0 + IL_003b: stfld value class JitTest.Mood JitTest.TestClass::m_mood + IL_0040: ldarg.0 + IL_0041: call instance void [mscorlib]System.Object::.ctor() + IL_0046: ret + } // end of method TestClass::.ctor + + } // end of class TestClass + +} // end of namespace JitTest + diff --git a/tests/src/JIT/Methodical/refany/shortsig.il b/tests/src/JIT/Methodical/refany/shortsig.il new file mode 100644 index 0000000000..dedd5b49d8 --- /dev/null +++ b/tests/src/JIT/Methodical/refany/shortsig.il @@ -0,0 +1,1176 @@ +// Copyright (c) Microsoft. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +.assembly extern System.Console +{ + .publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) + .ver 4:0:0:0 +} + +.assembly extern mscorlib +{ +} +.assembly format// as "format" +{ +} +.namespace JitTest +{ + .class value private auto ansi serializable sealed Mood + extends [mscorlib]System.Enum + { + .field public specialname rtspecialname int32 value__ + .field public static literal value class JitTest.Mood good = int32(0x00000000) + .field public static literal value class JitTest.Mood bad = int32(0x00000001) + .field public static literal value class JitTest.Mood worse = int32(0x00000002) + } // end of class Mood + + .class private auto ansi TestClass + extends [mscorlib]System.Object + { + .field private int32 m_d + .field private static unsigned int32 m_u + .field private int64 m_l + .field private static unsigned int64 m_ul + .field private float32 m_f + .field private float64 m_dbl + .field private bool m_b + .field private static value class [mscorlib]System.DateTime m_t + .field private value class [mscorlib]System.PlatformID m_pid + .field private value class JitTest.Mood m_mood + .method private hidebysig static string + Format(typedref format, + typedref _ref) il managed + { + .maxstack 3 + .locals ([0] int32 V_0, + [1] wchar[] V_1, + [2] string V_2, + [3] int32 V_3, + [4] int32 V_4, + [5] bool V_5, + [6] bool V_6, + [7] typedref V_7, + [8] wchar V_8, + [9] value class JitTest.Mood V_9) + IL_0000: ldarg.0 + IL_0001: refanyval [mscorlib]System.String + IL_0006: ldind.ref + IL_0007: call instance int32 [mscorlib]System.String::get_Length() + IL_000c: stloc.0 + IL_000d: ldarg.0 + IL_000e: refanyval [mscorlib]System.String + IL_0013: ldind.ref + IL_0014: call instance wchar[] [mscorlib]System.String::ToCharArray() + IL_0019: stloc.1 + IL_001a: ldstr "" + IL_001f: stloc.2 + IL_0020: ldc.i4.0 + IL_0021: stloc.3 + IL_0022: ldc.i4.0 + IL_0023: stloc.s V_4 + IL_0025: br IL_03d4 + + IL_002a: ldloc.1 + IL_002b: ldloc.s V_4 + IL_002d: ldelem.u2 + IL_002e: ldc.i4.s 37 + IL_0030: beq.s IL_004b + + IL_0032: ldloc.2 + IL_0033: ldloc.1 + IL_0034: ldloc.s V_4 + IL_0036: ldelem.u2 + IL_003b: box [mscorlib]System.Char + IL_0040: call string [mscorlib]System.String::Concat(class [mscorlib]System.Object, + class [mscorlib]System.Object) + IL_0045: stloc.2 + IL_0046: br IL_03ce + + IL_004b: ldloc.s V_4 + IL_004d: ldc.i4.1 + IL_004e: add + IL_004f: stloc.s V_4 + IL_0051: ldloc.s V_4 + IL_0053: ldloc.0 + IL_0054: blt.s IL_005c + + IL_0056: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_005b: throw + + IL_005c: ldc.i4.0 + IL_005d: stloc.s V_5 + IL_005f: ldc.i4.1 + IL_0060: stloc.s V_6 + IL_0062: ldloca.s V_5 + IL_0064: mkrefany [mscorlib]System.Boolean + IL_0069: stloc.s V_7 + IL_006b: ldloc.1 + IL_006c: ldloc.s V_4 + IL_006e: ldelem.u2 + IL_006f: ldc.i4.s 108 + IL_0071: bne.un.s IL_008d + + IL_0073: ldloca.s V_6 + IL_0075: mkrefany [mscorlib]System.Boolean + IL_007a: stloc.s V_7 + IL_007c: ldloc.s V_4 + IL_007e: ldc.i4.1 + IL_007f: add + IL_0080: stloc.s V_4 + IL_0082: ldloc.s V_4 + IL_0084: ldloc.0 + IL_0085: blt.s IL_008d + + IL_0087: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_008c: throw + + IL_008d: ldloc.3 + IL_008e: dup + IL_008f: ldc.i4.1 + IL_0090: add + IL_0091: stloc.3 + IL_0092: ldc.i4.1 + IL_0093: bne.un.s IL_009b + + IL_0095: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_009a: throw + + IL_009b: ldloc.1 + IL_009c: ldloc.s V_4 + IL_009e: ldelem.u2 + IL_009f: stloc.s V_8 + IL_00a1: ldloc.s V_8 + IL_00a3: ldc.i4.s 98 + IL_00a5: sub + IL_00a6: switch ( + IL_00e6, + IL_03c8, + IL_013b, + IL_0350, + IL_0213) + IL_00bf: ldloc.s V_8 + IL_00c1: ldc.i4.s 112 + IL_00c3: sub + IL_00c4: switch ( + IL_030d, + IL_03c8, + IL_03c8, + IL_027f, + IL_02cc, + IL_01a7) + IL_00e1: br IL_03c8 + + IL_00e6: ldloc.s V_7 + IL_00e8: refanyval bool + IL_00ed: ldind.i1 + IL_00ee: brfalse.s IL_00f6 + + IL_00f0: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_00f5: throw + + IL_00f6: ldarg.1 + IL_00f7: refanytype + IL_00f9: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_00fe: ldtoken [mscorlib]System.Boolean + IL_0103: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_0108: beq.s IL_0110 + + IL_010a: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_010f: throw + + IL_0110: ldarg.1 + IL_0111: refanyval bool + IL_0116: ldind.i1 + IL_0117: brfalse.s IL_012a + + IL_0119: ldloc.2 + IL_011a: ldstr "true" + IL_011f: call string [mscorlib]System.String::Concat(string, + string) + IL_0124: stloc.2 + IL_0125: br IL_03ce + + IL_012a: ldloc.2 + IL_012b: ldstr "false" + IL_0130: call string [mscorlib]System.String::Concat(string, + string) + IL_0135: stloc.2 + IL_0136: br IL_03ce + + IL_013b: ldloc.s V_7 + IL_013d: refanyval bool + IL_0142: ldind.i1 + IL_0143: brfalse.s IL_0176 + + IL_0145: ldarg.1 + IL_0146: refanytype + IL_0148: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_014d: ldtoken [mscorlib]System.Int64 + IL_0152: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_0157: beq.s IL_015f + + IL_0159: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_015e: throw + + IL_015f: ldloc.2 + IL_0160: ldarg.1 + IL_0161: refanyval [mscorlib]System.Int64 + IL_0166: call instance string [mscorlib]System.Int64::ToString() + IL_016b: call string [mscorlib]System.String::Concat(string, + string) + IL_0170: stloc.2 + IL_0171: br IL_03ce + + IL_0176: ldarg.1 + IL_0177: refanytype + IL_0179: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_017e: ldtoken [mscorlib]System.Int32 + IL_0183: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_0188: beq.s IL_0190 + + IL_018a: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_018f: throw + + IL_0190: ldloc.2 + IL_0191: ldarg.1 + IL_0192: refanyval [mscorlib]System.Int32 + IL_0197: call instance string [mscorlib]System.Int32::ToString() + IL_019c: call string [mscorlib]System.String::Concat(string, + string) + IL_01a1: stloc.2 + IL_01a2: br IL_03ce + + IL_01a7: ldloc.s V_7 + IL_01a9: refanyval [mscorlib]System.Boolean + IL_01ae: ldind.i1 + IL_01af: brfalse.s IL_01e2 + + IL_01b1: ldarg.1 + IL_01b2: refanytype + IL_01b4: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_01b9: ldtoken [mscorlib]System.UInt64 + IL_01be: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_01c3: beq.s IL_01cb + + IL_01c5: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_01ca: throw + + IL_01cb: ldloc.2 + IL_01cc: ldarg.1 + IL_01cd: refanyval [mscorlib]System.UInt64 + IL_01d2: call instance string [mscorlib]System.UInt64::ToString() + IL_01d7: call string [mscorlib]System.String::Concat(string, + string) + IL_01dc: stloc.2 + IL_01dd: br IL_03ce + + IL_01e2: ldarg.1 + IL_01e3: refanytype + IL_01e5: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_01ea: ldtoken [mscorlib]System.UInt32 + IL_01ef: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_01f4: beq.s IL_01fc + + IL_01f6: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_01fb: throw + + IL_01fc: ldloc.2 + IL_01fd: ldarg.1 + IL_01fe: refanyval [mscorlib]System.UInt32 + IL_0203: call instance string [mscorlib]System.UInt32::ToString() + IL_0208: call string [mscorlib]System.String::Concat(string, + string) + IL_020d: stloc.2 + IL_020e: br IL_03ce + + IL_0213: ldloc.s V_7 + IL_0215: refanyval [mscorlib]System.Boolean + IL_021a: ldind.i1 + IL_021b: brfalse.s IL_024e + + IL_021d: ldarg.1 + IL_021e: refanytype + IL_0220: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_0225: ldtoken [mscorlib]System.Double + IL_022a: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_022f: beq.s IL_0237 + + IL_0231: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_0236: throw + + IL_0237: ldloc.2 + IL_0238: ldarg.1 + IL_0239: refanyval [mscorlib]System.Double + IL_023e: call instance string [mscorlib]System.Double::ToString() + IL_0243: call string [mscorlib]System.String::Concat(string, + string) + IL_0248: stloc.2 + IL_0249: br IL_03ce + + IL_024e: ldarg.1 + IL_024f: refanytype + IL_0251: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_0256: ldtoken [mscorlib]System.Single + IL_025b: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_0260: beq.s IL_0268 + + IL_0262: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_0267: throw + + IL_0268: ldloc.2 + IL_0269: ldarg.1 + IL_026a: refanyval [mscorlib]System.Single + IL_026f: call instance string [mscorlib]System.Single::ToString() + IL_0274: call string [mscorlib]System.String::Concat(string, + string) + IL_0279: stloc.2 + IL_027a: br IL_03ce + + IL_027f: ldloc.s V_7 + IL_0281: refanyval [mscorlib]System.Boolean + IL_0286: ldind.i1 + IL_0287: brfalse.s IL_028f + + IL_0289: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_028e: throw + + IL_028f: ldarg.1 + IL_0290: refanytype + IL_0292: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_0297: ldtoken [mscorlib]System.String + IL_029c: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_02a1: beq.s IL_02a9 + + IL_02a3: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_02a8: throw + + IL_02a9: ldloc.2 + IL_02aa: ldarg.1 + IL_02ab: refanyval [mscorlib]System.String + IL_02b0: ldind.ref + IL_02b1: brtrue.s IL_02ba + + IL_02b3: ldstr "(null)" + IL_02b8: br.s IL_02c1 + + IL_02ba: ldarg.1 + IL_02bb: refanyval [mscorlib]System.String + IL_02c0: ldind.ref + IL_02c1: call string [mscorlib]System.String::Concat(string, + string) + IL_02c6: stloc.2 + IL_02c7: br IL_03ce + + IL_02cc: ldloc.s V_7 + IL_02ce: refanyval [mscorlib]System.Boolean + IL_02d3: ldind.i1 + IL_02d4: brfalse.s IL_02dc + + IL_02d6: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_02db: throw + + IL_02dc: ldarg.1 + IL_02dd: refanytype + IL_02df: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_02e4: ldtoken [mscorlib]System.DateTime + IL_02e9: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_02ee: beq.s IL_02f6 + + IL_02f0: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_02f5: throw + + IL_02f6: ldloc.2 + IL_02f7: ldarg.1 + IL_02f8: refanyval [mscorlib]System.DateTime + IL_02fd: call instance string [mscorlib]System.DateTime::ToString() + IL_0302: call string [mscorlib]System.String::Concat(string, + string) + IL_0307: stloc.2 + IL_0308: br IL_03ce + + IL_030d: ldloc.s V_7 + IL_030f: refanyval [mscorlib]System.Boolean + IL_0314: ldind.i1 + IL_0315: brfalse.s IL_031d + + IL_0317: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_031c: throw + + IL_031d: ldarg.1 + IL_031e: refanytype + IL_0320: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_0325: ldtoken [mscorlib]System.PlatformID + IL_032a: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_032f: beq.s IL_0337 + + IL_0331: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_0336: throw + + IL_0337: ldloc.2 + IL_0338: ldarg.1 + IL_0339: refanyval [mscorlib]System.PlatformID + ldobj [mscorlib]System.PlatformID + IL_033e: box [mscorlib]System.PlatformID + IL_0343: call instance string [mscorlib]System.Enum::ToString() + IL_0348: call string [mscorlib]System.String::Concat(string, + string) + IL_034d: stloc.2 + IL_034e: br.s IL_03ce + + IL_0350: ldloc.s V_7 + IL_0352: refanyval [mscorlib]System.Boolean + IL_0357: ldind.i1 + IL_0358: brfalse.s IL_0360 + + IL_035a: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_035f: throw + + IL_0360: ldarg.1 + IL_0361: refanytype + IL_0363: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_0368: ldtoken JitTest.Mood + IL_036d: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(value class [mscorlib]System.RuntimeTypeHandle) + IL_0372: beq.s IL_037a + + IL_0374: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_0379: throw + + IL_037a: ldarg.1 + IL_037b: refanyval JitTest.Mood + IL_0380: ldind.i4 + IL_0381: stloc.s V_9 + IL_0383: ldloc.s V_9 + IL_0385: switch ( + IL_0398, + IL_03a6, + IL_03b4) + IL_0396: br.s IL_03c2 + + IL_0398: ldloc.2 + IL_0399: ldstr "good" + IL_039e: call string [mscorlib]System.String::Concat(string, + string) + IL_03a3: stloc.2 + IL_03a4: br.s IL_03ce + + IL_03a6: ldloc.2 + IL_03a7: ldstr "bad" + IL_03ac: call string [mscorlib]System.String::Concat(string, + string) + IL_03b1: stloc.2 + IL_03b2: br.s IL_03ce + + IL_03b4: ldloc.2 + IL_03b5: ldstr "worse" + IL_03ba: call string [mscorlib]System.String::Concat(string, + string) + IL_03bf: stloc.2 + IL_03c0: br.s IL_03ce + + IL_03c2: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_03c7: throw + + IL_03c8: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_03cd: throw + + IL_03ce: ldloc.s V_4 + IL_03d0: ldc.i4.1 + IL_03d1: add + IL_03d2: stloc.s V_4 + IL_03d4: ldloc.s V_4 + IL_03d6: ldloc.0 + IL_03d7: blt IL_002a + + IL_03dc: ldloc.2 + IL_03dd: ret + } // end of method TestClass::Format + + .method private hidebysig static void + Test(string format, + typedref arg, + string result) il managed + { + .maxstack 3 + .locals ([0] string V_0, + [1] string[] V_1) + IL_0000: ldarga.s format + IL_0002: mkrefany [mscorlib]System.String + IL_0007: ldarg.1 + IL_0008: call string JitTest.TestClass::Format(typedref, + typedref) + IL_000d: stloc.0 + IL_000e: ldloc.0 + IL_000f: ldarg.2 + IL_0010: call bool [mscorlib]System.String::Equals(string, + string) + IL_0015: brtrue.s IL_004f + + IL_0017: ldc.i4.5 + IL_0018: newarr [mscorlib]System.String + IL_001d: stloc.1 + IL_001e: ldloc.1 + IL_001f: ldc.i4.0 + IL_0020: ldstr "WRONG! expected: '" + IL_0025: stelem.ref + IL_0026: ldloc.1 + IL_0027: ldc.i4.1 + IL_0028: ldarg.2 + IL_0029: stelem.ref + IL_002a: ldloc.1 + IL_002b: ldc.i4.2 + IL_002c: ldstr "', got '" + IL_0031: stelem.ref + IL_0032: ldloc.1 + IL_0033: ldc.i4.3 + IL_0034: ldloc.0 + IL_0035: stelem.ref + IL_0036: ldloc.1 + IL_0037: ldc.i4.4 + IL_0038: ldstr "'" + IL_003d: stelem.ref + IL_003e: ldloc.1 + IL_003f: call string [mscorlib]System.String::Concat(string[]) + IL_0044: call void [System.Console]System.Console::WriteLine(string) + IL_0049: newobj instance void [mscorlib]System.ApplicationException::.ctor() + IL_004e: throw + + IL_004f: ret + } // end of method TestClass::Test + + .method private hidebysig static void + TestLocals() il managed + { + .maxstack 5 + .locals ([0] int32 V_0, + [1] unsigned int32 V_1, + [2] int64 V_2, + [3] unsigned int64 V_3, + [4] float32 V_4, + [5] float64 V_5, + [6] bool V_6, + [7] value class [mscorlib]System.DateTime V_7, + [8] value class [mscorlib]System.PlatformID V_8, + [9] value class JitTest.Mood V_9) + IL_0000: ldc.i4.s 10 + IL_0002: stloc.0 + IL_0003: ldc.i4.s 11 + IL_0005: stloc.1 + IL_0006: ldc.i4.s 12 + IL_0008: conv.i8 + IL_0009: stloc.2 + IL_000a: ldc.i4.s 13 + IL_000c: conv.i8 + IL_000d: stloc.3 + IL_000e: ldc.r4 14. + IL_0013: stloc.s V_4 + IL_0015: ldc.r8 15. + IL_001e: stloc.s V_5 + IL_0020: ldc.i4.1 + IL_0021: stloc.s V_6 + IL_0023: ldloca.s V_7 + IL_0025: ldc.i4.s 100 + IL_0027: ldc.i4.s 10 + IL_0029: ldc.i4.1 + IL_002a: call instance void [mscorlib]System.DateTime::.ctor(int32, + int32, + int32) + IL_002f: ldc.i4.2 + IL_0030: stloc.s V_8 + IL_0032: ldc.i4.0 + IL_0033: stloc.s V_9 + IL_0035: ldstr "{%d}" + IL_003a: ldloca.s V_0 + IL_003c: mkrefany [mscorlib]System.Int32 + IL_0041: ldstr "{10}" + IL_0046: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_004b: ldstr "{%u}" + IL_0050: ldloca.s V_1 + IL_0052: mkrefany [mscorlib]System.UInt32 + IL_0057: ldstr "{11}" + IL_005c: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_0061: ldstr "{%ld}" + IL_0066: ldloca.s V_2 + IL_0068: mkrefany [mscorlib]System.Int64 + IL_006d: ldstr "{12}" + IL_0072: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_0077: ldstr "{%lu}" + IL_007c: ldloca.s V_3 + IL_007e: mkrefany [mscorlib]System.UInt64 + IL_0083: ldstr "{13}" + IL_0088: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_008d: ldstr "{%f}" + IL_0092: ldloca.s V_4 + IL_0094: mkrefany [mscorlib]System.Single + IL_0099: ldstr "{14}" + IL_009e: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_00a3: ldstr "{%lf}" + IL_00a8: ldloca.s V_5 + IL_00aa: mkrefany [mscorlib]System.Double + IL_00af: ldstr "{15}" + IL_00b4: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_00b9: ldstr "{%b}" + IL_00be: ldloca.s V_6 + IL_00c0: mkrefany [mscorlib]System.Boolean + IL_00c5: ldstr "{true}" + IL_00ca: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_00cf: ldstr "{%t}" + IL_00d4: ldloca.s V_7 + IL_00d6: mkrefany [mscorlib]System.DateTime + IL_00db: ldstr "{" + IL_00e0: ldloca.s V_7 + IL_00e2: call instance string [mscorlib]System.DateTime::ToString() + IL_00e7: ldstr "}" + IL_00ec: call string [mscorlib]System.String::Concat(string, + string, + string) + IL_00f1: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_00f6: ldstr "{%p}" + IL_00fb: ldloca.s V_8 + IL_00fd: mkrefany [mscorlib]System.PlatformID + IL_0102: ldstr "{Win32NT}" + IL_0107: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_010c: ldstr "{%e}" + IL_0111: ldloca.s V_9 + IL_0113: mkrefany JitTest.Mood + IL_0118: ldstr "{good}" + IL_011d: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_0122: ret + } // end of method TestClass::TestLocals + + .method private hidebysig instance void + TestFields() il managed + { + .maxstack 5 + IL_0000: ldstr "{%d}" + IL_0005: ldarg.0 + IL_0006: ldflda int32 JitTest.TestClass::m_d + IL_000b: mkrefany [mscorlib]System.Int32 + IL_0010: ldstr "{20}" + IL_0015: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_001a: ldstr "{%u}" + IL_001f: ldsflda unsigned int32 JitTest.TestClass::m_u + IL_0024: mkrefany [mscorlib]System.UInt32 + IL_0029: ldstr "{21}" + IL_002e: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_0033: ldstr "{%ld}" + IL_0038: ldarg.0 + IL_0039: ldflda int64 JitTest.TestClass::m_l + IL_003e: mkrefany [mscorlib]System.Int64 + IL_0043: ldstr "{22}" + IL_0048: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_004d: ldstr "{%lu}" + IL_0052: ldsflda unsigned int64 JitTest.TestClass::m_ul + IL_0057: mkrefany [mscorlib]System.UInt64 + IL_005c: ldstr "{23}" + IL_0061: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_0066: ldstr "{%f}" + IL_006b: ldarg.0 + IL_006c: ldflda float32 JitTest.TestClass::m_f + IL_0071: mkrefany [mscorlib]System.Single + IL_0076: ldstr "{24}" + IL_007b: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_0080: ldstr "{%lf}" + IL_0085: ldarg.0 + IL_0086: ldflda float64 JitTest.TestClass::m_dbl + IL_008b: mkrefany [mscorlib]System.Double + IL_0090: ldstr "{25}" + IL_0095: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_009a: ldstr "{%b}" + IL_009f: ldarg.0 + IL_00a0: ldflda bool JitTest.TestClass::m_b + IL_00a5: mkrefany [mscorlib]System.Boolean + IL_00aa: ldstr "{false}" + IL_00af: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_00b4: ldstr "{%t}" + IL_00b9: ldsflda value class [mscorlib]System.DateTime JitTest.TestClass::m_t + IL_00be: mkrefany [mscorlib]System.DateTime + IL_00c3: ldstr "{" + IL_00c8: ldsflda value class [mscorlib]System.DateTime JitTest.TestClass::m_t + IL_00cd: call instance string [mscorlib]System.DateTime::ToString() + IL_00d2: ldstr "}" + IL_00d7: call string [mscorlib]System.String::Concat(string, + string, + string) + IL_00dc: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_00e1: ldstr "{%p}" + IL_00e6: ldarg.0 + IL_00e7: ldflda value class [mscorlib]System.PlatformID JitTest.TestClass::m_pid + IL_00ec: mkrefany [mscorlib]System.PlatformID + IL_00f1: ldstr "{Win32NT}" + IL_00f6: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_00fb: ldstr "{%e}" + IL_0100: ldarg.0 + IL_0101: ldflda value class JitTest.Mood JitTest.TestClass::m_mood + IL_0106: mkrefany JitTest.Mood + IL_010b: ldstr "{good}" + IL_0110: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_0115: ret + } // end of method TestClass::TestFields + + .method private hidebysig static void + DoTestArgSlots(int32& d, + unsigned int32& u, + int64& l, + unsigned int64& ul, + float32& f, + float64& dbl, + bool& b, + value class [mscorlib]System.DateTime& t, + value class [mscorlib]System.PlatformID& pid) il managed + { + .maxstack 5 + IL_0000: ldstr "{%d}" + IL_0005: ldarg.0 + IL_0006: mkrefany [mscorlib]System.Int32 + IL_000b: ldstr "{20}" + IL_0010: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_0015: ldstr "{%u}" + IL_001a: ldarg.1 + IL_001b: mkrefany [mscorlib]System.UInt32 + IL_0020: ldstr "{21}" + IL_0025: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_002a: ldstr "{%ld}" + IL_002f: ldarg.2 + IL_0030: mkrefany [mscorlib]System.Int64 + IL_0035: ldstr "{22}" + IL_003a: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_003f: ldstr "{%lu}" + IL_0044: ldarg.3 + IL_0045: mkrefany [mscorlib]System.UInt64 + IL_004a: ldstr "{23}" + IL_004f: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_0054: ldstr "{%f}" + IL_0059: ldarg.s f + IL_005b: mkrefany [mscorlib]System.Single + IL_0060: ldstr "{24}" + IL_0065: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_006a: ldstr "{%lf}" + IL_006f: ldarg.s dbl + IL_0071: mkrefany [mscorlib]System.Double + IL_0076: ldstr "{25}" + IL_007b: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_0080: ldstr "{%b}" + IL_0085: ldarg.s b + IL_0087: mkrefany [mscorlib]System.Boolean + IL_008c: ldstr "{false}" + IL_0091: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_0096: ldstr "{%t}" + IL_009b: ldarg.s t + IL_009d: mkrefany [mscorlib]System.DateTime + IL_00a2: ldstr "{" + IL_00a7: ldarg.s t + IL_00a9: call instance string [mscorlib]System.DateTime::ToString() + IL_00ae: ldstr "}" + IL_00b3: call string [mscorlib]System.String::Concat(string, + string, + string) + IL_00b8: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_00bd: ldstr "{%p}" + IL_00c2: ldarg.s pid + IL_00c4: mkrefany [mscorlib]System.PlatformID + IL_00c9: ldstr "{Win32NT}" + IL_00ce: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_00d3: ret + } // end of method TestClass::DoTestArgSlots + + .method private hidebysig static void + TestArgSlots() il managed + { + .maxstack 9 + .locals ([0] int32 V_0, + [1] unsigned int32 V_1, + [2] int64 V_2, + [3] unsigned int64 V_3, + [4] float32 V_4, + [5] float64 V_5, + [6] bool V_6, + [7] value class [mscorlib]System.DateTime V_7, + [8] value class [mscorlib]System.PlatformID V_8) + IL_0000: ldc.i4.s 20 + IL_0002: stloc.0 + IL_0003: ldc.i4.s 21 + IL_0005: stloc.1 + IL_0006: ldc.i4.s 22 + IL_0008: conv.i8 + IL_0009: stloc.2 + IL_000a: ldc.i4.s 23 + IL_000c: conv.i8 + IL_000d: stloc.3 + IL_000e: ldc.r4 24. + IL_0013: stloc.s V_4 + IL_0015: ldc.r8 25. + IL_001e: stloc.s V_5 + IL_0020: ldc.i4.0 + IL_0021: stloc.s V_6 + IL_0023: ldloca.s V_7 + IL_0025: ldc.i4.s 100 + IL_0027: ldc.i4.s 10 + IL_0029: ldc.i4.1 + IL_002a: call instance void [mscorlib]System.DateTime::.ctor(int32, + int32, + int32) + IL_002f: ldc.i4.2 + IL_0030: stloc.s V_8 + IL_0032: ldloca.s V_0 + IL_0034: ldloca.s V_1 + IL_0036: ldloca.s V_2 + IL_0038: ldloca.s V_3 + IL_003a: ldloca.s V_4 + IL_003c: ldloca.s V_5 + IL_003e: ldloca.s V_6 + IL_0040: ldloca.s V_7 + IL_0042: ldloca.s V_8 + IL_0044: call void JitTest.TestClass::DoTestArgSlots(int32&, + unsigned int32&, + int64&, + unsigned int64&, + float32&, + float64&, + bool&, + value class [mscorlib]System.DateTime&, + value class [mscorlib]System.PlatformID&) + IL_0049: ret + } // end of method TestClass::TestArgSlots + + .method private hidebysig static void + TestArrayElem() il managed + { + .maxstack 5 + .locals ([0] int32[] V_0, + [1] unsigned int32[] V_1, + [2] int64[] V_2, + [3] unsigned int64[] V_3, + [4] float32[] V_4, + [5] float64[] V_5, + [6] bool[] V_6, + [7] value class [mscorlib]System.DateTime[] V_7, + [8] value class [mscorlib]System.PlatformID[] V_8, + [9] value class JitTest.Mood[] V_9, + [10] int32[] V_10, + [11] unsigned int32[] V_11, + [12] int64[] V_12, + [13] unsigned int64[] V_13, + [14] float32[] V_14, + [15] float64[] V_15, + [16] bool[] V_16, + [17] value class [mscorlib]System.PlatformID[] V_17, + [18] value class JitTest.Mood[] V_18) + IL_0000: ldc.i4.1 + IL_0001: newarr [mscorlib]System.Int32 + IL_0006: stloc.s V_10 + IL_0008: ldloc.s V_10 + IL_000a: ldc.i4.0 + IL_000b: ldc.i4.s 10 + IL_000d: stelem.i4 + IL_000e: ldloc.s V_10 + IL_0010: stloc.0 + IL_0011: ldc.i4.1 + IL_0012: newarr [mscorlib]System.UInt32 + IL_0017: stloc.s V_11 + IL_0019: ldloc.s V_11 + IL_001b: ldc.i4.0 + IL_001c: ldc.i4.s 11 + IL_001e: stelem.i4 + IL_001f: ldloc.s V_11 + IL_0021: stloc.1 + IL_0022: ldc.i4.1 + IL_0023: newarr [mscorlib]System.Int64 + IL_0028: stloc.s V_12 + IL_002a: ldloc.s V_12 + IL_002c: ldc.i4.0 + IL_002d: ldc.i4.s 12 + IL_002f: conv.i8 + IL_0030: stelem.i8 + IL_0031: ldloc.s V_12 + IL_0033: stloc.2 + IL_0034: ldc.i4.1 + IL_0035: newarr [mscorlib]System.UInt64 + IL_003a: stloc.s V_13 + IL_003c: ldloc.s V_13 + IL_003e: ldc.i4.0 + IL_003f: ldc.i4.s 13 + IL_0041: conv.i8 + IL_0042: stelem.i8 + IL_0043: ldloc.s V_13 + IL_0045: stloc.3 + IL_0046: ldc.i4.1 + IL_0047: newarr [mscorlib]System.Single + IL_004c: stloc.s V_14 + IL_004e: ldloc.s V_14 + IL_0050: ldc.i4.0 + IL_0051: ldc.r4 14. + IL_0056: stelem.r4 + IL_0057: ldloc.s V_14 + IL_0059: stloc.s V_4 + IL_005b: ldc.i4.1 + IL_005c: newarr [mscorlib]System.Double + IL_0061: stloc.s V_15 + IL_0063: ldloc.s V_15 + IL_0065: ldc.i4.0 + IL_0066: ldc.r8 15. + IL_006f: stelem.r8 + IL_0070: ldloc.s V_15 + IL_0072: stloc.s V_5 + IL_0074: ldc.i4.1 + IL_0075: newarr [mscorlib]System.Boolean + IL_007a: stloc.s V_16 + IL_007c: ldloc.s V_16 + IL_007e: ldc.i4.0 + IL_007f: ldc.i4.1 + IL_0080: stelem.i1 + IL_0081: ldloc.s V_16 + IL_0083: stloc.s V_6 + IL_0085: ldc.i4 0xc8 + IL_008a: newarr [mscorlib]System.DateTime + IL_008f: stloc.s V_7 + IL_0091: ldloc.s V_7 + IL_0093: ldc.i4.1 + IL_0094: ldelema [mscorlib]System.DateTime + IL_0099: ldc.i4.s 100 + IL_009b: ldc.i4.s 10 + IL_009d: ldc.i4.1 + IL_009e: call instance void [mscorlib]System.DateTime::.ctor(int32, + int32, + int32) + IL_00a3: ldc.i4.1 + IL_00a4: newarr [mscorlib]System.PlatformID + IL_00a9: stloc.s V_17 + IL_00ab: ldloc.s V_17 + IL_00ad: ldc.i4.0 + IL_00ae: ldc.i4.2 + IL_00af: stelem.i4 + IL_00b0: ldloc.s V_17 + IL_00b2: stloc.s V_8 + IL_00b4: ldc.i4.1 + IL_00b5: newarr JitTest.Mood + IL_00ba: stloc.s V_18 + IL_00bc: ldloc.s V_18 + IL_00be: stloc.s V_9 + IL_00c0: ldstr "{%d}" + IL_00c5: ldloc.0 + IL_00c6: ldc.i4.0 + IL_00c7: ldelema [mscorlib]System.Int32 + IL_00cc: mkrefany [mscorlib]System.Int32 + IL_00d1: ldstr "{10}" + IL_00d6: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_00db: ldstr "{%u}" + IL_00e0: ldloc.1 + IL_00e1: ldc.i4.0 + IL_00e2: ldelema [mscorlib]System.UInt32 + IL_00e7: mkrefany [mscorlib]System.UInt32 + IL_00ec: ldstr "{11}" + IL_00f1: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_00f6: ldstr "{%ld}" + IL_00fb: ldloc.2 + IL_00fc: ldc.i4.0 + IL_00fd: ldelema [mscorlib]System.Int64 + IL_0102: mkrefany [mscorlib]System.Int64 + IL_0107: ldstr "{12}" + IL_010c: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_0111: ldstr "{%lu}" + IL_0116: ldloc.3 + IL_0117: ldc.i4.0 + IL_0118: ldelema [mscorlib]System.UInt64 + IL_011d: mkrefany [mscorlib]System.UInt64 + IL_0122: ldstr "{13}" + IL_0127: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_012c: ldstr "{%f}" + IL_0131: ldloc.s V_4 + IL_0133: ldc.i4.0 + IL_0134: ldelema [mscorlib]System.Single + IL_0139: mkrefany [mscorlib]System.Single + IL_013e: ldstr "{14}" + IL_0143: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_0148: ldstr "{%lf}" + IL_014d: ldloc.s V_5 + IL_014f: ldc.i4.0 + IL_0150: ldelema [mscorlib]System.Double + IL_0155: mkrefany [mscorlib]System.Double + IL_015a: ldstr "{15}" + IL_015f: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_0164: ldstr "{%b}" + IL_0169: ldloc.s V_6 + IL_016b: ldc.i4.0 + IL_016c: ldelema [mscorlib]System.Boolean + IL_0171: mkrefany [mscorlib]System.Boolean + IL_0176: ldstr "{true}" + IL_017b: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_0180: ldstr "{%t}" + IL_0185: ldloc.s V_7 + IL_0187: ldc.i4.1 + IL_0188: ldelema [mscorlib]System.DateTime + IL_018d: mkrefany [mscorlib]System.DateTime + IL_0192: ldstr "{" + IL_0197: ldloc.s V_7 + IL_0199: ldc.i4.1 + IL_019a: ldelema [mscorlib]System.DateTime + IL_019f: call instance string [mscorlib]System.DateTime::ToString() + IL_01a4: ldstr "}" + IL_01a9: call string [mscorlib]System.String::Concat(string, + string, + string) + IL_01ae: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_01b3: ldstr "{%p}" + IL_01b8: ldloc.s V_8 + IL_01ba: ldc.i4.0 + IL_01bb: ldelema [mscorlib]System.PlatformID + IL_01c0: mkrefany [mscorlib]System.PlatformID + IL_01c5: ldstr "{Win32NT}" + IL_01ca: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_01cf: ldstr "{%e}" + IL_01d4: ldloc.s V_9 + IL_01d6: ldc.i4.0 + IL_01d7: ldelema JitTest.Mood + IL_01dc: mkrefany JitTest.Mood + IL_01e1: ldstr "{good}" + IL_01e6: call void JitTest.TestClass::Test(string, + typedref, + string) + IL_01eb: ret + } // end of method TestClass::TestArrayElem + + .method private hidebysig static int32 + Main() il managed + { + .entrypoint + .maxstack 8 + IL_0000: call void JitTest.TestClass::TestLocals() + IL_0005: newobj instance void JitTest.TestClass::.ctor() + IL_000a: call instance void JitTest.TestClass::TestFields() + IL_000f: call void JitTest.TestClass::TestArrayElem() + IL_0014: ldstr "*** passed ***" + IL_0019: call void [System.Console]System.Console::WriteLine(string) + IL_001e: ldc.i4 100 + IL_001f: ret + } // end of method TestClass::Main + + .method public hidebysig specialname rtspecialname static + void .cctor() il managed + { + .maxstack 8 + IL_0000: ldc.i4.s 21 + IL_0002: stsfld unsigned int32 JitTest.TestClass::m_u + IL_0007: ldc.i4.s 23 + IL_0009: conv.i8 + IL_000a: stsfld unsigned int64 JitTest.TestClass::m_ul + IL_000f: ldsflda value class [mscorlib]System.DateTime JitTest.TestClass::m_t + IL_0014: ldc.i4.s 100 + IL_0016: ldc.i4.s 10 + IL_0018: ldc.i4.1 + IL_0019: call instance void [mscorlib]System.DateTime::.ctor(int32, + int32, + int32) + IL_001e: ret + } // end of method TestClass::.cctor + + .method public hidebysig specialname rtspecialname + instance void .ctor() il managed + { + .maxstack 2 + IL_0000: ldarg.0 + IL_0001: ldc.i4.s 20 + IL_0003: stfld int32 JitTest.TestClass::m_d + IL_0008: ldarg.0 + IL_0009: ldc.i4.s 22 + IL_000b: conv.i8 + IL_000c: stfld int64 JitTest.TestClass::m_l + IL_0011: ldarg.0 + IL_0012: ldc.r4 24. + IL_0017: stfld float32 JitTest.TestClass::m_f + IL_001c: ldarg.0 + IL_001d: ldc.r8 25. + IL_0026: stfld float64 JitTest.TestClass::m_dbl + IL_002b: ldarg.0 + IL_002c: ldc.i4.0 + IL_002d: stfld bool JitTest.TestClass::m_b + IL_0032: ldarg.0 + IL_0033: ldc.i4.2 + IL_0034: stfld value class [mscorlib]System.PlatformID JitTest.TestClass::m_pid + IL_0039: ldarg.0 + IL_003a: ldc.i4.0 + IL_003b: stfld value class JitTest.Mood JitTest.TestClass::m_mood + IL_0040: ldarg.0 + IL_0041: call instance void [mscorlib]System.Object::.ctor() + IL_0046: ret + } // end of method TestClass::.ctor + + } // end of class TestClass + +} // end of namespace JitTest + |