From a62e62d046ba949d1815b14016ab9afc48eb39c6 Mon Sep 17 00:00:00 2001 From: Anton Korobeynikov Date: Wed, 27 Mar 2024 14:55:43 +0300 Subject: [PATCH] Add missed case to AssignAddressToDef. Fixes #71744 --- lib/IRGen/LoadableByAddress.cpp | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/lib/IRGen/LoadableByAddress.cpp b/lib/IRGen/LoadableByAddress.cpp index 6b27c7d0c7469..738ad7190b252 100644 --- a/lib/IRGen/LoadableByAddress.cpp +++ b/lib/IRGen/LoadableByAddress.cpp @@ -3773,6 +3773,15 @@ class AssignAddressToDef : SILInstructionVisitor { assignment.mapValueToAddress(origValue, newAddr); assignment.markForDeletion(bc); } + + void visitUncheckedBitwiseCastInst(UncheckedBitwiseCastInst *bc) { + auto builder = assignment.getBuilder(bc->getIterator()); + auto opdAddr = assignment.getAddressForValue(bc->getOperand()); + auto newAddr = builder.createUncheckedAddrCast( + bc->getLoc(), opdAddr, bc->getType().getAddressType()); + assignment.mapValueToAddress(origValue, newAddr); + assignment.markForDeletion(bc); + } }; } // namespace