[CGBlocks] Don't assume presence of bitcast

With opaque pointers, the bitcast constexpr will not be present.
This commit is contained in:
Nikita Popov
2022-03-23 14:15:06 +01:00
parent 9f63cd763e
commit beee09687f

View File

@@ -216,8 +216,9 @@ static llvm::Constant *buildBlockDescriptor(CodeGenModule &CGM,
llvm::Constant *disposeHelper = buildDisposeHelper(CGM, blockInfo);
elements.add(disposeHelper);
if (cast<llvm::Function>(copyHelper->getOperand(0))->hasInternalLinkage() ||
cast<llvm::Function>(disposeHelper->getOperand(0))
if (cast<llvm::Function>(copyHelper->stripPointerCasts())
->hasInternalLinkage() ||
cast<llvm::Function>(disposeHelper->stripPointerCasts())
->hasInternalLinkage())
hasInternalHelper = true;
}