<div dir="ltr">Hmm. Weird. That assert is failing on Linux: <a href="http://lab.llvm.org:8011/builders/lldb-x86_64-ubuntu-14.04-cmake/builds/11833">http://lab.llvm.org:8011/builders/lldb-x86_64-ubuntu-14.04-cmake/builds/11833</a></div><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Feb 26, 2016 at 9:40 AM, Aidan Dodds via lldb-commits <span dir="ltr"><<a href="mailto:lldb-commits@lists.llvm.org" target="_blank">lldb-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: aidandodds<br>
Date: Fri Feb 26 11:40:50 2016<br>
New Revision: 262041<br>
<br>
URL: <a href="http://llvm.org/viewvc/llvm-project?rev=262041&view=rev" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-project?rev=262041&view=rev</a><br>
Log:<br>
Fix bug with register values byte order in expression evaluation.<br>
<br>
The evaluation of expressions containing register values was broken for targets for which endianness differs from host.<br>
<br>
Committed on behalf of: mamai <<a href="mailto:marianne.mailhot.sarrasin@gmail.com">marianne.mailhot.sarrasin@gmail.com</a>><br>
<br>
Differential revision: <a href="http://reviews.llvm.org/D17167" rel="noreferrer" target="_blank">http://reviews.llvm.org/D17167</a><br>
<br>
Modified:<br>
    lldb/trunk/source/Expression/Materializer.cpp<br>
<br>
Modified: lldb/trunk/source/Expression/Materializer.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Expression/Materializer.cpp?rev=262041&r1=262040&r2=262041&view=diff" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Expression/Materializer.cpp?rev=262041&r1=262040&r2=262041&view=diff</a><br>
==============================================================================<br>
--- lldb/trunk/source/Expression/Materializer.cpp (original)<br>
+++ lldb/trunk/source/Expression/Materializer.cpp Fri Feb 26 11:40:50 2016<br>
@@ -26,6 +26,7 @@<br>
 #include "lldb/Target/StackFrame.h"<br>
 #include "lldb/Target/Target.h"<br>
 #include "lldb/Target/Thread.h"<br>
+#include "lldb/Utility/LLDBAssert.h"<br>
<br>
 using namespace lldb_private;<br>
<br>
@@ -1275,9 +1276,14 @@ public:<br>
         m_register_contents.reset(new DataBufferHeap(register_data.GetDataStart(), register_data.GetByteSize()));<br>
<br>
         Error write_error;<br>
-<br>
-        map.WriteMemory(load_addr, register_data.GetDataStart(), register_data.GetByteSize(), write_error);<br>
-<br>
+<br>
+        Scalar scalar;<br>
+        reg_value.GetScalarValue(scalar);<br>
+<br>
+        lldbassert(scalar.GetByteSize() == register_data.GetByteSize());<br>
+<br>
+        map.WriteScalarToMemory(load_addr, scalar, scalar.GetByteSize(), write_error);<br>
+<br>
         if (!write_error.Success())<br>
         {<br>
             err.SetErrorStringWithFormat("couldn't write the contents of register %s: %s", <a href="http://m_register_info.name" rel="noreferrer" target="_blank">m_register_info.name</a>, write_error.AsCString());<br>
<br>
<br>
_______________________________________________<br>
lldb-commits mailing list<br>
<a href="mailto:lldb-commits@lists.llvm.org">lldb-commits@lists.llvm.org</a><br>
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits</a><br>
</blockquote></div><br></div>