File tree Expand file tree Collapse file tree 1 file changed +20
-0
lines changed Expand file tree Collapse file tree 1 file changed +20
-0
lines changed Original file line number Diff line number Diff line change @@ -675,6 +675,7 @@ struct ImmutableAddressUseVerifier {
675
675
case SILInstructionKind::TailAddrInst:
676
676
case SILInstructionKind::IndexRawPointerInst:
677
677
case SILInstructionKind::MarkMustCheckInst:
678
+ case SILInstructionKind::PackElementGetInst:
678
679
// Add these to our worklist.
679
680
for (auto result : inst->getResults ()) {
680
681
llvm::copy (result->getUses (), std::back_inserter (worklist));
@@ -693,6 +694,25 @@ struct ImmutableAddressUseVerifier {
693
694
llvm_unreachable (" invoking standard assertion failure" );
694
695
break ;
695
696
}
697
+ case SILInstructionKind::TuplePackElementAddrInst: {
698
+ if (&cast<TuplePackElementAddrInst>(inst)->getOperandRef (
699
+ TuplePackElementAddrInst::TupleOperand) == use) {
700
+ for (auto result : inst->getResults ()) {
701
+ llvm::copy (result->getUses (), std::back_inserter (worklist));
702
+ }
703
+
704
+ break ;
705
+ }
706
+
707
+ return false ;
708
+ }
709
+ case SILInstructionKind::PackElementSetInst: {
710
+ if (&cast<PackElementSetInst>(inst)->getOperandRef (
711
+ PackElementSetInst::PackOperand) == use)
712
+ return true ;
713
+
714
+ return false ;
715
+ }
696
716
default :
697
717
llvm::errs () << " Unhandled, unexpected instruction: " << *inst;
698
718
llvm_unreachable (" invoking standard assertion failure" );
You can’t perform that action at this time.
0 commit comments