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

    <tr>
        <th>Summary</th>
        <td>
            [clang][clang-cl][x86] <unknown>:0: error: value evaluated as 264 is out of range.
        </td>
    </tr>

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

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

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

<pre>
    - test.cpp
```C++
#include "stdio.h"
#include <windows.h>

int main() { return 0; }

```

- Generate assembly and  edit the assembly file to add the following content
```asm
        call my_fun
        call my_fun
        call my_fun     
        call my_fun
        call my_fun
        call my_fun     
        call my_fun
        call my_fun
        call my_fun     
        call my_fun
        call my_fun
        call my_fun     
        call my_fun
        call my_fun
        call my_fun     
        call my_fun
        call my_fun
        call my_fun     
        call my_fun
        call my_fun
        call my_fun     
        call my_fun
        call my_fun
        call my_fun     
        call my_fun
        call my_fun
        call my_fun     
        call my_fun
        call my_fun
        call my_fun     
        call my_fun
        call my_fun
        call my_fun     
        call my_fun
        call my_fun
        call my_fun     
        call my_fun
        call my_fun
        call my_fun     
        call my_fun
        call my_fun
        call my_fun     
        call my_fun
        call my_fun
        call my_fun     
        call my_fun
        call my_fun
        call my_fun     
        call my_fun
        call my_fun
        call my_fun     
        call my_fun
        call my_fun
        call my_fun     
        my_fun:
```
#### clang

- generate the program
```asm
        .text
        .def    @feat.00;
        .scl    3;
        .type   0;
        .endef
        .globl  @feat.00
.set @feat.00, 0
        .intel_syntax noprefix
        .file   "test.cpp"
        .def    main;
        .scl    2;
        .type   32;
        .endef
        .globl  main # -- Begin function main
        .p2align        4, 0x90
main:                                   # @main
.seh_proc main
# %bb.0:
        call my_fun
        call my_fun
        call my_fun     
        call my_fun
        call my_fun
        call my_fun     
        call my_fun
        call my_fun
        call my_fun     
        call my_fun
        call my_fun
        call my_fun     
        call my_fun
        call my_fun
        call my_fun     
        call my_fun
        call my_fun
        call my_fun     
        call my_fun
        call my_fun
        call my_fun     
        call my_fun
        call my_fun
        call my_fun     
        call my_fun
        call my_fun
        call my_fun     
        call my_fun
        call my_fun
        call my_fun     
        call my_fun
        call my_fun
        call my_fun     
        call my_fun
        call my_fun
        call my_fun     
        call my_fun
        call my_fun
        call my_fun     
        call my_fun
        call my_fun
        call my_fun     
        call my_fun
        call my_fun
        call my_fun     
        call my_fun
        call my_fun
        call my_fun     
        call my_fun
        call my_fun
        call my_fun     
        call my_fun
        call my_fun
        call my_fun     
        my_fun:
        push    rax
        .seh_stackalloc 8
        .seh_endprologue
        mov     dword ptr [rsp + 4], 0
        xor     eax, eax
        pop     rcx
        ret
        .seh_endproc
 # -- End function
        .section        .drectve,"yni"
        .ascii  " /DEFAULTLIB:libcmt.lib"
        .ascii  " /DEFAULTLIB:oldnames.lib"
        .ascii  " /FAILIFMISMATCH:\"_CRT_STDIO_ISO_WIDE_SPECIFIERS=0\""
        .ascii  " /DEFAULTLIB:uuid.lib"
        .ascii  " /DEFAULTLIB:uuid.lib"
        .addrsig

```
- code compilation failed. **It seems that if you call `call my_fun` greater than 50, you will get an error message, which should not be, as long as the instruction is valid, it should compile successfully**
```
clang-cl test.asm
<unknown>:0: error: value evaluated as 271 is out of range.
<unknown>:0: error: value evaluated as 271 is out of range.
```

#### gcc

