Commit 100c577
committed
Fix preprocessor cache mode with distributed builds
...and disable the workaround that disabled the former in case of
the latter.
Under the following conditions:
- Build with preprocessor cache mode enabled
- Distributed build
- Preprocessor cache hit
- Main cache miss
the compile that was run as "fallback" after the cache miss did
not have preprocessed sources passed to it since skipping the
preprocessing step is the whole point of preprocessor cache mode.
But local preprocessing is what enables distributed compilation.
To fix this, when the problem occurs, recursively re-invoke
get_cached_or_compile() with ForceRecache(*) so that the
preprocessor cache hit is (mostly) ignored, which makes
get_cached_or_compile() invoke the local preprocessing codepath,
which yields code suitable for distributed compilation.
(*) which also prevents further recursion1 parent fa0e46d commit 100c577
2 files changed
Lines changed: 42 additions & 4 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
401 | 401 | | |
402 | 402 | | |
403 | 403 | | |
404 | | - | |
405 | | - | |
| 404 | + | |
| 405 | + | |
406 | 406 | | |
407 | 407 | | |
408 | 408 | | |
| |||
429 | 429 | | |
430 | 430 | | |
431 | 431 | | |
432 | | - | |
433 | 432 | | |
434 | 433 | | |
435 | 434 | | |
| |||
492 | 491 | | |
493 | 492 | | |
494 | 493 | | |
495 | | - | |
| 494 | + | |
496 | 495 | | |
497 | 496 | | |
498 | 497 | | |
| |||
1143 | 1142 | | |
1144 | 1143 | | |
1145 | 1144 | | |
| 1145 | + | |
| 1146 | + | |
| 1147 | + | |
| 1148 | + | |
| 1149 | + | |
| 1150 | + | |
1146 | 1151 | | |
1147 | 1152 | | |
1148 | 1153 | | |
| |||
1194 | 1199 | | |
1195 | 1200 | | |
1196 | 1201 | | |
| 1202 | + | |
| 1203 | + | |
| 1204 | + | |
| 1205 | + | |
| 1206 | + | |
1197 | 1207 | | |
1198 | 1208 | | |
1199 | 1209 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
567 | 567 | | |
568 | 568 | | |
569 | 569 | | |
| 570 | + | |
| 571 | + | |
| 572 | + | |
| 573 | + | |
| 574 | + | |
| 575 | + | |
| 576 | + | |
| 577 | + | |
| 578 | + | |
| 579 | + | |
| 580 | + | |
| 581 | + | |
| 582 | + | |
| 583 | + | |
| 584 | + | |
| 585 | + | |
| 586 | + | |
| 587 | + | |
| 588 | + | |
| 589 | + | |
| 590 | + | |
| 591 | + | |
| 592 | + | |
570 | 593 | | |
571 | 594 | | |
572 | 595 | | |
| |||
932 | 955 | | |
933 | 956 | | |
934 | 957 | | |
| 958 | + | |
| 959 | + | |
| 960 | + | |
| 961 | + | |
| 962 | + | |
935 | 963 | | |
936 | 964 | | |
937 | 965 | | |
| |||
0 commit comments