<div dir="ltr">Thanks Simon - any update on this?</div><br><div class="gmail_quote"><div dir="ltr">On Mon, Aug 27, 2018 at 10:12 AM Simon Pilgrim <<a href="mailto:llvm-dev@redking.me.uk">llvm-dev@redking.me.uk</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
  
    
  
  <div text="#000000" bgcolor="#FFFFFF">
    <p>Oops - sorry David I didn't see your reply - I'll take another
      look.<br>
    </p></div><div text="#000000" bgcolor="#FFFFFF">
    On 27/08/2018 18:01, David Blaikie wrote:<br>
    <blockquote type="cite">
      
      <div dir="ltr">Ping</div>
      <br>
      <div class="gmail_quote">
        <div dir="ltr">On Mon, Aug 20, 2018 at 2:19 PM David Blaikie
          <<a href="mailto:dblaikie@gmail.com" target="_blank">dblaikie@gmail.com</a>>
          wrote:<br>
        </div>
        <blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
          <div dir="ltr">Looks to me like these should be passed by
            value but the missing thing was the std::move in the ctor
            init list.<br>
            <br>
            (since the members are values - if a caller passes in a
            temporary, it'd be nice to avoid the copy & move the
            values into the members)</div>
          <br>
          <div class="gmail_quote">
            <div dir="ltr">On Tue, Aug 14, 2018 at 4:18 AM Simon Pilgrim
              via llvm-commits <<a href="mailto:llvm-commits@lists.llvm.org" target="_blank">llvm-commits@lists.llvm.org</a>>
              wrote:<br>
            </div>
            <blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Author:
              rksimon<br>
              Date: Tue Aug 14 04:17:38 2018<br>
              New Revision: 339670<br>
              <br>
              URL: <a href="http://llvm.org/viewvc/llvm-project?rev=339670&view=rev" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-project?rev=339670&view=rev</a><br>
              Log:<br>
              [TableGen] Pass string/vector types by const reference
              (PR37666). NFCI<br>
              <br>
              Modified:<br>
                  llvm/trunk/utils/TableGen/FastISelEmitter.cpp<br>
              <br>
              Modified: llvm/trunk/utils/TableGen/FastISelEmitter.cpp<br>
              URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/utils/TableGen/FastISelEmitter.cpp?rev=339670&r1=339669&r2=339670&view=diff" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/utils/TableGen/FastISelEmitter.cpp?rev=339670&r1=339669&r2=339670&view=diff</a><br>
==============================================================================<br>
              --- llvm/trunk/utils/TableGen/FastISelEmitter.cpp
              (original)<br>
              +++ llvm/trunk/utils/TableGen/FastISelEmitter.cpp Tue Aug
              14 04:17:38 2018<br>
              @@ -39,11 +39,12 @@ struct InstructionMemo {<br>
                 std::vector<std::string> PhysRegs;<br>
                 std::string PredicateCheck;<br>
              <br>
              -  InstructionMemo(std::string Name, const
              CodeGenRegisterClass *RC,<br>
              -                  std::string SubRegNo,
              std::vector<std::string> PhysRegs,<br>
              -                  std::string PredicateCheck)<br>
              -    : Name(Name), RC(RC), SubRegNo(SubRegNo),
              PhysRegs(PhysRegs),<br>
              -      PredicateCheck(PredicateCheck) {}<br>
              +  InstructionMemo(const std::string &Name, const
              CodeGenRegisterClass *RC,<br>
              +                  const std::string &SubRegNo,<br>
              +                  const std::vector<std::string>
              &PhysRegs,<br>
              +                  const std::string &PredicateCheck)<br>
              +      : Name(Name), RC(RC), SubRegNo(SubRegNo),
              PhysRegs(PhysRegs),<br>
              +        PredicateCheck(PredicateCheck) {}<br>
              <br>
                 // Make sure we do not copy InstructionMemo.<br>
                 InstructionMemo(const InstructionMemo &Other) =
              delete;<br>
              <br>
              <br>
              _______________________________________________<br>
              llvm-commits mailing list<br>
              <a href="mailto:llvm-commits@lists.llvm.org" target="_blank">llvm-commits@lists.llvm.org</a><br>
              <a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits</a><br>
            </blockquote>
          </div>
        </blockquote>
      </div>
    </blockquote>
    <br>
  </div></blockquote></div>