Commit Graph

190 Commits

Author SHA1 Message Date
David Ungar 65267c6568 WIP 2018-03-09 15:45:38 -08:00
David Ungar adfda9bbc8 Add -driver-force-one-batch-repartition and enhance batch_mode-overlong_argv test. 2018-03-09 13:54:44 -08:00
David Ungar 798dd7b490 Write out filemaps for supplementary outputs. 2018-03-09 13:54:44 -08:00
Graydon Hoare fa830fe5aa [BatchMode] Preserve invariant that shuffled batches are subsequences of inputs. 2018-03-09 10:13:04 -08:00
Sho Ikeda cea6c03eb2 [gardening] Use !empty() over size() > 0 2018-03-08 09:21:09 +09:00
David Ungar 90d2740817 Merge pull request #14961 from davidungar/PR-18-10-HHH
[Batch mode] Restore -### functionality for batch-mode by extending OutputLevel.
2018-03-06 09:54:03 -08:00
Graydon Hoare 6c9029ead8 [BatchMode] Fix rdar://38123690 a little more robustly. 2018-03-05 13:43:30 -08:00
Graydon Hoare eb315e74ed [BatchMode] Temporarily cap max batch size, fixing rdar://38123690 2018-03-05 12:28:48 -08:00
Graydon Hoare 899c1f5b87 [Driver] Handle failure-to-exec somewhat more politely, rdar://37865437. 2018-03-05 12:28:48 -08:00
David Ungar 17a81f6981 Restore -### functionality for batch-mode by extending OutputLevel. 2018-03-05 11:07:20 -08:00
Graydon Hoare 7981714214 [BatchMode] Make driver report exits per-batch, not per-constituent. 2018-03-02 00:32:30 -08:00
Graydon Hoare 263c4c54d5 [BatchMode] Preserve intra-batch order, add a seed mode. 2018-02-20 18:31:41 -08:00
Graydon Hoare 57fe9ee57a [BatchMode] Add driver::PerformJobsState logic for BatchJobs. 2018-02-15 15:38:09 -08:00
Graydon Hoare 3d9ce0afb9 [BatchMode] Store -{enable,disable}-batch-mode as a flag in Compilation. 2018-02-15 15:38:09 -08:00
Graydon Hoare a2c718777d [BatchMode] Pass OutputInfo to Compilation on construction. 2018-02-15 15:38:08 -08:00
Graydon Hoare ef61f721d4 [BatchMode] Change all CommandOutputs to use a shared OutputFileMap. 2018-02-09 14:08:50 -08:00
Graydon Hoare d139ab2968 [BatchMode] Expand lifetime of ToolChain, pass reference to it to Compilation. 2018-01-24 10:31:19 -08:00
Graydon Hoare d74c1a512a [BatchMode] Make InvocationInfo and Job support multiple FilelistInfos, NFC. 2018-01-19 15:15:08 -08:00
Graydon Hoare 22775c87a9 [BatchMode] Add FilelistInfo::WhichFiles::PrimaryInputs, NFC. 2018-01-19 14:16:20 -08:00
Graydon Hoare 0f09a95679 [BatchMode] Change FiellistInfo::WhichFiles to an enum class, NFC. 2018-01-19 14:05:42 -08:00
Graydon Hoare 173e702da2 [Stats] Add a pair of counters to track failed processes. 2017-11-08 19:53:36 -08:00
Jordan Rose 47872d9190 [Driver] Transfer all ownership of Actions to the Compilation.
Previously, Actions were responsible for freeing their inputs...
except for the ones that weren't. Or the ones that were supposed
to, but then they needed to share an input, so they couldn't anymore.
If this sounds ridiculous, you're right; now Actions are just
immediately allocated and owned by the Compilation.

