; RUN: opt < %s -passes='print' -disable-output ; Ensure no crash happens after PR #164798 target datalayout = "p21:32:16" define i16 @f() { entry: br label %for.cond1.preheader for.cond1.preheader: %i.02 = phi i16 [ 0, %entry ], [ %inc8, %for.cond.cleanup3 ] %idxprom = zext i16 %i.02 to i32 %arrayidx = getelementptr [18 x i16], ptr addrspace(21) null, i32 %idxprom br label %for.body4 for.cond.cleanup: ret i16 0 for.cond.cleanup3: %inc8 = add i16 %i.02, 1 %exitcond3.not = icmp eq i16 %inc8, 0 br i1 %exitcond3.not, label %for.cond.cleanup, label %for.cond1.preheader for.body4: %j.01 = phi i16 [ 0, %for.cond1.preheader ], [ %inc.2, %for.body4 ] %idxprom5 = zext i16 %j.01 to i32 %arrayidx6 = getelementptr i16, ptr addrspace(21) %arrayidx, i32 %idxprom5 store i16 0, ptr addrspace(21) %arrayidx6, align 1 %inc.2 = add i16 %j.01, 1 %exitcond.not.2 = icmp eq i16 %inc.2, 18 br i1 %exitcond.not.2, label %for.cond.cleanup3, label %for.body4 }