Skip to content

Commit 8865b4f

Browse files
authored
gh-134923: Use /GENPROFILE and /USEPROFILE for Windows PGO builds (GH-134924)
1 parent 310c8cd commit 8865b4f

File tree

3 files changed

+8
-7
lines changed

3 files changed

+8
-7
lines changed
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
Windows builds with profile-guided optimization enabled now use
2+
``/GENPROFILE`` and ``/USEPROFILE`` instead of deprecated ``/LTCG:``
3+
options.

PCbuild/_testclinic_limited.vcxproj

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,7 @@
7070
<ProjectGuid>{01FDF29A-40A1-46DF-84F5-85EBBD2A2410}</ProjectGuid>
7171
<RootNamespace>_testclinic_limited</RootNamespace>
7272
<Keyword>Win32Proj</Keyword>
73+
<SupportPGO>false</SupportPGO>
7374
</PropertyGroup>
7475
<Import Project="python.props" />
7576
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />

PCbuild/pyproject.props

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -96,19 +96,16 @@
9696
<TargetMachine Condition="'$(Platform)' == 'x64'">MachineX64</TargetMachine>
9797
<TargetMachine Condition="'$(Platform)'=='ARM'">MachineARM</TargetMachine>
9898
<TargetMachine Condition="'$(Platform)'=='ARM64'">MachineARM64</TargetMachine>
99-
<ProfileGuidedDatabase Condition="$(SupportPGO)">$(OutDir)$(TargetName).pgd</ProfileGuidedDatabase>
100-
<LinkTimeCodeGeneration Condition="$(Configuration) == 'Release'">UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
101-
<LinkTimeCodeGeneration Condition="$(SupportPGO) and $(Configuration) == 'PGInstrument'">PGInstrument</LinkTimeCodeGeneration>
102-
<LinkTimeCodeGeneration Condition="$(SupportPGO) and $(Configuration) == 'PGUpdate'">PGUpdate</LinkTimeCodeGeneration>
99+
<LinkTimeCodeGeneration Condition="$(Configuration) != 'Debug'">UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
103100
<AdditionalDependencies>advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;%(AdditionalDependencies)</AdditionalDependencies>
104101
<AdditionalOptions Condition="$(Configuration) != 'Debug'">/OPT:REF,NOICF %(AdditionalOptions)</AdditionalOptions>
105102
<AdditionalOptions Condition="$(MSVCHasBrokenARM64Clamping) == 'true' and $(Platform) == 'ARM64'">-d2:-pattern-opt-disable:-932189325 %(AdditionalOptions)</AdditionalOptions>
103+
<AdditionalOptions Condition="$(SupportPGO) and $(Configuration) == 'PGInstrument'">/GENPROFILE %(AdditionalOptions)</AdditionalOptions>
104+
<AdditionalOptions Condition="$(SupportPGO) and $(Configuration) == 'PGUpdate'">/USEPROFILE %(AdditionalOptions)</AdditionalOptions>
106105
</Link>
107106
<Lib>
108107
<LinkTimeCodeGeneration>false</LinkTimeCodeGeneration>
109-
<LinkTimeCodeGeneration Condition="$(Configuration) == 'Release'">true</LinkTimeCodeGeneration>
110-
<LinkTimeCodeGeneration Condition="$(SupportPGO) and $(Configuration) == 'PGInstrument'">true</LinkTimeCodeGeneration>
111-
<LinkTimeCodeGeneration Condition="$(SupportPGO) and $(Configuration) == 'PGUpdate'">true</LinkTimeCodeGeneration>
108+
<LinkTimeCodeGeneration Condition="$(Configuration) != 'Debug'">true</LinkTimeCodeGeneration>
112109
</Lib>
113110
<ResourceCompile>
114111
<AdditionalIncludeDirectories>$(PySourcePath)PC;$(PySourcePath)Include;$(IntDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

0 commit comments

Comments
 (0)