<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <p><br>
    </p>
    <div class="moz-cite-prefix">On 05/25/2018 02:01 PM, Friedman, Eli
      via cfe-dev wrote:<br>
    </div>
    <blockquote type="cite"
      cite="mid:25e7b79a-c309-7d7a-42d3-130677045b94@codeaurora.org">
      <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
      <div class="moz-cite-prefix">On 5/25/2018 11:46 AM, JF Bastien
        wrote:<br>
      </div>
      <blockquote type="cite"
        cite="mid:7A085E79-CC0C-4709-8405-2F2032DFDC3F@apple.com"> <br
          class="">
        <div><br class="">
          <blockquote type="cite" class="">
            <div class="">On May 25, 2018, at 11:38 AM, Friedman, Eli
              <<a href="mailto:efriedma@codeaurora.org" class=""
                moz-do-not-send="true">efriedma@codeaurora.org</a>>
              wrote:</div>
            <br class="Apple-interchange-newline">
            <div class="">
              <div text="#000000" bgcolor="#FFFFFF" class="">
                <div class="moz-cite-prefix">On 5/25/2018 11:29 AM, JF
                  Bastien via cfe-dev wrote:<br class="">
                </div>
                <blockquote type="cite"
                  cite="mid:AC7AF159-592E-4EA7-9AA4-A8242D750526@apple.com"
                  class="">
                  <div class="">
                    <div class="">
                      <ol class="MailOutline">
                        <li class="">Teach the target infrastructure
                          that hardware interference size is something
                          they can specify (in tablegen files
                          somewhere).</li>
                        <li class="">Allow overriding the value in
                          sub-targets using -march or -mcpu (the
                          sub-target defines the numeric value, and the
                          user gets the overriden one by using -march or
                          -mcpu).</li>
                      </ol>
                    </div>
                  </div>
                </blockquote>
                <br class="">
                We can't change the value based on -mcpu.  We generally
                allow mixing code built with different values of -mcpu. 
                And any code which is linked together must use the same
                value for hardware_destructive_interference_size, or
                else we violate ODR.<br class="">
              </div>
            </div>
          </blockquote>
          <div><br class="">
          </div>
          <div>Interesting point. The case I’d like to cover is one
            where the developer wants to get the exact right value for
            their particular CPU, instead of a conservative answer with
            extra padding. How do you think we should meet this use
            case?</div>
          <br class="">
        </div>
      </blockquote>
      <br>
      Go back to the standards committee and ask for a function that
      isn't constexpr?  I can't think of any other reasonable solution.<br>
    </blockquote>
    <br>
    Unfortunately, to define structure layouts they need to be constant.<br>
    <br>
    The best solution I've thought of is to extend the abi_tag support
    to force the mangling of interfaces depending on values of these
    constructs to be different.<br>
    <br>
     -Hal <br>
    <br>
    <blockquote type="cite"
      cite="mid:25e7b79a-c309-7d7a-42d3-130677045b94@codeaurora.org"> <br>
      -Eli<br>
      <pre class="moz-signature" cols="72">-- 
Employee of Qualcomm Innovation Center, Inc.
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, a Linux Foundation Collaborative Project</pre>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
cfe-dev mailing list
<a class="moz-txt-link-abbreviated" href="mailto:cfe-dev@lists.llvm.org">cfe-dev@lists.llvm.org</a>
<a class="moz-txt-link-freetext" href="http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev">http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev</a>
</pre>
    </blockquote>
    <br>
    <pre class="moz-signature" cols="72">-- 
Hal Finkel
Lead, Compiler Technology and Programming Languages
Leadership Computing Facility
Argonne National Laboratory</pre>
  </body>
</html>