|
31 | 31 | <!-- Taken from _Target._compute_digest in Tools\jit\_targets.py: -->
|
32 | 32 | <_JITSources Include="$(PySourcePath)Python\executor_cases.c.h;$(GeneratedPyConfigDir)pyconfig.h;$(PySourcePath)Tools\jit\**"/>
|
33 | 33 | <_JITOutputs Include="$(GeneratedPyConfigDir)jit_stencils.h"/>
|
| 34 | + <_CasesSources Include="$(PySourcePath)Python\bytecodes.c;$(PySourcePath)Python\tier2_redundancy_eliminator_bytecodes.c;"/> |
| 35 | + <_CasesOutputs Include="$(PySourcePath)Python\generated_cases.c.h;$(PySourcePath)Include\opcode_ids.h;$(PySourcePath)Include\internal\pycore_uop_ids.h;$(PySourcePath)Python\opcode_targets.h;$(PySourcePath)Include\internal\pycore_opcode_metadata.h;$(PySourcePath)Include\internal\pycore_uop_metadata.h;$(PySourcePath)Python\tier2_redundancy_eliminator_cases.c.h;$(PySourcePath)Lib\_opcode_metadata.py"/> |
34 | 36 | </ItemGroup>
|
35 | 37 |
|
36 | 38 | <Target Name="_TouchRegenSources" Condition="$(ForceRegen) == 'true'">
|
37 | 39 | <Message Text="Touching source files to force regeneration" Importance="high" />
|
38 |
| - <Touch Files="@(_PegenSources);@(_ASTSources);@(_TokenSources);@(_KeywordOutputs)" |
| 40 | + <Touch Files="@(_PegenSources);@(_ASTSources);@(_TokenSources);@(_KeywordOutputs);@(_CasesSources)" |
39 | 41 | AlwaysCreate="False" />
|
40 | 42 | </Target>
|
41 | 43 |
|
|
79 | 81 | <Exec Command="$(PythonForBuild) Tools\build\generate_global_objects.py"
|
80 | 82 | WorkingDirectory="$(PySourcePath)" />
|
81 | 83 | </Target>
|
82 |
| - |
| 84 | + |
| 85 | + <Target Name="_RegenCases" |
| 86 | + Inputs="@(_CasesSources)"
10652
span> Outputs="@(_CasesOutputs)" |
| 87 | + DependsOnTargets="FindPythonForBuild"> |
| 88 | + <Message Text="Regenerate cases" Importance="high" /> |
| 89 | + <Exec Command="$(PythonForBuild) $(PySourcePath)Tools\cases_generator\opcode_id_generator.py $(PySourcePath)Python\bytecodes.c" |
| 90 | + WorkingDirectory="$(PySourcePath)" /> |
| 91 | + <Exec Command="$(PythonForBuild) $(PySourcePath)Tools\cases_generator\target_generator.py $(PySourcePath)Python\bytecodes.c" |
| 92 | + WorkingDirectory="$(PySourcePath)" /> |
| 93 | + <Exec Command="$(PythonForBuild) $(PySourcePath)Tools\cases_generator\uop_id_generator.py $(PySourcePath)Python\bytecodes.c" |
| 94 | + WorkingDirectory="$(PySourcePath)" /> |
| 95 | + <Exec Command="$(PythonForBuild) $(PySourcePath)Tools\cases_generator\py_metadata_generator.py $(PySourcePath)Python\bytecodes.c" |
| 96 | + WorkingDirectory="$(PySourcePath)" /> |
| 97 | + <Exec Command="$(PythonForBuild) $(PySourcePath)Tools\cases_generator\tier1_generator.py $(PySourcePath)Python\bytecodes.c" |
| 98 | + WorkingDirectory="$(PySourcePath)" /> |
| 99 | + <Exec Command="$(PythonForBuild) $(PySourcePath)Tools\cases_generator\tier2_generator.py $(PySourcePath)Python\bytecodes.c" |
| 100 | + WorkingDirectory="$(PySourcePath)" /> |
| 101 | + <Exec Command="$(PythonForBuild) $(PySourcePath)Tools\cases_generator\tier2_abstract_generator.py $(PySourcePath)Python\tier2_redundancy_eliminator_bytecodes.c $(PySourcePath)Python\bytecodes.c" |
| 102 | + WorkingDirectory="$(PySourcePath)" /> |
| 103 | + <Exec Command="$(PythonForBuild) $(PySourcePath)Tools\cases_generator\opcode_metadata_generator.py $(PySourcePath)Python\bytecodes.c" |
| 104 | + WorkingDirectory="$(PySourcePath)" /> |
| 105 | + <Exec Command="$(PythonForBuild) $(PySourcePath)Tools\cases_generator\uop_metadata_generator.py $(PySourcePath)Python\bytecodes.c" |
| 106 | + WorkingDirectory="$(PySourcePath)" /> |
| 107 | + </Target> |
| 108 | + |
83 | 109 | <Target Name="_RegenJIT"
|
84 | 110 | Condition="'$(UseJIT)' == 'true'"
|
85 | 111 | DependsOnTargets="_UpdatePyconfig;FindPythonForBuild"
|
|
100 | 126 | DependsOnTargets="_TouchRegenSources;_RegenPegen;_RegenAST_H;_RegenTokens;_RegenKeywords;_RegenGlobalObjects">
|
101 | 127 | </Target>
|
102 | 128 |
|
103 |
| - <Target Name="Regen" DependsOnTargets="_RegenNoPGUpdate;_RegenJIT"> |
| 129 | + <Target Name="Regen" DependsOnTargets="_RegenNoPGUpdate;_RegenJIT;_RegenCases"> |
104 | 130 | <Message Text="Generated sources are up to date" Importance="high" />
|
105 | 131 | </Target>
|
106 | 132 |
|
|
0 commit comments