Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Re-enable arm64 ngen #3931

Merged
merged 2 commits into from
Aug 17, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
2 changes: 1 addition & 1 deletion scripts/build/TestPlatform.Dependencies.props
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<VSSdkBuildToolsVersion>17.1.4054</VSSdkBuildToolsVersion>
<VSSdkBuildToolsVersion>17.4.1070-preview2</VSSdkBuildToolsVersion>

<!-- Name of the elements must be in sync with test\Microsoft.TestPlatform.TestUtilities\IntegrationTestBase.cs -->

Expand Down
11 changes: 5 additions & 6 deletions src/package/VSIXProject/TestPlatform.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -252,12 +252,11 @@
<VsixSourceItem Update="$(VsixInputFileLocation)\testhost.net472.x86.exe" Ngen="true" NgenArchitecture="X86" NgenPriority="2" NgenApplication="$(ExtensionInstallationRelativeToVS)\testhost.net472.x86.exe" />
<VsixSourceItem Update="$(VsixInputFileLocation)\testhost.net48.x86.exe" Ngen="true" NgenArchitecture="X86" NgenPriority="2" NgenApplication="$(ExtensionInstallationRelativeToVS)\testhost.net48.x86.exe" />

<!-- Arm64 is not yet supported by VsixUtil.exe and it will generate a wrong manifest. We disable temporary the ngen to avoid to enqueue arm64 binaries in the wrong architecture polluting logs with errors.-->
<VsixSourceItem Update="$(VsixInputFileLocation)\testhost.arm64.exe" Ngen="false" NgenArchitecture="Arm64" NgenPriority="2" NgenApplication="$(ExtensionInstallationRelativeToVS)\testhost.arm64.exe" />
<VsixSourceItem Update="$(VsixInputFileLocation)\testhost.net47.arm64.exe" Ngen="false" NgenArchitecture="Arm64" NgenPriority="2" NgenApplication="$(ExtensionInstallationRelativeToVS)\testhost.net47.arm64.exe" />
<VsixSourceItem Update="$(VsixInputFileLocation)\testhost.net471.arm64.exe" Ngen="false" NgenArchitecture="Arm64" NgenPriority="2" NgenApplication="$(ExtensionInstallationRelativeToVS)\testhost.net471.arm64.exe" />
<VsixSourceItem Update="$(VsixInputFileLocation)\testhost.net472.arm64.exe" Ngen="false" NgenArchitecture="Arm64" NgenPriority="2" NgenApplication="$(ExtensionInstallationRelativeToVS)\testhost.net472.arm64.exe" />
<VsixSourceItem Update="$(VsixInputFileLocation)\testhost.net48.arm64.exe" Ngen="false" NgenArchitecture="Arm64" NgenPriority="2" NgenApplication="$(ExtensionInstallationRelativeToVS)\testhost.net48.arm64.exe" />
<VsixSourceItem Update="$(VsixInputFileLocation)\testhost.arm64.exe" Ngen="true" NgenArchitecture="Arm64" NgenPriority="2" NgenApplication="$(ExtensionInstallationRelativeToVS)\testhost.arm64.exe" />
<VsixSourceItem Update="$(VsixInputFileLocation)\testhost.net47.arm64.exe" Ngen="true" NgenArchitecture="Arm64" NgenPriority="2" NgenApplication="$(ExtensionInstallationRelativeToVS)\testhost.net47.arm64.exe" />
<VsixSourceItem Update="$(VsixInputFileLocation)\testhost.net471.arm64.exe" Ngen="true" NgenArchitecture="Arm64" NgenPriority="2" NgenApplication="$(ExtensionInstallationRelativeToVS)\testhost.net471.arm64.exe" />
<VsixSourceItem Update="$(VsixInputFileLocation)\testhost.net472.arm64.exe" Ngen="true" NgenArchitecture="Arm64" NgenPriority="2" NgenApplication="$(ExtensionInstallationRelativeToVS)\testhost.net472.arm64.exe" />
<VsixSourceItem Update="$(VsixInputFileLocation)\testhost.net48.arm64.exe" Ngen="true" NgenArchitecture="Arm64" NgenPriority="2" NgenApplication="$(ExtensionInstallationRelativeToVS)\testhost.net48.arm64.exe" />
Copy link
Member

@davkean davkean Aug 18, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As a matter of interest why do you have architecture + target framework versions of your test host?

I would consider targeting the lowest version and then setting the https://docs.microsoft.com/en-us/dotnet/api/system.appdomainsetup.targetframeworkname?view=net-6.0 property when setting up the AppDomain to the user's target to enable quirks for those tests.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I suppose historical reason(on how the host is located today) but maybe @nohwnd has got better reason.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reason is that I did not know you can do it this way when I added the additional testhosts, and no-one suggested it before we do it this way.

</ItemGroup>
<ItemGroup>
<Content Include="License.rtf">
Expand Down