<div dir="ltr">looking at the isPodLike implementation - the fallback is... very conservative (& I guess it occurs with MSVC) - so it's probably only good for situations where we have a fallback that's still correct, so not much use in an assertion</div><div class="gmail_extra"><br><div class="gmail_quote">On Sat, Mar 26, 2016 at 11:20 AM, JF Bastien via llvm-commits <span dir="ltr"><<a href="mailto:llvm-commits@lists.llvm.org" target="_blank">llvm-commits@lists.llvm.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Author: jfb<br>
Date: Sat Mar 26 13:20:02 2016<br>
New Revision: 264516<br>
<br>
URL: <a href="http://llvm.org/viewvc/llvm-project?rev=264516&view=rev" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-project?rev=264516&view=rev</a><br>
Log:<br>
Revert "NFC: static_assert instead of comment"<br>
<br>
This reverts commit fa36fcff16c7d4f78204d6296bf96c3558a4a672.<br>
<br>
Causes the following Windows failure:<br>
<br>
  C:\Buildbot\Slave\llvm-clang-lld-x86_64-scei-ps4-windows10pro-fast\llvm.src\lib\CodeGen\MachineInstr.cpp(762):<br>
  error C2338: must be trivially copyable to memmove<br>
<br>
Modified:<br>
    llvm/trunk/lib/CodeGen/MachineInstr.cpp<br>
<br>
Modified: llvm/trunk/lib/CodeGen/MachineInstr.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/MachineInstr.cpp?rev=264516&r1=264515&r2=264516&view=diff" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/MachineInstr.cpp?rev=264516&r1=264515&r2=264516&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/CodeGen/MachineInstr.cpp (original)<br>
+++ llvm/trunk/lib/CodeGen/MachineInstr.cpp Sat Mar 26 13:20:02 2016<br>
@@ -38,7 +38,6 @@<br>
 #include "llvm/Support/ErrorHandling.h"<br>
 #include "llvm/Support/MathExtras.h"<br>
 #include "llvm/Support/raw_ostream.h"<br>
-#include "llvm/Support/type_traits.h"<br>
 #include "llvm/Target/TargetInstrInfo.h"<br>
 #include "llvm/Target/TargetMachine.h"<br>
 #include "llvm/Target/TargetRegisterInfo.h"<br>
@@ -758,8 +757,7 @@ static void moveOperands(MachineOperand<br>
   if (MRI)<br>
     return MRI->moveOperands(Dst, Src, NumOps);<br>
<br>
-  static_assert(isPodLike<MachineOperand>::value,<br>
-                "must be trivially copyable to memmove");<br>
+  // MachineOperand is a trivially copyable type so we can just use memmove.<br>
   std::memmove(Dst, Src, NumOps * sizeof(MachineOperand));<br>
 }<br>
<br>
<br>
<br>
_______________________________________________<br>
llvm-commits mailing list<br>
<a href="mailto:llvm-commits@lists.llvm.org">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><br></div>