<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div text="#000000" bgcolor="#FFFFFF"><span class=""><blockquote type="cite"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div text="#000000" bgcolor="#FFFFFF">Actually, this
                brings up a related issue.  We seem to have no
                documentation in the lang ref about how vector types are
                represented in memory.  The actual implementation
                appears to assumed packed bits, but the docs don't say. 
                Depending on what the semantics here are, my assumptions
                in the last two paragraphs may not be valid.  <br>
              </div>
            </blockquote>
            <div><br>
            </div>
            <div>Indeed!</div>
          </div>
        </div>
      </div>
    </blockquote></span>
    Any clue how to start specifying this?  It would seem to be ABI
    dependent.  <br></div></blockquote><div><br></div><div>Maybe start a new threads here describing the problem? I don't really know otherwise.</div><div><br></div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div text="#000000" bgcolor="#FFFFFF"><span class=""><blockquote type="cite">
      <div dir="ltr">
        <div class="gmail_extra">
          <div class="gmail_quote">
            
            <blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
              <div text="#000000" bgcolor="#FFFFFF"><span>
                  <blockquote type="cite">
                    <div dir="ltr">
                      <div class="gmail_extra">
                        <ul>
                          <li>Once we add vector, should we consider
                            adding other composite types in general,
                            including structs? C++ allows this, but has
                            substantial issues w.r.t. padding.</li>
                        </ul>
                      </div>
                    </div>
                  </blockquote>
                </span> I'd say possibly, but FCAs are poorly supported
                in the IR in general.  I am not willing to block changes
                for vectors on changes for FCAs.  This has never been
                our policy in the past and should not become so now.  <br>
              </div>
            </blockquote>
            <div><br>
            </div>
            <div>Oh yeah I don't think we should block it. FWIW I expect
              that some of these will generate calls to the runtime's
              global atomic lock shard, which is horrible.</div>
          </div>
        </div>
      </div>
    </blockquote></span>
    "global atomic lock shard"?  I have no idea what you're referring
    to.  Is that something in libc?</div></blockquote><div><br></div><div>compiler-rt: <a href="https://github.com/llvm-mirror/compiler-rt/blob/master/lib/builtins/atomic.c">https://github.com/llvm-mirror/compiler-rt/blob/master/lib/builtins/atomic.c</a></div></div></div></div>