<div dir="ltr"><br><br><div class="gmail_quote"><div dir="ltr">On Sun, Mar 5, 2017 at 8:29 AM Craig Topper via Phabricator <<a href="mailto:reviews@reviews.llvm.org">reviews@reviews.llvm.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">craig.topper added a comment.<br class="gmail_msg">
<br class="gmail_msg">
Removing the And, Or, Xor functions could be removed separately.<br class="gmail_msg">
<br class="gmail_msg">
The change to getBitsSet and intersects were necessary because of the operator functions being moved out of line. But they could be done as a pre-patch.<br class="gmail_msg"></blockquote><div><br>If you like, might make the patch quicker/easier to review.<br> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br class="gmail_msg">
I hadn't looked at the move constructor. I was basing this on r276470 and assuming it was ok. Should I change it to use memcpy like the move assignment operator?<br class="gmail_msg"></blockquote><div><br>Even the assignment operator sort of seems not quite right - but maybe I'm being overly cautious/incorrect here. (I'd expect it to need to memcpy the union itself (which would need a name)).<br><br>Could also use the 'unified assignment operator' style - simplifying the copy/move assignment operator to rely on the copy/move ctors.<br> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br class="gmail_msg">
<br class="gmail_msg">
<a href="https://reviews.llvm.org/D30612" rel="noreferrer" class="gmail_msg" target="_blank">https://reviews.llvm.org/D30612</a><br class="gmail_msg">
<br class="gmail_msg">
<br class="gmail_msg">
<br class="gmail_msg">
</blockquote></div></div>