<html>
    <head>
      <base href="https://bugs.webkit.org/" />
    </head>
    <body>
      <p>
        <div>
            <b><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - Remove LLVM dependencies from WebKit"
   href="https://bugs.webkit.org/show_bug.cgi?id=154323#c8">Comment # 8</a>
              on <a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - Remove LLVM dependencies from WebKit"
   href="https://bugs.webkit.org/show_bug.cgi?id=154323">bug 154323</a>
              from <span class="vcard"><a class="email" href="mailto:fpizlo&#64;apple.com" title="Filip Pizlo &lt;fpizlo&#64;apple.com&gt;"> <span class="fn">Filip Pizlo</span></a>
</span></b>
        <pre>I've confirmed that the LLVM disassembler is only used when the FTL is used. For example:

#if !defined(USE_LLVM_DISASSEMBLER) &amp;&amp; HAVE(LLVM) &amp;&amp; (CPU(X86_64) || CPU(X86) || CPU(ARM64))
#define USE_LLVM_DISASSEMBLER 1
#endif

Notice that it's only enabled on platforms where we also have our own disassembler, and we will use our own disassembler on those platforms except for code generated by LLVM.

Also this:

    const char* triple;
#if CPU(X86_64)
    triple = &quot;x86_64-apple-darwin&quot;;
#elif CPU(X86)
    triple = &quot;x86-apple-darwin&quot;;
#elif CPU(ARM64)
    triple = &quot;arm64-apple-darwin&quot;;
#else
#error &quot;LLVM disassembler currently not supported on this CPU.&quot;
#endif

Clearly, if you tried to use the LLVM disassembler on any platform other than the ones where we also have our own disassemblers, you'd get a compile-time error.

Because of this, it's clear that the LLVM disassembler is dead code on every platform, including ARM traditional.</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>