The graph structure of the actions is still useful for some things; in
particular, "top-level" actions get to put their outputs somewhere
permanent rather than TMPDIR. But I expect these things to get cleaned
up in the future too.
2017-08-11 21:09:34 -07:00
Jordan Rose 64df9b1edc [Driver] Actually free Actions instead of just leaking them.
Fixes rdar://problem/32518867, though in a fairly messy way. Next
commit will clean this up again.
2017-08-11 21:09:34 -07:00
Jordan Rose a875d8c7c7 [Driver] Preserve filelists when a subprocess crashes. (#9849)
This should make it easier to rerun crashed jobs that use filelists;
previously you'd have to run the top-level driver command again with
-save-temps. I didn't want to save /all/ temporary files because that
often includes things like .o files, which could fill up your disk
pretty quickly. But we can always tweak this later.
2017-05-22 17:14:20 -07:00
practicalswift 431e5a1440 [gardening] Use consistent end of namespace comments 2017-04-20 13:47:10 +02:00
Graydon Hoare 0245c83c4b [Stats] Add -stats-output-dir, wire UnifiedStatsReporter into place. 2017-04-03 18:08:59 -07:00
Graydon Hoare 1c3a54bfa5 [Driver] Only warn on .swiftdeps load-fail with -driver-show-incremental. 2017-03-01 09:07:21 -08:00
Graydon Hoare ec5d4f3ea1 [Driver] Put new job-lifecycle diagnostic chatter behind another option. 2017-03-01 09:07:21 -08:00
Graydon Hoare 99df2082cd [Driver] Clear deferred commands on each task queue iteration. 2017-03-01 09:07:20 -08:00
Graydon Hoare 4583e910b8 [Driver] Extract dependencyLoadFailed, add optional warning. 2017-02-28 15:17:26 -08:00
Graydon Hoare 423d9fe054 [Driver] Extract reloadAndRemarkDeps from taskFinished. 2017-02-28 15:17:26 -08:00
Graydon Hoare ab5201f60e [Driver] Make PerformJobsState a mostly-private class. 2017-02-28 15:17:26 -08:00
Graydon Hoare 211d09759c [Driver] Move populateInputInfoMap into PerformJobsState. 2017-02-28 15:17:25 -08:00
Graydon Hoare 9d0e7e0e99 [Driver] Factor out PerformJobsState::checkUnfinishedJobs. 2017-02-28 15:17:25 -08:00
Graydon Hoare f83ee9fd2f [Driver] Factor out PerformJobsState::runTaskQueueToCompletion. 2017-02-28 15:17:25 -08:00
Graydon Hoare 1b3a4347a8 [Driver] Factor out PerformJobsState::schedule*Jobs. 2017-02-28 15:17:25 -08:00
Graydon Hoare 6d21711d02 [Driver] Move TaskQueue callbacks to PerformJobsState. 2017-02-28 15:17:24 -08:00
Graydon Hoare f7e9598d08 [Driver] Clean up some comments. 2017-02-28 15:17:24 -08:00
Graydon Hoare b8c26ef5cd [Driver] Move more temp Job sets to PerformJobsState. 2017-02-28 15:17:24 -08:00
Graydon Hoare e81d0f4ca1 [Driver] Pass Tracer to markTransitive everywhere. 2017-02-28 15:17:24 -08:00
Graydon Hoare 053c3f8e9e [Driver] Move DepGraph and MarkTracer to PerformJobsState. 2017-02-28 15:17:23 -08:00
Graydon Hoare aee4c83467 [Driver] Move markFinished to PerformJobsState, add logging. 2017-02-28 15:17:23 -08:00
Graydon Hoare de2c05fa8b [Driver] Extract scheduleCommandIfNecessary and add logging. 2017-02-28 15:17:23 -08:00
Graydon Hoare a13a0dfbba [Driver] Factor out some Job-logging support. 2017-02-28 15:17:22 -08:00
Graydon Hoare 01655789a0 [Driver] Move some function-local state into PerformJobState. 2017-02-28 13:22:20 -08:00
Hugh Bellamy fdf261327a Return an error result if we can't set the environment variables in performSingleCommand 2017-02-15 09:30:24 +07:00
Hugh Bellamy fc9d3bdb47 Simplify Windows Compilation::performSingleCommand implementation 2017-02-13 20:00:01 +07:00
Hugh Bellamy f001b7562b Use relatively new LLVM_FALLLTHROUGH instead of our own SWIFT_FALLTHROUGH 2017-02-12 10:47:03 +07:00
Robert Widmann 3eba4fd3ab Merge pull request #6787 from matthewcarroll/SR-3175-Include-signal-number-in-parseable-output-message
SR-3175: Include the terminating signal number in the driver output
2017-01-18 11:00:59 -07:00
Bob Wilson 34514513fd Merge remote-tracking branch 'origin/master' into master-next 2017-01-15 17:34:17 -08:00