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

    <tr>
        <th>Summary</th>
        <td>
            error: end: insufficient values on the type stack when compiling wasm32 .s generated from c
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
      </td>
    </tr>

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

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

<pre>
    Reduced repro:

```c
int a() {
  while (1)
    ;
}
```

Command line:

```
clang-15 --target=wasm32-unknown-wasi -S ghc_1.c -o ghc_1.s

clang-15 --target=wasm32-unknown-wasi -c ghc_1.s -o Schedule.o.tmp
```

Error message:
```
ghc_1.s:15:2: error: end: insufficient values on the type stack
        end_loop
        ^
```

LLVM version: trunk, 2321c36fbf763e273ed78b4209168ce783b5cf96, but should reproduce with any recent revision
Platform: x86_64-linux
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJydUktv3CAQ_jX4MrJl8HMPPiTZ9FClUtVUvUYYDzYNhhXg3eTfF3uzykNqVNXCMDPMzDfzMb0dnrsfOCwCB3B4cJYUVyTfk_yy1_l5ibOuTABOWEvYDkhzfTYCnCalEaKdxouLEYAULx6k2X_I9xbkxs4zNwNoZfBv-GdVaG7GlFaQpoG7EQMp9ifu54Kli3k09mTSqCpI72GcxAPNBKT2RfRv8_5zInGJXhPdiylypTGzWZgPn3R065x1MKP3fHzT0nvXS1nFFa3ixuIPuAZughnWQxm_SKmEwkj8kesFPVgDYUIIzwcEH7h4fCV8_WLkg7b28N5KqttP6r27-_UNjui8smaFDS6yQNgNsIJRUdSyl01dIGsKHJq2L1m-o3UrsGmLvhJyV6--_RLAT3bRL6O0ThWcVJiAm-doEmsPDo9qQ9lwv2sepHXzivnU1g91mcYhWJ6SoSuGXbHjSVBBY_dftMSpRAPCzgcVk45wfl-ITzmiQcdDnHnp7AwiWZzuphAO62MQ9iWuMda99FmMjorWx8uRxsZ-owhRVd5H3ChUVVXXydRRKWjOWtmzkjHsd03TYsl4Q2k7SNq0ieY9at-R6ppU-0R1LGcsr2hLW8aKMqtbKnshadXIWlZlQcocZ650tgJn1o2J67Ya-mX08VIrH_zrJfdejQbxkp8vYbKu-7mR9zUSkmwVd1u5fwCVWy3y">