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

    <tr>
        <th>Summary</th>
        <td>
            lld linking errors for ARM
        </td>
    </tr>

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

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

    <tr>
      <th>Reporter</th>
      <td>
          Dr-Itachi
      </td>
    </tr>
</table>

<pre>
    Hi. please help me. there's 2 days i still dont get the solution. How can i pass these linkers errors ? with gcc it worked without any issue. now i dont know why it not works with lld
ld.lld: error: undefined symbol: _init
>>> referenced by init.c:40 (/Volumes/data/jenkins/workspace/GNU-toolchain/arm-12-mpacbti/src/newlib-cygwin/newlib/libc/misc/init.c:40)
>>>               libc_a-init.o:(__libc_init_array) in archive /Applications/ArmGNUToolchain/12.2.mpacbti-bet1/arm-none-eabi/bin/../arm-none-eabi/lib/thumb/v7e-m+fp/hard/libc.a
clang-16: error: ld.lld command failed with exit code 1 (use -v to see invocation)
make: *** [build/TimerSTM32.elf] Error 1

And this
"/usr/local/bin/ld.lld" build/main.o build/gpio.o build/stm32f7xx_it.o build/system_stm32f7xx.o build/hw_desc_comT02_stm32f7.o build/hw_desc_timer_f746.o build/stm32f7xx_ll_gpio.o build/stm32f7xx_ll_rcc.o build/stm32f7xx_ll_utils.o build/stm32f7xx_ll_exti.o build/startup_stm32f746xx.o -Map=build/TimerSTM32.map --cref --gc-sections -Bstatic -T STM32F746ZGTx_FLASH.ld -L/Applications/ArmGNUToolchain/12.2.mpacbti-bet1/arm-none-eabi/bin/../arm-none-eabi/lib/thumb/v7e-m+fp/hard -L/Applications/ArmGNUToolchain/12.2.mpacbti-bet1/arm-none-eabi/bin/../arm-none-eabi/lib -L/usr/local/lib/clang/16/lib/baremetal -lc -lm -lgcc -o build/TimerSTM32.elf
ld.lld: error: STM32F746ZGTx_FLASH.ld:56: memory region not defined: RAM
>>> _estack = ORIGIN(RAM) + LENGTH(RAM);    /* end of RAM */
>>>                     ^
clang-16: error: ld.lld command failed with exit code 1 (use -v to see invocation)
make: *** [build/TimerSTM32.elf] Error 1

Here are my makefile and linker script
[files.zip](https://github.com/llvm/llvm-project/files/10072492/files.zip)

</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzVVk1vszgQ_jXkYoHAkKQ5cEjVpq3UdqW-efewF2TMAH5jY2Sbptlfv2NI0g-lK-1lVxsRbM-Mx88zHo8pdXXI70VEegnMAmlB9kRBRFwLBgK6tISSih0sEcQ6ISWpdOdIA85bEKvl4ITuInKv94SzDs16Zq1Xojcpuh0YS8AYjU2QbsheuJY0nBPhyF6bHVSjSA-OsO5AhLUDrt6hNzEttfP9fXvwEzo9TbKTGymrIL4J4rWsIt9P19NKvjN0FdSiQ_f2oEotvawQnXDTjCC9nR5ioEamHUfLEhdBi4ijcRaTgF4FdPM7UlRgsVcxx7D5Bd1OdF4wQukZxzht7p5_hk5ryVsmOhwzo8KEhgrVpRMosIbju4O9FGXID81-NJvG2MG31ythffMBRkBXXyF__vmZBQvHKRqnIOyiGIVeVDBj2AGdIDXCDG_FKyCzzbrvpeDMb56nsjYKGWw_EEhoRKMj_LAElxxJdbqDEFjpOZWjZRRdUE2sXDso374uIVQBva57HLTMVEfGEZu4ccm6JkwWn7Zw2lXCtVKsq0jNhDxmC4E3zAauKyCJ36YBcy18JU4TC4BEX_XE7Bw7xXbgXQZ0PT0kmF-Xg5AeyFYoMD-2TymNQNbB_IbceggkOcZ9fK8RgWuFPcooxYmDNZ4HLibPwTimIqXk5F5hPCN9Hja90B-G1qmU1su3t8Jv37v4YB2o4qz9oGr3RQWWFxiXbUxPJhcMnOdV1MtscXE9KYtvsaDOcP6dCo-8tN8p4c2JTzpm3NCfYGaLkUv4xPogvbmwA4r1JAw5nkpsGh5a4GOOkvAaXTnBSbglo-kGnf1xt30rNo_rH_cRZkr4-N8n9r8GYlrocwpO2MbD5NdYnEUlM6DAMUlCiRGUCv--CIfvG_XlFHxXVy-HHjXz8fAqUNocsKg2SH2s18cy7JUv66evpawA3FW-w6vhhvz28nD38IzH2dthwcKwksfb57vt_VkWpNe-5CFcf4YBz6SuvdvpYG_-vlBOv2B--3-pOfd4MWHNBqIOxHurEQzxsKZ7lVhuRH-60ObXXm2jP0WP7hBg61xvx_tg48sOUhjKCIn5pJCvpybsjf6FZwyH43yfN3G8pNmKnkSjyxOrGeTJYrFKlgkazao8rVbpis2ccBJyHzqPTXTN6c6vkdT65Wk2GJn_Y0Tj14CHNF8lWTpr8yXQFFcvaZYmQOf1sixLCqt6UWbzRRbHM8lKkDbHaGAQZiKnMaVJQtOYpvPsKlokabaqM1bVSVJmVyzIYsD6LCO_cKRNMzP5iKEcGotKKayz70r8shFNB3Dyzwb8cjH5jQkfMItbMRsB5yPavwBDtvQY">