[CodeExtractor] Do not marked outlined calls which may resume EH as noreturn
authorVedant Kumar <vsk@apple.com>
Wed, 5 Dec 2018 19:35:37 +0000 (19:35 +0000)
committerVedant Kumar <vsk@apple.com>
Wed, 5 Dec 2018 19:35:37 +0000 (19:35 +0000)
commit09415a850ec927e45a1639a621c2a3a6aba2687c
tree8be20e9864818e12ec29de0797abe8cc715b1d71
parentc10590f6f99385aa4f0209e42d5136b11355d5a8
[CodeExtractor] Do not marked outlined calls which may resume EH as noreturn

Treat terminators which resume exception propagation as returning instructions
(at least, for the purposes of marking outlined functions `noreturn`). This is
to avoid inserting traps after calls to outlined functions which unwind.

rdar://46129950

llvm-svn: 348404
llvm/lib/Transforms/Utils/CodeExtractor.cpp
llvm/test/Transforms/HotColdSplit/unwind.ll [new file with mode: 0644]