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

    <tr>
        <th>Summary</th>
        <td>
            Backport 271087e3a0875672b26c185a28b3552d5600d2fb
        </td>
    </tr>

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

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

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

<pre>
    /cherry-pick 271087e3a0875672b26c185a28b3552d5600d2fb

This patch (only touches LoongArch code) can fix the following compilation error when building `SPEC CPU2017` or `Unreal Engine 4` for LoongArch.
```
error: ran out of registers during register allocation
```

Actually clang16 has the same issue, but it's to late to backport.
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJyMkj9vpDAQxT-NaUZZmWGxoaDY_Nnqiki56GrbDNgXr41sc8l--xNkozRXnIRmxIz83m-kp3J2cyAaWHvP2sdKrcXGNLy4j1_kggtzpeN4HRiejaWUrneLM2-AsuadpEbxTrZCokZh6q5V2OmmbXFsBecjTprxR8ZPn_WndRkWVYwFhl0M_golrsZShh8xhvmUjAUTR2LYg1EBJvcBxRJM0fv47sIMJl4W51VxMQClFBO8WwqgV-fHbc8Ef3l-eoCH51fktWSCQ0zb9DUkUh6ewuwCwXFbTDF9-x5uoILfvv13t2DNCZIKENcCcYJEs8uFUoZxTZvn1wCU99HsbP8U-6wnU1bl_RWMV2GuBViV9yOzuhC4nFdi-AB6LeAKQ5mhRPCq0Na1Mm9LTOVQjUMz9k2vKhpq0Xe8RXmUlR206IXuTNdM2Oh-bMlwQhQtkUClx7pyA3Jsao4N7-uey8N05Mr0I9dqkrKWgh05XZTzB-__XA4xzdUONYi-56LySpPPe1YQA71_EeMWnTRsb-70Omd25N7lkr9ViiuehvvbBf8doGpNfrClLJk1J4ZnhufZFbvqg4kXhudN_9bulhR_kykMzztVZnjeqf8GAAD__yLm5iA">