[BOLT] Insert EH trampolines for multiple fragments
authorFabian Parzefall <parzefall@fb.com>
Fri, 19 Aug 2022 04:51:51 +0000 (21:51 -0700)
committerFabian Parzefall <parzefall@fb.com>
Fri, 19 Aug 2022 04:55:08 +0000 (21:55 -0700)
commite001a4e48968f146104cacacb12ba11d316886d2
treef011794212affb54f8247dec7d49d6cf2789f7d0
parentac830664b20cdf2844d3472d5b5ed1c359085989
[BOLT] Insert EH trampolines for multiple fragments

This patch adds exception handling trampolines when a function is split
into more than two fragments. Trampolines are tracked per-fragment, such
that they can be removed if splitting is reversed.

Reviewed By: rafauler

Differential Revision: https://reviews.llvm.org/D132048
bolt/include/bolt/Core/FunctionLayout.h
bolt/include/bolt/Passes/SplitFunctions.h
bolt/lib/Passes/SplitFunctions.cpp