Commits
Michael Gottesman committed 509bbe53bee
[g-arc-opts] Ignore trap BB during Sequence Dataflow. These trap BBs are pattern matched very strictly, i.e. only BBs of the following form are matched: bbN: %_ = builtin_function_ref "int_trap" apply %_ unreachable Such BBs can be ignored safely for ARC purposes. This allows us to handle -O3 code in the ARC optimizer significantly more effectively by enabling us to handle many more types of check failures. For instance we can now remove retains, releases in the following code: bb0: strong_retain %0 cond_br _, bb1, bb2 bb1: strong_release %0 ... bb2: %_ = builtin_function_ref "int_trap" apply %_ unreachable rdar://17212610 Swift SVN r18817