<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    On 10/13/11 6:05 AM, Justin Holewinski wrote:
    <blockquote
cite="mid:CAJgxuaeAmG7d326HWQoBffdA4wty1XnPoy_pdkF=2cZwiS+BjA@mail.gmail.com"
      type="cite">
      <meta http-equiv="Content-Type" content="text/html;
        charset=ISO-8859-1">
      <div class="gmail_quote">On Thu, Oct 13, 2011 at 3:24 AM, Duncan
        Sands <span dir="ltr"><<a moz-do-not-send="true"
            href="mailto:baldrick@free.fr">baldrick@free.fr</a>></span>
        wrote:<br>
        <blockquote class="gmail_quote" style="margin:0 0 0
          .8ex;border-left:1px #ccc solid;padding-left:1ex;">
          Hi Justin,<br>
          <div class="im"><br>
            > Any opinions from the core developers?  It would be
            possible to add this pass to<br>
            > the default alias analysis passes for some target
            triples.<br>
            <br>
          </div>
          I guess either Chris can pronounce from on high whether it is
          OK to say that<br>
          pointers in different address spaces cannot alias each other,
          or you can contact<br>
          the main developers for each LLVM target and ask them what the
          situation is for<br>
          their target.  If pointers in different address spaces don't
          alias for any of<br>
          the currently supported LLVM targets then I think you can just
          add the logic to<br>
          basic alias analysis.<br>
        </blockquote>
        <div><br>
        </div>
        <div>Following the LLVM language reference, it is not required
          that they be alias-free.</div>
        <div><br>
        </div>
        <div>In the interests of getting this in before the branch, I
          could add it to the basic alias analysis, but leave it
          dependent on a command-line option that is off by default.
           Does this sound reasonable?</div>
      </div>
    </blockquote>
    <br>
    The only problem with this approach is that it doesn't allow a tool
    that links in the pass to programatically enable or disable the
    feature.<br>
    <br>
    I would recommend:<br>
    <br>
    1) Enhancing TargetData to know whether the different address spaces
    on a particular target are disjoint.<br>
    <br>
    2) Instead of using a command-line option to enable a feature, use
    an AnalysisGroup that BasicAA queries to see what to do.  The
    default pass in the AnalysisGroup tells BasicAA to turn the feature
    off.  A different pass in the Analysis Group tells BasicAA to turn
    the feature on.  That way, a user or a tool just schedules an
    additional pass to enable the feature.<br>
    <br>
    My two cents.<br>
    <br>
    -- John T.<br>
    <br>
    <blockquote
cite="mid:CAJgxuaeAmG7d326HWQoBffdA4wty1XnPoy_pdkF=2cZwiS+BjA@mail.gmail.com"
      type="cite">
      <div class="gmail_quote">
        <div> </div>
        <blockquote class="gmail_quote" style="margin:0 0 0
          .8ex;border-left:1px #ccc solid;padding-left:1ex;">
          <br>
          Ciao, Duncan.<br>
          <div>
            <div class="h5">_______________________________________________<br>
              llvm-commits mailing list<br>
              <a moz-do-not-send="true"
                href="mailto:llvm-commits@cs.uiuc.edu">llvm-commits@cs.uiuc.edu</a><br>
              <a moz-do-not-send="true"
                href="http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits"
                target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits</a><br>
            </div>
          </div>
        </blockquote>
      </div>
      <br>
      <br clear="all">
      <div><br>
      </div>
      -- <br>
      <br>
      <div>Thanks,</div>
      <div><br>
      </div>
      <div>Justin Holewinski</div>
      <br>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
llvm-commits mailing list
<a class="moz-txt-link-abbreviated" href="mailto:llvm-commits@cs.uiuc.edu">llvm-commits@cs.uiuc.edu</a>
<a class="moz-txt-link-freetext" href="http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits">http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits</a>
</pre>
    </blockquote>
    <br>
  </body>
</html>