<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div><div>On Sep 25, 2011, at 5:45 PM, David Meyer wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite">Cameron,<div><br></div><div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; position: static; z-index: auto; "><div style="word-wrap:break-word"><div>With regards to your comment that it is inconsiderate to break the tree intentionally, you are forgetting that this was an experimental feature that never worked outside of small test cases. Neither Clang nor llvm-gcc will generate byval on ARM, so it gets no real testing. It might be more considerate to users to just add an assert saying that ARM byval doesn't work.</div>


</div></blockquote><div><br></div><div>I dislike the idea of selective IR support. This creates a hidden (undocumented) contract between the frontends and backends, which limits the IR that is valid. It also treats external producers of bitcode as second-class citizens, since they must effectively mimic Clang or DragonEgg to guarantee that their output will be supported. It is nicer if every backend can handle any valid bitcode (even if doing so is not terribly efficient).</div></div></div></blockquote><div><br></div><div>I dislike it too, but be warned that there are other things that just plain aren't supported by the ARM backend, e.g. arbitrary vector types.</div><br><blockquote type="cite"><div><div class="gmail_quote"><div><div>If there are no more objections, I'll commit, and un-XFAIL the tests which now pass.</div></div></div></div></blockquote><blockquote type="cite"><div><div class="gmail_quote"><div>(2011-06-09-TailCallByVal.ll and 2010-11-04-BigByval.ll)</div></div></div></blockquote><br></div><div>No objections from me.</div><div><br></div><div>Cameron</div><br></body></html>