<html>
    <head>
      <base href="https://llvm.org/bugs/" />
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW --- - Possible bug in ARMAsmBackend::processFixupValue()?"
   href="https://llvm.org/bugs/show_bug.cgi?id=27525">27525</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>Possible bug in ARMAsmBackend::processFixupValue()?
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>new-bugs
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>trunk
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>PC
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>Linux
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>NEW
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>normal
          </td>
        </tr>

        <tr>
          <th>Priority</th>
          <td>P
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>new bugs
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>unassignedbugs@nondot.org
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>daniel.sanders@imgtec.com
          </td>
        </tr>

        <tr>
          <th>CC</th>
          <td>llvm-bugs@lists.llvm.org
          </td>
        </tr>

        <tr>
          <th>Classification</th>
          <td>Unclassified
          </td>
        </tr></table>
      <p>
        <div>
        <pre>While looking into a MIPS issue with our fixup handling, I noticed that the
caller of processFixupValue() ignores any modifications to the 'Value' result.
The caller (MCAssembler::handleFixup()) makes it look like the modified value
is used but if you look inside ELFObjectWriter::recordRelocation() you'll see
that FixedValue is never read before it is overwritten. The same is true of
WinCOFFObjectWriter::recordRelocation(), and is true for most code paths in
ARMMachObjectWriter::recordRelocation().

ARM is currently the only target to modify the Value argument and does so for
certain fixups involving Thumb functions. Deleting the relevant code doesn't
cause any test failures so it seems that there are either no tests covering it
or something else is doing the same job.

Hope this helps.</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are on the CC list for the bug.</li>
      </ul>
    </body>
</html>