- generate the program
```ASM
        .file   "test.cpp"
        .intel_syntax noprefix
        .text
        .def    ___main;        .scl    2;      .type   32;     .endef
        .section .rdata,"dr"
LC0:
        .ascii "hello world\0"
        .align 2
LC1:
        .ascii "h\0e\0l\0l\0o\0 \0w\0o\0r\0l\0d\0\0\0"
        .align 2
LC2:
        .ascii "`O}Y\26NLu\0\0"
        .text
        .globl  _main
        .def    _main;  .scl    2;      .type   32;     .endef
_main:
LFB516:
        call my_fun
        call my_fun
        call my_fun     
        call my_fun
        call my_fun
        call my_fun     
        call my_fun
        call my_fun
        call my_fun     
        call my_fun
        call my_fun
        call my_fun     
        call my_fun
        call my_fun
        call my_fun     
        call my_fun
        call my_fun
        call my_fun     
        call my_fun
        call my_fun
        call my_fun     
        call my_fun
        call my_fun
        call my_fun     
        call my_fun
        call my_fun
        call my_fun     
        call my_fun
        call my_fun
        call my_fun     
        call my_fun
        call my_fun
        call my_fun     
        call my_fun
        call my_fun
        call my_fun     
        call my_fun
        call my_fun
        call my_fun     
        call my_fun
        call my_fun
        call my_fun     
        call my_fun
        call my_fun
        call my_fun     
        call my_fun
        call my_fun
        call my_fun     
        call my_fun
        call my_fun
        call my_fun     
        call my_fun
        call my_fun
        call my_fun     
        my_fun:
        .cfi_startproc
        lea     ecx, [esp+4]
        .cfi_def_cfa 1, 0
        and     esp, -16
        push    DWORD PTR [ecx-4]
        push    ebp
        .cfi_escape 0x10,0x5,0x2,0x75,0
        mov     ebp, esp
        push    ecx
        .cfi_escape 0xf,0x3,0x75,0x7c,0x6
        sub     esp, 20
        call    ___main
        mov     DWORD PTR [esp], OFFSET FLAT:LC0
        call    _printf
        mov     DWORD PTR [esp+12], 0
        mov     DWORD PTR [esp+8], OFFSET FLAT:LC1
        mov     DWORD PTR [esp+4], OFFSET FLAT:LC2
        mov     DWORD PTR [esp], 0
        mov     eax, DWORD PTR __imp__MessageBoxW@16
        call    eax
        sub     esp, 16
        mov     eax, 0
        mov     ecx, DWORD PTR [ebp-4]
        .cfi_def_cfa 1, 0
        leave
        .cfi_restore 5
        lea     esp, [ecx-4]
        .cfi_def_cfa 4, 4
        ret
        .cfi_endproc
LFE516:
        .ident  "GCC: (i686-win32-dwarf-rev0, Built by MinGW-W64 project) 8.1.0"
        .def    _printf;        .scl    2;      .type   32;     .endef

