HomePhabricator

[ObjCARC] Account for catchswitch in bitcast insertion

Description

[ObjCARC] Account for catchswitch in bitcast insertion

A catchswitch is both a pad and a terminator, meaning it must be the
only non-phi instruction in its basic block. When we're inserting a
bitcast in the incoming basic block for a phi, if that incoming block is
a catchswitch, we should go up the dominator tree to find a valid
insertion point rather than attempting to insert before the catchswitch
(which would result in invalid IR).

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

Details

Committed
smeenaiMay 4 2018, 12:03 PM
Differential Revision
D46412: [ObjCARC] Account for catchswitch in bitcast insertion
Parents
rL331547: Fast Math Flag mapping into SDNode
Branches
Unknown
Tags
Unknown