<html>
    <head>
      <base href="https://bugs.webkit.org/">
    </head>
    <body>
      <p>
        <div>
            <b><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - [Armv7] Linkbuffer: executableOffsetFor() fails for location 2"
   href="https://bugs.webkit.org/show_bug.cgi?id=186765#c8">Comment # 8</a>
              on <a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - [Armv7] Linkbuffer: executableOffsetFor() fails for location 2"
   href="https://bugs.webkit.org/show_bug.cgi?id=186765">bug 186765</a>
              from <span class="vcard"><a class="email" href="mailto:mark.lam@apple.com" title="Mark Lam <mark.lam@apple.com>"> <span class="fn">Mark Lam</span></a>
</span></b>
        <pre>Comment on <span class=""><a href="attachment.cgi?id=342936&action=diff" name="attach_342936" title="Patch">attachment 342936</a> <a href="attachment.cgi?id=342936&action=edit" title="Patch">[details]</a></span>
Patch

View in context: <a href="https://bugs.webkit.org/attachment.cgi?id=342936&action=review">https://bugs.webkit.org/attachment.cgi?id=342936&action=review</a>

<span class="quote">>>> Source/JavaScriptCore/assembler/LinkBuffer.h:300
>>> +        if (location < sizeof(int32_t))
>> 
>> Why is it ever valid to pass a location of 2 and expect it to map to an offset of 0?  It looks to me like this change is trying to mask the bug instead of fixing it.  Please provide justification as why this is valid, or if this isn't the real issue, fix the real issue instead.

> I'm fine with this change.  Since the buffer records the offsets prior to the current location and the offsets are stored as int32_t values, this works.  You might want to add a comment that no compaction can happen before this point.</span >

For the record, I withdraw my objection after speaking with Michael and looking at the code.  Please add the comment that the reason this works is because at (offset < sizeof(int32_t)), no compaction could have happened before this point as the assembler could not have placed a branch instruction within this space that required some compaction.  Hence, 0 is the correct result.</pre>
        </div>
      </p>


      <hr>
      <span>You are receiving this mail because:</span>

      <ul>
          <li>You are the assignee for the bug.</li>
      </ul>
    </body>
</html>