Commits

Connor Wakamo committed 40b38c40b21
[driver] Reworked Driver::buildJobsForAction() so that it doesn’t create the same Job multiple times. Since a Job may be reached through multiple paths in the dependency graph, we need to include support for caching Jobs. (Currently, the cache maps Action/ToolChain pairs to Jobs.) As a result of these changes, Tool::constructJob() and Driver::buildJobsForAction() return a plain Job *, instead of a std::unique_ptr<Job>, since the Jobs returned by buildJobsForAction() no longer need to be unique. Swift SVN r12443