This PR fixes some issues found with the initial compiler rebase onto LLVM 16:
Fix issue where jump-threading would thread a detach-continue edge without threading the corresponding reattach-continue edge.
Fix llvm.threadlocal.address intrinsic to prevent the compiler from moving calls to the intrinsic across other function calls by lifting the intrinsic out of a loop.
Convert more instances of now-deprecated Optional with std::optional.
This PR fixes some issues found with the initial compiler rebase onto LLVM 16:
llvm.threadlocal.address
intrinsic to prevent the compiler from moving calls to the intrinsic across other function calls by lifting the intrinsic out of a loop.Optional
withstd::optional
.