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

    <tr>
        <th>Summary</th>
        <td>
            Arm thumb assembler doesn't allow expression in 'adr' instruction
        </td>
    </tr>

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

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

    <tr>
      <th>Reporter</th>
      <td>
          eskimo-software
      </td>
    </tr>
</table>

<pre>
    When using clang (LLVM 14.0.0) to process assembler for armv6-m, the instruction 'adr Rn,<expr>' is only accepted if <expr> is a label.  An expression is not accepted.
However if <expr> is a .equ it is accepted, even id the .equ is defined by an exression

e.g. Not accepted:
  adr Rn, lbl+4

e,g, Accepted:
  .equ lbl_plus_4, lbl+4
  adr Rn, lbl_plus_4


</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJxtUsty2zAM_BrqgrGGoiQ_Djo4STM9pD300B4zfEAyE0p0Scpu_r6QbMdO0xkNRWKBxYJL5c1b82uHA4zRDh1oJ2llYv309PMbFFXOc87EBpKHffAaYwQZI_bKYYDWB5ChPywXPRP3kHYIdogpjDpZPxDLSpoAPwYCWXmPf_aBlV8oCjaCH9wbSK1xn9CAbeGaMcESnFTocoDtAFOcOk-cBA0-vRfmjD8wvv3qj3ggQf-hyfH3CDbNh3PRpJXSiczMmk8pEQy2diAxioRNTc89Ty1OK-ZdDt9vBLDyjAC8zwpOOSbuqg-FFO8mbPu5cO5PNc97N8bn6hPDP9SXtBv2zDSl2ZQbmSWbHDbb0NNkY69uzDIeI1GsSLtz_vjhUi9ezd5cHczG4JpdSvs4qRWP9HWWeFWuPTn-6Nzh8lvQ63hBnehoYxwx0qauRbHOdo3Rqq3KoljWulWq0HwjDBZLvcS1MUq02Wx1bFh9x4QY8AgzBe1Z_ZDZRnAheM0LwXlV8XytlnyDolSyWK8KXrGKYy-tyycduQ9dFppZkhq7SKCzMcUrSDdiuwFxbkf8ckw7HxqMr7b3i-jbdJQBs1lCM4_wFz9R_3M">