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

    <tr>
        <th>Summary</th>
        <td>
            IR printer: varargs are printed incorrectly
        </td>
    </tr>

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

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

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

<pre>
    Calling `opt -S` on

```
target datalayout = "e-m:w-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"
target triple = "x86_64-pc-windows-msvc"

define internal i32 @__CxxFrameHandler3(...) {
entry:
  %i = musttail call i32 (...) inttoptr (i64 140695686830884 to i32 (...)*)(...)
  ret i32 %i
}
```

produces

```
  %i = musttail call i32 (...) inttoptr (i64 140695686830884 to i32 (...)*)(, ...)
```

note the `(, ...)` towards the end.

The LLVM IR printer incorrectly adds a leading `,` in this case.
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJy1Uk1v2zAM_TXyRbAhyx9RDj6kDYoN6C7rsGsgW7SjQZEMSc7Hvx_tJG0DFLsNMGiS0nuPFNk6dWmepTHaDpTUzI2Rpm_oUGcJ2xK2udma3b4ljNIPEKmSURp5cVOkpNhSwjmkB1JsTunIVwydgi9mDvPHcPbqcjGpvju9mEE5F6kVs1PfMXj2hmkUeNCPXo8G7tpnUe_w4tilJ22VO4X0EI7dO-ZqFfTaAtU2grfSUF1wSkq22z2fzy9eHuCbtMqALwgXWZYRvqZk9XTFgo3-gtVcI4qalV7ED1OIUWpDO3zJK-U7GpUivqqfU9gozUtWr6ta1KJgQpQ0ukcA4ZvF3sOblsd2r_cqfetntf1yNlc7eqemDsI_hvi_GyD8mX5u4ss6rYtA4x7m5XvE4A5Gd5JeheUcrMo-A39h7vX19w_6_Scd_TJPLLVz3kMXzYVKhUBJDUh1223knkm1RT4dsNUAWaKaQq2LtUyijgaaDzKcMz1Kj4uGNB5uafVZI5m8afYxjmFeCv6C36Djfmqzzh0wMOZ4_6U4jz8IwlCHMOFc-EtVV2WZ7JuiX3WsU7zqa1GpgvcKOlBd2daiLft1nhjZggkNqZ5wmS2c6EIxL3a1TXTDGedslVd5kee5yFjd97JSrBV5x6BY43bDAWebzXVkzg-Jb5aS2mkIeGh0iOHjUIagBwuwyCG_nOLe-eboBqxhgCDtkCz6zVL_X2zCMRA">