Files
Josh Lospinoso bcf7a27322 feat(arm): add Windows-on-Arm parity smoke
Add ARM64 and ARM64EC Gargoyle demos, hosted Windows-on-Arm smoke validation, and platform-aware acceptance coverage.

Repair the timer/APC proof so re-entry is demonstrated through alertable SleepEx APC delivery instead of timer handle signaled-state progress, and mark ARM64EC dynamic PIC reservations as EC code.

Closes #22.
2026-05-14 10:16:08 -10:00

72 lines
3.4 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|ARM64EC">
<Configuration>Debug</Configuration>
<Platform>ARM64EC</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|ARM64EC">
<Configuration>Release</Configuration>
<Platform>ARM64EC</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{534AA03E-0AB4-49A3-867A-95EF7FE3D591}</ProjectGuid>
<Keyword>Win32Proj</Keyword>
<RootNamespace>GargoyleArm64EC</RootNamespace>
<WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<Import Project="..\build\Gargoyle.Configuration.props" />
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<Import Project="..\build\Gargoyle.Cpp.props" />
<PropertyGroup>
<OutDir Condition="'$(OutDir)'==''">$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
<IntDir Condition="'$(IntDir)'==''">$(Platform)\$(Configuration)\$(ProjectName)\</IntDir>
<OutputPath Condition="'$(OutputPath)'==''">$(OutDir)</OutputPath>
</PropertyGroup>
<ImportGroup Label="ExtensionSettings" />
<ImportGroup Label="Shared" />
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64EC'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|ARM64EC'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64EC'">
<ClCompile>
<PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
<Link>
<AdditionalDependencies>kernel32.lib;user32.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64EC'">
<ClCompile>
<PreprocessorDefinitions>NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
<Link>
<AdditionalDependencies>kernel32.lib;user32.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="main_arm64ec.cpp" />
</ItemGroup>
<ItemGroup>
<ArmPic Include="setup_arm64ec.asm">
<ArmAsmOptions>-machine ARM64EC</ArmAsmOptions>
<OutputFileName>setup_arm64ec.pic</OutputFileName>
<SectionName>.text</SectionName>
</ArmPic>
<ArmPic Include="reentry_arm64ec.asm">
<ArmAsmOptions>-machine ARM64EC</ArmAsmOptions>
<OutputFileName>reentry_arm64ec.pic</OutputFileName>
<SectionName>.text</SectionName>
</ArmPic>
</ItemGroup>
<Import Project="..\build\ArmPic.targets" />
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets" />
</Project>