<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <div class="moz-cite-prefix">I suppose I was just doing the
      "smallest" thing. Disabling the hack entirely also allows it to
      build and is probably the correct thing to do. I'm not that
      knowledgeable about glibc vs. Bionic differences so the thing to
      do would be to test whether those functions work without the
      "hack" on Android. Unfortunately at the moment I can't get my
      Android JIT test program to actually run; it crashes somewhere in
      LLVM without any useful output (the debugger also crashes), so
      that one's going to take some time to figure out.<br>
      <br>
      On 05/11/13 07:33, Alp Toker wrote:<br>
    </div>
    <blockquote cite="mid:52789F57.4070000@nuanti.com" type="cite">
      <meta content="text/html; charset=ISO-8859-1"
        http-equiv="Content-Type">
      The CMake changes look fine to me, landed in r194051!<br>
      <br>
      As for the JITMemoryManager.cpp changes, not so sure. Did you try
      disabling the 'hack' described below instead of patching it?<br>
      <br>
      <br>
      <code><br>
      </code><code>//===----------------------------------------------------------------------===//</code><code><br>
      </code><code>// Function stubs that are invoked instead of certain
        library calls</code><code><br>
      </code><code>//</code><code><br>
      </code><code>// Force the following functions to be linked in to
        anything that uses the</code><code><br>
      </code><code>// JIT. This is a hack designed to work around the
        all-too-clever Glibc</code><code><br>
      </code><code>// strategy of making these functions work
        differently when inlined vs. when</code><code><br>
      </code><code>// not inlined, and hiding their real definitions in
        a separate archive file</code><code><br>
      </code><code>// that the dynamic linker can't see. For more info,
        search for</code><code><br>
      </code><code>// 'libc_nonshared.a' on Google, or read <a
          moz-do-not-send="true" class="moz-txt-link-freetext"
          href="http://llvm.org/PR274">http://llvm.org/PR274</a>.</code><code><br>
      </code><code>#if defined(__linux__)</code><br>
      <br>
      ^ ie try making this defined(__linux__) &&
      !defined(__BIONIC__)<br>
      <br>
      Alp.<br>
      <br>
      <br>
      <div class="moz-cite-prefix">On 31/10/2013 00:08, James Lyon
        wrote:<br>
      </div>
      <blockquote cite="mid:52719F7A.5020706@gmail.com" type="cite">I've
        been trying to get LLVM JIT compilation working on Android for
        the last few days. The patch I needed to get it to build is
        attached (nothing major - CMake configuration header typo and
        avoiding open64 which is missing on Android). <br>
        <br>
        Sadly even though it builds I can't get generated code to work -
        it appears at the moment that the generated code doesn't have
        execute permissions set for some reason (this is 3.3, not svn).
        <br>
        <br>
        James <br>
        <br>
        <fieldset class="mimeAttachmentHeader"></fieldset>
        <br>
        <pre wrap="">_______________________________________________
LLVM Developers mailing list
<a moz-do-not-send="true" class="moz-txt-link-abbreviated" href="mailto:LLVMdev@cs.uiuc.edu">LLVMdev@cs.uiuc.edu</a>         <a moz-do-not-send="true" class="moz-txt-link-freetext" href="http://llvm.cs.uiuc.edu">http://llvm.cs.uiuc.edu</a>
<a moz-do-not-send="true" class="moz-txt-link-freetext" href="http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev">http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev</a>
</pre>
      </blockquote>
      <br>
      <pre class="moz-signature" cols="72">-- 
<a moz-do-not-send="true" class="moz-txt-link-freetext" href="http://www.nuanti.com">http://www.nuanti.com</a>
the browser experts
</pre>
    </blockquote>
    <br>
  </body>
</html>