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

    <tr>
        <th>Summary</th>
        <td>
            Compilation failure in Webkit 2.48.0 with Clang-20 on ARM
        </td>
    </tr>

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

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

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

<pre>
    While compiling webkit 2.48.0 with Clang-20 using internal assembler it ends up with following errors

```
<inline asm>:320:1: error: Relocation Not In Range
  320 | movw r4, #:lower16:.Lllint_op_tail_call_varargs - .Lllint_relativePCBase
      | ^
<inline asm>:321:1: error: Relocation Not In Range
  321 | movt r4, #:upper16:.Lllint_op_tail_call_varargs - .Lllint_relativePCBase
      | ^
<inline asm>:325:1: error: Relocation Not In Range
  325 | movw r4, #:lower16:.Lllint_op_call_varargs - .Lllint_relativePCBase
      | ^
<inline asm>:326:1: error: Relocation Not In Range
  326 | movt r4, #:upper16:.Lllint_op_call_varargs - .Lllint_relativePCBase
      | ^
<inline asm>:330:1: error: Relocation Not In Range
  330 | movw r4, #:lower16:.Lllint_op_iterator_next - .Lllint_relativePCBase
      | ^
<inline asm>:331:1: error: Relocation Not In Range
  331 | movt r4, #:upper16:.Lllint_op_iterator_next - .Lllint_relativePCBase
      | ^
<inline asm>:335:1: error: Relocation Not In Range
  335 | movw r4, #:lower16:.Lllint_op_construct_varargs - .Lllint_relativePCBase
      | ^
<inline asm>:336:1: error: Relocation Not In Range
  336 | movt r4, #:upper16:.Lllint_op_construct_varargs - .Lllint_relativePCBase
      | ^
<inline asm>:345:1: error: Relocation Not In Range
  345 | movw r4, #:lower16:.Lllint_op_iterator_open - .Lllint_relativePCBase
      | ^
<inline asm>:346:1: error: Relocation Not In Range
  346 | movt r4, #:upper16:.Lllint_op_iterator_open - .Lllint_relativePCBase
      | ^
<inline asm>:350:1: error: Relocation Not In Range
  350 | movw r4, #:lower16:.Lllint_op_instanceof - .Lllint_relativePCBase
      | ^
<inline asm>:351:1: error: Relocation Not In Range
  351 | movt r4, #:upper16:.Lllint_op_instanceof - .Lllint_relativePCBase
      | ^
<inline asm>:355:1: error: Relocation Not In Range
  355 | movw r4, #:lower16:.Lllint_op_set_private_brand - .Lllint_relativePCBase
      | ^
<inline asm>:356:1: error: Relocation Not In Range
  356 | movt r4, #:upper16:.Lllint_op_set_private_brand - .Lllint_relativePCBase
      | ^
<inline asm>:360:1: error: Relocation Not In Range
  360 | movw r4, #:lower16:.Lllint_op_check_private_brand - .Lllint_relativePCBase
      | ^
<inline asm>:361:1: error: Relocation Not In Range
  361 | movt r4, #:upper16:.Lllint_op_check_private_brand - .Lllint_relativePCBase
      | ^
<inline asm>:365:1: error: Relocation Not In Range
  365 | movw r4, #:lower16:.Lllint_op_put_by_id - .Lllint_relativePCBase
      | ^
<inline asm>:366:1: error: Relocation Not In Range
  366 | movt r4, #:upper16:.Lllint_op_put_by_id - .Lllint_relativePCBase
      | ^
<inline asm>:370:1: error: Relocation Not In Range
  370 | movw r4, #:lower16:.Lllint_op_construct - .Lllint_relativePCBase
      | ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
```

Here is cmdline options used

```
arm-yoe-linux-gnueabi/arm-yoe-linux-gnueabi-clang++ -target arm-yoe-linux-gnueabi -mthumb -mfpu=neon -mfloat-abi=hard -mcpu=cortex-a15 -mlittle-endian -c a.cpp -std=c++23
```

If I use `-fno-integrated-as` then compile succeeds, so thats my workaround for now but I think it is something to be root caused.



[a.cpp.zip](https://github.com/user-attachments/files/19380358/a.cpp.zip)
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJy8mEFvpDYUxz-N5_LkEWMDQw4cSLJRI7VVtZc9jgw8wBtjI_uR2fTTV2aSXbW7XcnKtCMkhsE2P_7-jdFDhaBHi1iz4pYV9zu10uR8_eTV513r-pf606QNQufmRRttRzhj-6QJxD6v9hmcNU1wZ5QduchgDbGFtoTeKgMqBJxbgx40Ado-wLpcegzOGHeOjdF75wPLmriV2euWNUzeaWu0RVBhZvIDk40UGZPNgcnm0it--YjGdYq0s_C7I3i08FHZEVnWAEiRATveweyez-BzJu6ACclkY9wZ_aFkstn_aoy2dHLLiZQ2p04Zc3pWXvkxAIe30x6NIv2Mf9zdqnAZPH7i4Kz48G-0h0Tawxst_Y12XZb_g7ZIpC0Ssr0qaJkIWibEek1QmWirTLFVE3pFzp8sfqF3kyaaKlNMvS5poqUyyVJnA_m1o6sZkKiqTFL12rR5YrZ5SrZfLXAL2neTJuaap-R6VdIicQ0oktYAG0jZDt3wbszEBaBIWgCuh5loaJFiaEA6LV4_K8JT65Xt302baGmRYunVactEU8sUU7sJu6cr8yYqW6Yo-1_wJrpbpri7rHRqX076_ZSJzpYpzl6N8pjo6jHJ1bfnagrloEiZbzTkHMzKvrxWN4CzJsI-XjmQW5ZY-Fh3Blbc8mFrw42eNTF5z4p7ljUie-s6oo3PI-z3_yyQsuYX9Ag6QDf3W0JuiQEEWAP231dUys_8xSE32q5f-GhXVK1m4uGHv_Mu1nRM3DJxC5yUH5Hghy2BzzStcwt8HpaVyXuLzsYD4xTxeAl5PynfA5-77XznPOEXrg4F8NloIoMcba-VBd6B2nfLAjxQH5teAIT8_t4fB3iMNwqszPhgHY9V57glxVVgZQY0oX2tWxHC2nWIfdimwAFNigLML3B2_kl5t9oeBue3SWlXgkegSdunWLfqAMHNGI9HIActgneOoFMx5v1rzpetuN3w93_qJc6jqCaiJTDZMPHAxMOoaVrbfedmJh7WgJ4rItVNM1oKTDwM2mDcH25klcmiipPzdTxxs-tr2d_IG7XD-nDMRSHK6ljtpvooj0PeyeNRiDwvjoXKykFVbSkUltWQ5ztdi0wUmRSHTB5yWe3L7Fh1N32Vq5v20FcdyzOclTZ7Y57nvfPjToewYn2QQgqxM6pFE7ZXBEJYPMN2lgnBivudr2Mn3q5jYHlmdKDwbRjSZLC-22bh8vcclDZr9NbCp5-8SnAWmo-_7VZv6p-EGK_zuuOLd5-xIyYeNrotyAv-cy3-CgAA__-E5jYG">