<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    On 9/13/11 8:14 AM, Michael Clagett wrote:
    <blockquote cite="mid:BAY147-W331A621D0BBCAB0A5FD904CE050@phx.gbl"
      type="cite">
      <meta http-equiv="Content-Type" content="text/html;
        charset=ISO-8859-1">
      <style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 10pt;
font-family:Tahoma
}
--></style>
      <div dir="ltr">
        <style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 10pt;
font-family:Tahoma
}
--></style>
        <div dir="ltr"><br>
          Hi --<br>
          <br>
          I'm still very much a newbie with llvm, but am looking
          (hopefully) to use it to compile into native intel code a set
          of source that is a combination of byte codes for my own
          custom vm and intel code that has been coded in assembly
          language directly.<br>
          <br>
          In an earlier exchange, I already discovered that llvm does
          not do any optimizations on intel assembly language code. 
          This would be an interesting thing to add, I believe, and I
          may make some progress in that direction as I proceed.  But in
          the meantime I'm wondering if the following makes sense:  To
          write two separate translation mechanisms; one that translates
          the assembler code associated with each of my byte codes into
          a sequence of llvm intermediate code instructions, and the
          other to do the same with instructions coded directly in intel
          assembly (i.e there would be a one-to-one correspondence
          between intel assembly language statements and llvm
          intermediate code statements, substituting real register
          assignments with llvm virtual register assignments.<br>
        </div>
      </div>
    </blockquote>
    <br>
    Another option for handling the assembly language fragments is to
    convert them into inline assembly code within the LLVM IR that you
    generate.  This might be worth exploring if converting the assembly
    code into LLVM IR is either difficult or causes a performance hit.<br>
    <br>
    -- John T.<br>
    <br>
    <br>
    <blockquote cite="mid:BAY147-W331A621D0BBCAB0A5FD904CE050@phx.gbl"
      type="cite">
      <div dir="ltr">
        <div dir="ltr"><br>
          It strikes me that if I did this, I would then have
          instruction sequences (whether originating in my byte code or
          in intel assembly language) that could be submitted to the
          llvm optimization engine.  Does this make sense to any of you
          old hands?<br>
          <br>
          Thanks.<br>
          <br>
          Mike<br>
        </div>
      </div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
LLVM Developers mailing list
<a class="moz-txt-link-abbreviated" href="mailto:LLVMdev@cs.uiuc.edu">LLVMdev@cs.uiuc.edu</a>         <a class="moz-txt-link-freetext" href="http://llvm.cs.uiuc.edu">http://llvm.cs.uiuc.edu</a>
<a 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>
  </body>
</html>