llvm-project/clang/lib/Driver
Justin Lebar 4022d52959 Bail on compilation as soon as a job fails.
Previously we attempted to be smart; if one job failed, we'd run all
jobs that didn't depend on the failing job.

Problem is, this doesn't work well for e.g. CUDA compilation without
-save-temps.  In this case, the device-side and host-side Assemble
actions (which actually are responsible for preprocess, compile,
backend, and assemble, since we're not saving temps) are necessarily
distinct.  So our clever heuristic doesn't help us, and we repeat every
error message once for host and once for each device arch.

The main effect of this change, other than fixing CUDA, is that if you
pass multiple cc files to one instance of clang and you get a compile
error, we'll stop when the first cc1 job fails.

Reviewers: tra, echristo

Subscribers: jhen, cfe-commits

Differential Revision: http://reviews.llvm.org/D16514

llvm-svn: 260448
2016-02-10 22:17:00 +00:00
..
Action.cpp [CUDA] Invoke ptxas and fatbinary during compilation. 2016-01-14 21:41:27 +00:00
CMakeLists.txt Support mingw-w64 and mingw.org toolchains at any install location. 2015-07-02 04:45:27 +00:00
Compilation.cpp Bail on compilation as soon as a job fails. 2016-02-10 22:17:00 +00:00
CrossWindowsToolChain.cpp Driver: tweak CrossWindows sanitizer support 2015-10-29 03:36:38 +00:00
Driver.cpp [MSVC Compat] Only warn for unknown clang-cl arguments 2016-01-25 21:14:52 +00:00
DriverOptions.cpp Update clang to match llvm r250901. OptTable constructor now takes an ArrayRef. NFC 2015-10-21 16:31:33 +00:00
InputInfo.h Add an Action* member to InputInfo. 2016-01-11 23:15:21 +00:00
Job.cpp Driver: Strip -header-include-file and -diagnostic-log-file from crash repro scripts 2015-08-05 23:49:44 +00:00
MSVCToolChain.cpp Fix array index out of bounds 2016-01-27 07:33:50 +00:00
MinGWToolChain.cpp Revert r253898 and r253899, this breaks mingw compilation on openSUSE. 2016-01-12 10:41:20 +00:00
Multilib.cpp [Driver] Remove `else` after `return` 2015-10-12 14:32:57 +00:00
Phases.cpp Reapply "Change -save-temps to emit unoptimized bitcode files." 2014-12-21 07:00:00 +00:00
SanitizerArgs.cpp Introduce -fsanitize-stats flag. 2016-01-16 00:31:22 +00:00
Tool.cpp Roll-back r250822. 2015-10-20 13:23:58 +00:00
ToolChain.cpp Driver: protect from empty -L args 2015-11-26 01:02:07 +00:00
ToolChains.cpp [asan] Add iOS support for Address Sanitizer 2016-02-02 02:04:48 +00:00
ToolChains.h [asan] Add iOS support for Address Sanitizer 2016-02-02 02:04:48 +00:00
Tools.cpp [clang-cl] /Z7 now generates normal debug info, not just line info 2016-02-10 21:28:38 +00:00
Tools.h Move DebugInfoKind enum from Driver to Basic. NFC 2016-02-05 21:54:42 +00:00
Types.cpp [CUDA] Invoke ptxas and fatbinary during compilation. 2016-01-14 21:41:27 +00:00