<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/89197>89197</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
[LLD][ARM] Link fails when using `-frwpi` and debug symbols
</td>
</tr>
<tr>
<th>Labels</th>
<td>
lld
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
hpfaz
</td>
</tr>
</table>
<pre>
Tested from clang-16 to clang-18 (x86-64) cross-compiling to arm-none-eabi, please refer to https://godbolt.org/z/GEf89sqs3
test code is:
```
int val = 42;
int test(int num) {
return val * num;
}
```
Clang command line is:
`
--target=arm-none-none-eabi
-g
-O0
-frwpi
-v
-nostdlib
`
LLD fails with:
`ld.lld: error: /tmp/example-5528f7.o:(.debug_info+0x33): has non-ABS relocation R_ARM_SBREL32 against symbol 'val'`
Using `-g0` instead of `-g` will link as expected.
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJxsU1-PpDYM_zTmxWIECX8feJg5jr7MqdJe-7xKSGDShoQmYXfuPn0VmN1bbSuh2MQ_O_bPNvNezUbKDsoLlH3CtnCzrrutE_uZcCt-dH9IH6TAydkFR83MnOYVBvumNwikuTdVWhVAWhyd9T4d7bIqrcwcgcwtqbFGppJxBeQLrloyL9HJSboIuIWweqBnIAOQYbaCWx1O1s1Ahp9Aht--Tk3r__EUsh6y83EG6QOOVkhUu-9hqrLHt_8qE_CFaQTaY0GAXj4GiMYYBEgTVbMtMX-oHyBERCfD5swRgpx3yHuMuv_fJ4_zS-QGR7sszAjUyvwny11J08DcLAPQ_p2kX0wdkPkhf3_zmdzr-mZ8eUhjfRBa8U_xj_N67XFiSnt8VeH2MQstTloLoGeUzlkXFSBDWFYgg7yzZdUyLUvSTPXJ7v1pTkLybX5WZrJALtmdUiBt9Lsxj8aa9Hz5jk5qO7KgrMGn5_PTt-fvl6evV0qQzUwZH9D_WLiNnNYvTAOpPyX8p4-TA1WWzpFYjD6SCbTTcRnvXpXWkdi_kXmU91WOQYpTIjoqWtqyRHZ5ndOClnmZJbeuzRtBi6qoeVMwzssyG1s6yUrwija8qhLVkYwUWZE3eZYTmp2mklU1y7KST4QKXkORyYUpfdL6ZYnDmSjvN9k1bd7WiWZcar8vESGRU0LiNrkuolO-zR6KTCsf_C__oILe9-567aHsobycn75B2eM1lvXo2E0a3N75OHpfZRjHam_Fg0ufbE53nxZJhdvGT6NdgAzx1YdIV2f_kmMAMuwleCDDXsW_AQAA___1ujL-">