diff options
author | Yuanfang Chen <yuanfang.chen@sony.com> | 2020-02-10 18:33:05 -0800 |
---|---|---|
committer | Yuanfang Chen <yuanfang.chen@sony.com> | 2020-02-11 18:20:40 -0800 |
commit | 8cedf0e2994c1a258902ed931abdec5f94725a55 (patch) | |
tree | 2220fce4195fbda25bd0e1abe83744010f29c672 /llvm/lib/Support/ErrorHandling.cpp | |
parent | d6a5c31c0f739cd401702b898e3da3986466dffa (diff) | |
download | llvm-8cedf0e2994c1a258902ed931abdec5f94725a55.zip llvm-8cedf0e2994c1a258902ed931abdec5f94725a55.tar.gz llvm-8cedf0e2994c1a258902ed931abdec5f94725a55.tar.bz2 |
Reland "[Support] make report_fatal_error `abort` instead of `exit`"
Summary:
Reland D67847 after D73742 is committed. Replace `sys::Process::Exit(1)`
with `abort` in `report_fatal_error`.
After this patch, for tools turning on `CrashRecoveryContext`,
crash handler installed by `CrashRecoveryContext` is called unless
they installed a non-returning handler using `llvm::install_fatal_error_handler`
like `cc1_main` currently does.
Reviewers: rnk, MaskRay, aganea, hans, espindola, jhenderson
Subscribers: jholewinski, qcolombet, dschuff, jyknight, emaste, sdardis, nemanjai, jvesely, nhaehnle, sbc100, jgravelle-google, hiraditya, aheejin, kbarton, fedor.sergeev, asb, rbar, johnrusso, simoncook, sabuasal, niosHD, jrtc27, zzheng, edward-jones, atanasyan, steven_wu, rogfer01, MartinMosbeck, brucehoult, the_o, dexonsmith, PkmX, rupprecht, jocewei, jsji, Jim, dmgreen, lenary, s.egerton, pzheng, sameer.abuasal, apazos, luismarques, kerbowa, cfe-commits, llvm-commits
Tags: #clang, #llvm
Differential Revision: https://reviews.llvm.org/D74456
Diffstat (limited to 'llvm/lib/Support/ErrorHandling.cpp')
-rw-r--r-- | llvm/lib/Support/ErrorHandling.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/llvm/lib/Support/ErrorHandling.cpp b/llvm/lib/Support/ErrorHandling.cpp index a946302..f70a692 100644 --- a/llvm/lib/Support/ErrorHandling.cpp +++ b/llvm/lib/Support/ErrorHandling.cpp @@ -123,7 +123,7 @@ void llvm::report_fatal_error(const Twine &Reason, bool GenCrashDiag) { // files registered with RemoveFileOnSignal. sys::RunInterruptHandlers(); - sys::Process::Exit(1); + abort(); } void llvm::install_bad_alloc_error_handler(fatal_error_handler_t handler, |