Like the recent IR-level patch, this adds the ability for the stack protector to instrument a noreturn call followed by an unreachable if it's the SelectionDAG logic inserting the checks. This covers the interesting case of a call to _Unwind_Resume (or similar) along an exception cleanup path.
Details
Details
- Reviewers
- None
Diff Detail
Diff Detail
Unit Tests
Unit Tests
Event Timeline
llvm/test/CodeGen/RISCV/stackprotect-noreturn.ll | ||
---|---|---|
2 | Please use update_llc_test_checks.py, at least for RISC-V, though I'd encourage its use for other architectures too. Also don't use a Linux triple unless it's strictly necessary, a plain riscv32 is normally sufficient, and be sure to test both 32-bit and 64-bit. |
llvm/test/CodeGen/RISCV/stackprotect-noreturn.ll | ||
---|---|---|
2 | Also we favour < %s over %s -o - and -verify-machineinstrs tends to be a worthwhile thing to have on tests |
Please use update_llc_test_checks.py, at least for RISC-V, though I'd encourage its use for other architectures too. Also don't use a Linux triple unless it's strictly necessary, a plain riscv32 is normally sufficient, and be sure to test both 32-bit and 64-bit.