HomePhabricator

Restore Check for Unreachable Exit Block in -Winfinite-recursion

Authored by CodaFi on Feb 13 2019, 2:22 PM.

Description

Restore Check for Unreachable Exit Block in -Winfinite-recursion

Summary:
When this was rewritten in D43737, the logic changed to better explore infinite loops. The check for a reachable exit block was deleted which accidentally introduced false positives in case the exit node was unreachable.

We were testing for cases like this, but @steven_wu provided an additional test case that I've included in the regression tests for this patch.

Reviewers: steven_wu, rtrieu

Reviewed By: steven_wu, rtrieu

Subscribers: cfe-commits, steven_wu

Tags: #clang

Differential Revision: https://reviews.llvm.org/D58122

llvm-svn: 353984

Details

Committed
CodaFiFeb 13 2019, 2:22 PM
Reviewer
steven_wu
Differential Revision
D58122: Restore Check for Unreachable Exit Block in -Winfinite-recursion
Parents
rGde7a0a152648: [WebAssembly] Bulk memory intrinsics and builtins
Branches
Unknown
Tags
Unknown