I wonder if it's time to simplify these functions.  There's no reason each function has to repeat the entire if statement.<br><br>It seems each function could be<br><br>if (!Result)<br>  return Case(S0).Cases(S1, ...);<br>return *this;<br><br>Then the memcmp is only in one function and all other functions become really short<br><div class="gmail_quote"><div dir="ltr">On Fri, Sep 23, 2016 at 1:37 PM Rui Ueyama <<a href="mailto:ruiu@google.com">ruiu@google.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">ruiu created this revision.<br class="gmail_msg">
ruiu added a reviewer: zturner.<br class="gmail_msg">
ruiu added a subscriber: llvm-commits.<br class="gmail_msg">
<br class="gmail_msg">
I wanted a Cases function that takes 6 parameters, so I added a few more.<br class="gmail_msg">
<br class="gmail_msg">
<a href="https://reviews.llvm.org/D24882" rel="noreferrer" class="gmail_msg" target="_blank">https://reviews.llvm.org/D24882</a><br class="gmail_msg">
<br class="gmail_msg">
Files:<br class="gmail_msg">
  include/llvm/ADT/StringSwitch.h<br class="gmail_msg">
<br class="gmail_msg">
</blockquote></div>