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

    <tr>
        <th>Summary</th>
        <td>
            [RISCV] vfslide1down+vmerge miscompile
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            new issue
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
            preames,
            lukel97
      </td>
    </tr>

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

<pre>
    This test case

```
define <vscale x 4 x float> @intrinsic_vfslide1down_vf_nxv4f32_nxv4f32_f32(<vscale x 4 x float> %0, <vscale x 4 x float> %false, float %1, <vscale x 4 x i1> %mask) nounwind {
                                                          
entry: 
 %a = call <vscale x 4 x float> @llvm.riscv.vfslide1down.nxv4f32.f32(<vscale x 4 x float> undef, <vscale x 4 x float> %0, float %1, i64 4)
  %b = call <vscale x 4 x float> @llvm.riscv.vmerge.nxv4f32(<vscale x 4 x float> undef, <vscale x 4 x float> %false, <vscale x 4 x float> %a, <vscale x 4 x i1> %mask, i64 1)
  ret <vscale x 4 x float> %b 
}
```

is compiled to

```
intrinsic_vfslide1down_vf_nxv4f32_nxv4f32_f32: # @intrinsic_vfslide1down_vf_nxv4f32_nxv4f32_f32
# %bb.0: # %entry
        vsetivli        zero, 1, e32, m2, ta, mu
 vfslide1down.vf v10, v8, fa0, v0.t
        vmv.v.v v8, v10
 ret
```

The vfslide1down's VL was changed from 4 to 1. This causes fa0 to be inserted into element 0 instead of element 3.
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJykVE1v8zYM_jXyhahhU_6IDz60yQIM2Gkrei1km060ylIgyU67Xz_IdrO269L1fYNABinx6-FDCufkQRPVLL9jiCdLYiDHEBluGaIan0hVZZDzXSRGfzS29uZ0IttGjele6vujdODJeWiFI5bsWHK7nkWy_mexo15qAsa3k2uFIniGDJ6hV0Z4xn8BliVSeyu1k-3j1DslO0o7c9aPU_-on6es53j59hwZbv7bF-YJw-2VYJj3QjkKj2Zl0KSfmch0fT8I98SwAm1GfZa6A1beLZXBD_8We9LevjB-u4ohmADGd9AKpa4CptQ0xFa6dorfIhavMMVfwDTqjvqvcEr-jZEsMsgYVq_lM8yb7yc8kD3Qa6o_nealndceif_R4aW89E15lvxVr83aOFbuPmX-ckoHrRlOUlEH3lwZlO9NQaAN8u9PzxI5WGLeNHFycYT5wsd31J4ceTkp-Sr_RdYEqGY6UGjfFob59DPGw7jav6Pl1MOUznyaNjOrxCIksf8QbpjiKZ7WZ8FmubbkryB8f6R38RiWDh5-g7Nw0B6FPlAHvTUDZOANpDHMu6sVoyMXcgnahkBqR9ZTB1J7A6RoIO0hCXpPogPTX5Q8jrqadxWvRER1WmJWVLxCHh1raopN3hVZ2vCs4VlalNjmPeaUVFmxafpI1phglmywSEu-yXjcUdpv8qLr24qXbVWyLKFBSBXPQ2PsIZLOjVSnSZEmVaREQ8qte1vTGebbdVPbOhjdNOPBhamTzrt_3Hjp1bzwf__1j-0Dy3cfULtbRhMG6VbGRqNV9dH7k2P8luGe4f4g_XFs4tYMDPfB9fq5OVnzJ7We4X5OyDHcrxlPNf4dAAD__57A4as">