<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/98413>98413</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            Regression due to b841e2eca
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            backend:RISC-V,
            vectorization
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
            fhahn
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          preames
      </td>
    </tr>
</table>

<pre>
    The following test case crashes after commit b841e2eca.  This is extracted from llvm-test-suite cross compiled for RISCV.

```
; ModuleID = 'err.ll'
source_filename = "/tmp/mode-dependent-address-759e8e.c"
target datalayout = "e-m:e-p:64:64-i64:64-i128:128-n32:64-S128"
target triple = "riscv64-unknown-linux-gnu"

@__const.main.correct = private unnamed_addr constant [96 x i32] [i32 0, i32 1, i32 2, i32 3, i32 0, i32 1, i32 2, i32 3, i32 8, i32 9, i32 10, i32 11, i32 8, i32 9, i32 10, i32 11, i32 16, i32 17, i32 18, i32 19, i32 16, i32 17, i32 18, i32 19, i32 24, i32 25, i32 26, i32 27, i32 24, i32 25, i32 26, i32 27, i32 32, i32 33, i32 34, i32 35, i32 32, i32 33, i32 34, i32 35, i32 40, i32 41, i32 42, i32 43, i32 40, i32 41, i32 42, i32 43, i32 48, i32 49, i32 50, i32 51, i32 48, i32 49, i32 50, i32 51, i32 56, i32 57, i32 58, i32 59, i32 56, i32 57, i32 58, i32 59, i32 64, i32 65, i32 66, i32 67, i32 64, i32 65, i32 66, i32 67, i32 72, i32 73, i32 74, i32 75, i32 72, i32 73, i32 74, i32 75, i32 80, i32 81, i32 82, i32 83, i32 80, i32 81, i32 82, i32 83, i32 88, i32 89, i32 90, i32 91, i32 88, i32 89, i32 90, i32 91], align 4
@arg4 = dso_local local_unnamed_addr global [96 x i8] zeroinitializer, align 1
@arg1 = dso_local local_unnamed_addr global [96 x i16] zeroinitializer, align 2
@arg2 = dso_local local_unnamed_addr global [96 x i32] zeroinitializer, align 4
@arg3 = dso_local local_unnamed_addr global [96 x i64] zeroinitializer, align 8
@result = dso_local local_unnamed_addr global [96 x i8] zeroinitializer, align 1

; Function Attrs: nofree norecurse nosync nounwind memory(argmem: readwrite) uwtable vscale_range(4,1024)
define dso_local void @f883b(ptr nocapture noundef writeonly %result, ptr noalias nocapture noundef readonly %arg1, ptr noalias nocapture noundef readonly %arg2, ptr noalias nocapture noundef readonly %arg3, ptr noalias nocapture noundef readnone %arg4) local_unnamed_addr #0 {
entry:
  br label %for.body

for.body:                                         ; preds = %for.body, %entry
  %indvars.iv = phi i64 [ 0, %entry ], [ %indvars.iv.next, %for.body ]
  %arrayidx = getelementptr inbounds i16, ptr %arg1, i64 %indvars.iv
  %0 = load i16, ptr %arrayidx, align 2, !tbaa !7
  %narrow = tail call i16 @llvm.smin.i16(i16 %0, i16 1)
 %spec.select = sext i16 %narrow to i32
  %arrayidx7 = getelementptr inbounds i32, ptr %arg2, i64 %indvars.iv
  %1 = load i32, ptr %arrayidx7, align 4, !tbaa !11
  %and = and i32 %1, 31
  %shr = ashr i32 %spec.select, %and
  %sub = add nsw i32 %shr, 32
  %shr8 = lshr i32 %sub, 7
  %or = or i32 %shr8, 251
  %conv9 = zext nneg i32 %or to i64
  %arrayidx11 = getelementptr inbounds i64, ptr %arg3, i64 %indvars.iv
  %2 = load i64, ptr %arrayidx11, align 8, !tbaa !13
 %and12 = and i64 %2, %conv9
  %conv13 = trunc i64 %and12 to i8
 %arrayidx15 = getelementptr inbounds i8, ptr %result, i64 %indvars.iv
 store i8 %conv13, ptr %arrayidx15, align 1, !tbaa !15
  %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1
  %exitcond.not = icmp eq i64 %indvars.iv.next, 96
  br i1 %exitcond.not, label %for.end, label %for.body, !llvm.loop !16

for.end: ; preds = %for.body
  ret void
}

declare void @abort() local_unnamed_addr

; Function Attrs: nocallback nofree nosync nounwind speculatable willreturn memory(none)
declare i16 @llvm.smin.i16(i16, i16) #1

; Function Attrs: nocallback nofree nosync nounwind willreturn memory(inaccessiblemem: readwrite)
declare void @llvm.experimental.noalias.scope.decl(metadata) #2

attributes #0 = { nofree norecurse nosync nounwind memory(argmem: readwrite) uwtable vscale_range(4,1024) "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="sifive-x280" "target-features"="+64bit,+a,+c,+d,+experimental,+f,+m,+relax,+unaligned-scalar-mem,+unaligned-vector-mem,+v,+zawrs,+zba,+zbb,+zbkb,+zbs,+zvl128b,+zvl256b,-zvl1024b,-zvl16384b,-zvl2048b,-zvl32768b,-zvl4096b,-zvl512b,-zvl65536b,-zvl8192b" }
attributes #1 = { nocallback nofree nosync nounwind speculatable willreturn memory(none) }
attributes #2 = { nocallback nofree nosync nounwind willreturn memory(inaccessiblemem: readwrite) }

!llvm.module.flags = !{!0, !1, !2, !3, !4, !5}
!llvm.ident = !{!6}

!0 = !{i32 1, !"wchar_size", i32 4}
!1 = !{i32 1, !"target-abi", !"lp64d"}
!2 = !{i32 8, !"PIC Level", i32 2}
!3 = !{i32 7, !"PIE Level", i32 2}
!4 = !{i32 7, !"uwtable", i32 2}
!5 = !{i32 8, !"SmallDataLimit", i32 8}
!6 = !{!"clang version 19.0.0git (https://github.com/llvm/llvm-project.git f09ee68e33daf3588b833a35481e69b7e8220595)"}
!7 = !{!8, !8, i64 0}
!8 = !{!"short", !9, i64 0}
!9 = !{!"omnipotent char", !10, i64 0}
!10 = !{!"Simple C/C++ TBAA"}
!11 = !{!12, !12, i64 0}
!12 = !{!"int", !9, i64 0}
!13 = !{!14, !14, i64 0}
!14 = !{!"long", !9, i64 0}
!15 = !{!9, !9, i64 0}
!16 = distinct !{!16, !17}
!17 = !{!"llvm.loop.mustprogress"}

```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJy8WVuP4yoS_jX0C7Jlgy_4IQ992ZZGOiutzozOawvblYQdDF7ASff8-hW-ECfp7umsdnc0agP5vrpRFBWHWyt2CmCD8gdEyHbP9woRgvKnOz64vTab3gDvwN7Vun3b_NgD3mop9VGoHXZgHW64BdwYbvdgMd86MLjRXSccrlmWAoGGxxj_2AuLhcXw6gxvHLR4a3SHpTx0kRcT2UE4L0db6_m9kB6jDf7z2_fHv2KUPKHkfv5bJPP_aUof8N91O0j49oQRfcKIlGBMLCUi5QSxejANvGyFBMU7mFEEkWfX9Yg8d7qFqIUeVAvKRbxtDVgblXkFDOLGQ0c5jpsdONxyxyV_04NbJEHUIXoPUY_ofZGNfyIRBilhiN6nhEWKkmntu1-7EOuM6GUwzgjbHIosGtRPpY8qkkINr9FODYE2_82Sl5dGK-vijgsVN9oYaCbLeiMO3AEelHe7ffGO4RHLlcMof6gK_IoF9fvtp4ISnCDy6JdwugzIMqDL4CsYtgyqAD7R0ttQaRFGZRgFalrdiiNZGOVhFLikvBVHT-4H_2ng0vxWXBZikIUYZIGb0ZtxIQZZiEEeuHl6Ky4PMchDDPLAzatbcUWIQRFiUARuUd6KK0MMyhCDMnDL_FYcCzFgp8wNXEZvxoUYsBCDKnCr9Mu4_MlPuBQ7hbNQD7jZZeP5b61-kbrhEo9_X87qwE7qmstTFWC-CPwCo4USTnApfoE5SU_X0tPbpafFp-LJWjy5XfxUwj4UfxYberv4IvtUPAviDdhBuv9V8MN99zyoxgmt8L1zxiJ6j5XeGgCstIFmMNaP7JtqsNKDOgrV4g46bd4QYdzsOvDXFTbA26MRDhCp8HB0vJaAD7bhEl4MVztAhPnTkCa-EFaT-ha2QsHKu4MWLUZZsmWM1oiw3hmsdMN7NxgY9bewxaMereQbRiSfouT9m8BcCm7fIXkDF45Pu5sZ5GYG_RpDaQUzw4fmvS1GhCYYlQ9T2EA584bovIcY1wZLXoP0QrbaxL69Wu9yWKP3-Kv_fGb0Blo79xAnweTRTycbZgMQyYVqD9zYWBymbmEvfKb7pJxu-IWC5zrjPzijxQpe3YxcdI3gkw5uDH8T7euoYQcOJHSgnI-wULWPqB2Lwxz11UaPpqy1raQmozipeXtFntStK8toX-pqzv2zXIlR3Bh9HGU5LiRuuJReoE9n35rGthMqHjWwcZnMt2Fa-NZnPhF-2fbQxBbk0nlZeHV4psxanB7L1HVoyk9jQ8l5bMjvYpOuYnNBnvWt6-J5cNJ0bZ9qR1H-6e8bL9vj6Rpk92YC-cGMWgVjTg6u2jVnqCdO22Jlj4G2H0veWYzs3rDJn7X8ofbA9U7qyQptVsLGy9PbfII1Wh2qEfnLb5BSsFsI2ow7VGTv7FCafrpFU1ty2iL6uy0iqy26IC8K15fLxR7RU9px1abktEmTyjnjJ2cvnE-ny8-ZQTULfhLinWcryYsl-aeus5Xxp6r-ke_WaQNYsJM17_mery--C9_zd8vXWIdOKTUcp7S6soI84nU2wKtwjVZtrPTEFk3XY_jXNTMUuqpYFXCRXkrxkLOyDqq9WjtV5HQsMlLrfnSuuLwAPJvef1LXZ1sMuPEanvnl01pQC43kBsI9zWttHPJfP9-7tr7SafgyWfPm56npOG81_PkfJJ_6iaOQ0oAbjDq1IP72XDUUk30f19255HqDEaFfaoZ-Z-J7VgnFmwasFbXP9KsO6f1ojubCaw9G-NPBZTw3DrFtdA-xxyPCOnC85Y7PPpx9g-fOGVEPDuzcM_hNLh_-Hy0dRoQoHTnD-16oXdRxt0eEIPqECHFmAER8cSTW8eZn1BvtoHHaRPWw3YKJrPgFAc5m7PQ2I2r6IXxkxVYcIHol_gvSGrQF7lsrG5CIPBRZLfxBQuSBT49merTTYx3saWU7PbrpYUDy12k4qLGMQBv5CHAT-ShdfHKYPAqfHKbHL340dh7WfBnUy-BnGC2gg0wJq8OE5IWfRH49IVkYF5SFCUkytowpKYswyZIqsPOULMMiz2lYZ2nlPyA4HPfzPEpXefTfOrAf6SI36PoPTh6-qGhL4ezGt37xVvLdUhpT33CTdG5f0-X-WJpAOj-Xvic_SZ5lihaUOxdWXKtPVojwHsxPCTk2e25elpOxvE5Z60k_Js_HgtdiJk_Lsi-y1q-spJALKewE_8e3R_wHHECuLDjj0gtuueb-7XNu9jF3rjcfMfOPLf7ecSmfuON_iM4f_tM7k7WA4nxfECGN5GqHD2Csr_9pFSdxshMOI8L2zvX-MkDkGZHnnXD7oY4b3SHy7Dd6fvia9k9oXOxZ26QCKBhQ2vItzRmrGaWc5hlLoajqEhghSV7l_jI434zy3LLFM7Y0Q8kazK7csPvxSl52vHqXVl3RdKdEr51PWJ90JwHzO9RLCWdpOwdedL0E_IjIsy9ciDzgHw_39xfunaWsnwdF5H1F5EqRUL918Cwt_Xw5pdPgGp9daZFa7X6rJj-nVZ-jp6RrhXVC-S93wbpisa48w5fXRi1NXtwN1vVG7wxYexbi89817toNbSta8TvYpCVJipyyKr_bb6qs2SYJS7aMFzTPKgYtLYqq3BZ5ndCE3YkNSUiWlGlCKMnyPM5ZXtS8rFPasJYlBcoS6LiQ8WiUNrs7Ye0Am4plKb0b21Q7_xbki_jUgP757ftj9NcUV0TIdGOKX9w3XfOPRWYznqZ62FnfFAnr7EmFE07C5k8Y_fYHtR3Af98IPxDdDUZubjuwiDyPlltEnifjDxvy7wAAAP__LiuD0Q">