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

    <tr>
        <th>Summary</th>
        <td>
            Intervals are overlapping
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            llvm:optimizations
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
            DianQK
      </td>
    </tr>

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

<pre>
    I tried the following IR:

```llvm
define i8 @foo(ptr %arg, i8 %arg1) {
bb:
  %i = load i8, ptr %arg, align 1, !range !{i8 127, i8 -20}
 %i2 = load i8, ptr %arg, align 1, !range !{i8 -27, i8 -24, i8 -20, i8 -17}
  %i3 = add i8 %i, %i2
  ret i8 %i3
}
```

I expected a successful optimization, but I encountered a validation error:

```
Intervals are overlapping
!0 = !{i8 -27, i8 -24, i8 127, i8 -17}
LLVM ERROR: Broken module found, compilation aborted!
```

https://llvm.godbolt.org/z/33nd1fxnv
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJykU8Fu2zAM_Rr5IiSQqNiyDz40ywIE6zCsh91li3G0KZIhyVnXrx_kOG166C4DDFsWyffIR1LFaAaH2JJySwB2RrnvXwgAKXeFmtLJh_Z6V3Re_2kPNAWDmqYT0qO31v82bqCHJyIeCNsRdntX7PpYezlfrzQejUNqako27Og9gXpMgRIoVRgIfJot8w8n0FAit9e4rnvFptnBUCJ21Hqlqalz3HsUZc3gKM9HAjwoN2A-ELk1NeUgF6YVMCJ3C2xGhf-AXd3Bbu4IlhOXb1Qzl5i5lNZLzeYKWxq4eQVMN5tYFL1BvEp7r_eB4vOIfUJNFY1T32OMx8lSPyZzNi8qGe8ySTcleqDoej-5hGF2vyhr9OxBMQQfPmrlwpTjLspGqgJSf8Fg1TgaNyzewNlc3T_FuevDnTiPjz--0s9PT9_yNNFt8L_Q0bPXk82zNjmdY3p_Ho29pqs6HxLqTPWxNKeUxphrgj2BfZ7H9eB1521a-9zb_QuBvRBO8-OzuxS6FboRjSqw5RJACikqKE5tuQHGG1HVpWC65qzpeIkKq0qWUjayLEwLDDasZhsGrAFYYyWlbnpkpVCSHSuyYXhWxq7nHHwYChPjhC1nvC6bwqoObVzWcF4b8XDfvrgsZWizcdVNQyQbZk1M8Q0xmWSx_bBHxRRs-16QwaTT1K17f17UWT6rMfif2CcC-znNSGC_ZHpp4W8AAAD__8VAMbA">