[BOLT] Allocate FunctionFragment on heap
authorFabian Parzefall <parzefall@fb.com>
Wed, 24 Aug 2022 17:02:35 +0000 (10:02 -0700)
committerFabian Parzefall <parzefall@fb.com>
Wed, 24 Aug 2022 17:17:17 +0000 (10:17 -0700)
commit101344af1af82d1633c773b718788eaa813d7f79
treedd5e2703ee0a8fadb9e11aaf4bdc5367fc6aee81
parent587d2653420d75ef10f30bd612d86f1e08fe9ea7
[BOLT] Allocate FunctionFragment on heap

This changes `FunctionFragment` from being used as a temporary proxy
object to access basic block ranges to a heap-allocated object that can
store fragment-specific information.

Reviewed By: rafauler

Differential Revision: https://reviews.llvm.org/D132050
bolt/include/bolt/Core/BinaryEmitter.h
bolt/include/bolt/Core/FunctionLayout.h
bolt/lib/Core/BinaryContext.cpp
bolt/lib/Core/BinaryEmitter.cpp
bolt/lib/Core/BinaryFunction.cpp
bolt/lib/Core/Exceptions.cpp
bolt/lib/Core/FunctionLayout.cpp
bolt/lib/Passes/BinaryPasses.cpp
bolt/lib/Rewrite/RewriteInstance.cpp