```
- code compiled successfully
```
gcc.exe test.s
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzsWV1v6jwS_jXujUVkHJKSCy74KGeReravTruq9go59iR4j7Ej2ynw71dO-Aqlb9vVSrvSS0UdYs8zH4kz8wxhzslSA4xQMkHJ7I7VfmXsyJo10yujpGC7imnOfoO7y43YjXrYg_MRrypEZoiMUUrazxTRSfi0szSWmqtaAEaUOi-kiVaI0ver8XQjtTAbF61Q_LBfb0apPV4zqREdIpphdD_BFnxtNSYonmB0PzuXPvpxPtnDP0CDZR4wcw7WudphpgXGIKTHfnU2XUgF2BvMhGgWCqOU2UhdYm60B-0vzDC3PljKOFMKr3fLotZfn8tu8Bv8Br_Bvwvfz8QfJD4aHz-YK6bLbkIsDwkxJLnKmtKy9Z-ktsjD1p_OBBTBlQEpgPmIhER8WnRcIZLFnTm_qwCRrCsIutFzOC2VyVVXbbMWOfD4bJJOMTmhpPaglm6nPdtibSoLhdyelkM-DzopPdarY_k5BtKUl_ch0GshxPQrMQSNOFz6Xg9PoJQaF7XmXhrd1rIjoKJMyTLc2EET2Dbbx9b6NMaf_wUzaEBOeiMHq2VlDT-3FYRokucROW2Z__UWvsFv8Bv8rwO_LFkkq2q3QiSz7Cxlh-zlPOO_mVKG42F3BbSorFGmrOGk17whkomNsQJX3mKUTKyrMKITPEDJrFsxtsYikgHbhmk4M1yZKrjCTzMW_DXjvJ085PcHLY7Z_Vx8P5FFwgL3b4DoFFG607JTgZjjUrYVCiM6nz3Mx_94fHlcTFA8VjLnax8pmX8ZYpTQbA3uM9B8vHhczH8unn-OX6Z_C7ckCd4tp79els8vs8XTcvH8tHxdzB6Wz388TBfzxcOvZxTPSCv3ZX_qWopvBXAdIIR1skNhLvhOD3MjAHOzrqRiTaEtmFQgIozoGNHxwmMHsHbYr5jHssA7U-Nmn6KUnO_XlODSAvNgg6jGScM4gvRGKoVL8JhpDNYai9fgHCvDncWbleQr7FamVgJr43HeTDOHldFlOAamJbXztm6JgHT4jSkpgpj0B2gbAWBXcw7OFbVSuzaCq3E31K7HVduOnyhbPK31b202OnTT8TgU_dbn8OWNqRowhAPzIIJz9L4fHDK1x6bAlukSov--qmvNeYeplpx_m6eOn39-me99whavsdzlcnnkh11meMkJ37HBfQ7AkRXMs_b5F_bo0OO0w8XaxwIjSleglMEbY5VAyZR0H4VAF_FRQ_8DDQEHYVDHwYQBh2FzPLXH1dbS4f9PLNLrFlFKntD97J8omdL074_1VVXd63sgy8suJd5f9v_kou9Be_8e55Okn97o7g1-g9_g_w90N-KFDNzW-hONRCRTwAIl5Q0lRckEXIXopKGuHaSAYskLhvtdRsu0CPAAmuJeP71k17PXp18z_MfLr0Y33_Y6mvdCkFddY-A4qwCTbT8QILJNmpE2431zcsG_g4ZAqV31TvcZp-7qLhp18ZnS7T1vDqcoXJ2fwqOkc9XP6nPXmW7Mrtq3AU_z-fPDC54_jl9Q3BTgS22VldoXn2mjkz5911l8KDv8wHr_c-jgAyj9Wrzv7lHb9pykl0u5rpbLny2RnZjtKxqQsy20vyznfVLnfpyJdiy8M8wvDAc386r35U2ugL1BV9KC88YCTi4fpNa1a5u9Y6H5xW1wvdtrdul5t_c4f7ggE5EUzfugQDZ_TKeBDSM6lOkw7W2kjmlPbJgtehbemg5iUkvlcb7DP6X-8dp7TQeBz_4LuEc0w8OoH5ErP00e9uO32ednPRKIbotxDVByHsEW2t7CXYjciVEssjhjdzDqp8M-TdM0Te5Wo2KQpmSYisF9nhKexff9LOnHA5KKrEizweBOjiihMRn0w6FPkqhf5HkBbNinBEiaAxoQWDOpIqXe1pGx5Z10roZRSsmwf6dYDsod3lTaURDq5XXp0IAo6bw7wbz0qnmn2f4CnswOX3tctWfbYYqSGf5-k5MO3jU5d7VVo5X3lQvbhM4RnZfSr-o84maN6Dy4tT_0jrd-3oTmEJ030f07AAD__ydScg4">